v1alpha1

package
v1.125.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 12, 2024 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the networkservices v1alpha1 API group. +k8s:openapi-gen=true +k8s:deepcopy-gen=package,register +k8s:conversion-gen=github.com/GoogleCloudPlatform/k8s-config-connector/pkg/clients/generated/pkg/apis/networkservices +k8s:defaulter-gen=TypeMeta +groupName=networkservices.cnrm.cloud.google.com

Index

Constants

This section is empty.

Variables

View Source
var (
	// SchemeGroupVersion is the group version used to register these objects.
	SchemeGroupVersion = schema.GroupVersion{Group: "networkservices.cnrm.cloud.google.com", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme.
	SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion}

	// AddToScheme is a global function that registers this API group & version to a scheme
	AddToScheme = SchemeBuilder.AddToScheme

	NetworkServicesEdgeCacheKeysetGVK = schema.GroupVersionKind{
		Group:   SchemeGroupVersion.Group,
		Version: SchemeGroupVersion.Version,
		Kind:    reflect.TypeOf(NetworkServicesEdgeCacheKeyset{}).Name(),
	}

	NetworkServicesEdgeCacheOriginGVK = schema.GroupVersionKind{
		Group:   SchemeGroupVersion.Group,
		Version: SchemeGroupVersion.Version,
		Kind:    reflect.TypeOf(NetworkServicesEdgeCacheOrigin{}).Name(),
	}

	NetworkServicesEdgeCacheServiceGVK = schema.GroupVersionKind{
		Group:   SchemeGroupVersion.Group,
		Version: SchemeGroupVersion.Version,
		Kind:    reflect.TypeOf(NetworkServicesEdgeCacheService{}).Name(),
	}
)

Functions

This section is empty.

Types

type EdgecachekeysetPublicKey

type EdgecachekeysetPublicKey struct {
	/* The ID of the public key. The ID must be 1-63 characters long, and comply with RFC1035.
	The name must be 1-64 characters long, and match the regular expression [a-zA-Z][a-zA-Z0-9_-]*
	which means the first character must be a letter, and all following characters must be a dash, underscore, letter or digit. */
	Id string `json:"id"`

	/* Set to true to have the CDN automatically manage this public key value. */
	// +optional
	Managed *bool `json:"managed,omitempty"`

	/* The base64-encoded value of the Ed25519 public key. The base64 encoding can be padded (44 bytes) or unpadded (43 bytes).
	Representations or encodings of the public key other than this will be rejected with an error. */
	// +optional
	Value *EdgecachekeysetValue `json:"value,omitempty"`
}

func (*EdgecachekeysetPublicKey) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecachekeysetPublicKey.

func (*EdgecachekeysetPublicKey) DeepCopyInto

func (in *EdgecachekeysetPublicKey) DeepCopyInto(out *EdgecachekeysetPublicKey)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecachekeysetValidationSharedKeys

type EdgecachekeysetValidationSharedKeys struct {
	/* The name of the secret version in Secret Manager.

	The resource name of the secret version must be in the format 'projects/* /secrets/* /versions/*' where the '*' values are replaced by the secrets themselves.
	The secrets must be at least 16 bytes large.  The recommended secret size depends on the signature algorithm you are using.
	* If you are using HMAC-SHA1, we suggest 20-byte secrets.
	* If you are using HMAC-SHA256, we suggest 32-byte secrets.
	See RFC 2104, Section 3 for more details on these recommendations. */
	SecretVersion string `json:"secretVersion"`
}

func (*EdgecachekeysetValidationSharedKeys) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecachekeysetValidationSharedKeys.

func (*EdgecachekeysetValidationSharedKeys) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecachekeysetValue

type EdgecachekeysetValue struct {
	/* Value of the field. Cannot be used if 'valueFrom' is specified. */
	// +optional
	Value *string `json:"value,omitempty"`

	/* Source for the field's value. Cannot be used if 'value' is specified. */
	// +optional
	ValueFrom *EdgecachekeysetValueFrom `json:"valueFrom,omitempty"`
}

func (*EdgecachekeysetValue) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecachekeysetValue.

func (*EdgecachekeysetValue) DeepCopyInto

func (in *EdgecachekeysetValue) DeepCopyInto(out *EdgecachekeysetValue)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecachekeysetValueFrom

type EdgecachekeysetValueFrom struct {
	/* Reference to a value with the given key in the given Secret in the resource's namespace. */
	// +optional
	SecretKeyRef *v1alpha1.SecretKeyRef `json:"secretKeyRef,omitempty"`
}

func (*EdgecachekeysetValueFrom) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecachekeysetValueFrom.

func (*EdgecachekeysetValueFrom) DeepCopyInto

func (in *EdgecachekeysetValueFrom) DeepCopyInto(out *EdgecachekeysetValueFrom)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheoriginAwsV4Authentication

type EdgecacheoriginAwsV4Authentication struct {
	/* The access key ID your origin uses to identify the key. */
	AccessKeyId string `json:"accessKeyId"`

	/* The name of the AWS region that your origin is in. */
	OriginRegion string `json:"originRegion"`

	/* The Secret Manager secret version of the secret access key used by your origin.

	This is the resource name of the secret version in the format 'projects/* /secrets/* /versions/*' where the '*' values are replaced by the project, secret, and version you require. */
	SecretAccessKeyVersion string `json:"secretAccessKeyVersion"`
}

func (*EdgecacheoriginAwsV4Authentication) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheoriginAwsV4Authentication.

func (*EdgecacheoriginAwsV4Authentication) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheoriginHeaderAction

type EdgecacheoriginHeaderAction struct {
	/* Describes a header to add.

	You may add a maximum of 25 request headers. */
	// +optional
	RequestHeadersToAdd []EdgecacheoriginRequestHeadersToAdd `json:"requestHeadersToAdd,omitempty"`
}

func (*EdgecacheoriginHeaderAction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheoriginHeaderAction.

func (*EdgecacheoriginHeaderAction) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheoriginOriginOverrideAction

type EdgecacheoriginOriginOverrideAction struct {
	/* The header actions, including adding and removing
	headers, for request handled by this origin. */
	// +optional
	HeaderAction *EdgecacheoriginHeaderAction `json:"headerAction,omitempty"`

	/* The URL rewrite configuration for request that are
	handled by this origin. */
	// +optional
	UrlRewrite *EdgecacheoriginUrlRewrite `json:"urlRewrite,omitempty"`
}

func (*EdgecacheoriginOriginOverrideAction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheoriginOriginOverrideAction.

func (*EdgecacheoriginOriginOverrideAction) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheoriginOriginRedirect

type EdgecacheoriginOriginRedirect struct {
	/* The set of redirect response codes that the CDN
	follows. Values of
	[RedirectConditions](https://cloud.google.com/media-cdn/docs/reference/rest/v1/projects.locations.edgeCacheOrigins#redirectconditions)
	are accepted. */
	// +optional
	RedirectConditions []string `json:"redirectConditions,omitempty"`
}

func (*EdgecacheoriginOriginRedirect) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheoriginOriginRedirect.

func (*EdgecacheoriginOriginRedirect) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheoriginRequestHeadersToAdd

type EdgecacheoriginRequestHeadersToAdd struct {
	/* The name of the header to add. */
	HeaderName string `json:"headerName"`

	/* The value of the header to add. */
	HeaderValue string `json:"headerValue"`

	/* Whether to replace all existing headers with the same name.

	By default, added header values are appended
	to the response or request headers with the
	same field names. The added values are
	separated by commas.

	To overwrite existing values, set 'replace' to 'true'. */
	// +optional
	Replace *bool `json:"replace,omitempty"`
}

func (*EdgecacheoriginRequestHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheoriginRequestHeadersToAdd.

func (*EdgecacheoriginRequestHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheoriginTimeout

type EdgecacheoriginTimeout struct {
	/* The maximum duration to wait for a single origin connection to be established, including DNS lookup, TLS handshake and TCP/QUIC connection establishment.

	Defaults to 5 seconds. The timeout must be a value between 1s and 15s.

	The connectTimeout capped by the deadline set by the request's maxAttemptsTimeout.  The last connection attempt may have a smaller connectTimeout in order to adhere to the overall maxAttemptsTimeout. */
	// +optional
	ConnectTimeout *string `json:"connectTimeout,omitempty"`

	/* The maximum time across all connection attempts to the origin, including failover origins, before returning an error to the client. A HTTP 504 will be returned if the timeout is reached before a response is returned.

	Defaults to 15 seconds. The timeout must be a value between 1s and 30s.

	If a failoverOrigin is specified, the maxAttemptsTimeout of the first configured origin sets the deadline for all connection attempts across all failoverOrigins. */
	// +optional
	MaxAttemptsTimeout *string `json:"maxAttemptsTimeout,omitempty"`

	/* The maximum duration to wait between reads of a single HTTP connection/stream.

	Defaults to 15 seconds.  The timeout must be a value between 1s and 30s.

	The readTimeout is capped by the responseTimeout.  All reads of the HTTP connection/stream must be completed by the deadline set by the responseTimeout.

	If the response headers have already been written to the connection, the response will be truncated and logged. */
	// +optional
	ReadTimeout *string `json:"readTimeout,omitempty"`

	/* The maximum duration to wait for the last byte of a response to arrive when reading from the HTTP connection/stream.

	Defaults to 30 seconds. The timeout must be a value between 1s and 120s.

	The responseTimeout starts after the connection has been established.

	This also applies to HTTP Chunked Transfer Encoding responses, and/or when an open-ended Range request is made to the origin. Origins that take longer to write additional bytes to the response than the configured responseTimeout will result in an error being returned to the client.

	If the response headers have already been written to the connection, the response will be truncated and logged. */
	// +optional
	ResponseTimeout *string `json:"responseTimeout,omitempty"`
}

func (*EdgecacheoriginTimeout) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheoriginTimeout.

func (*EdgecacheoriginTimeout) DeepCopyInto

func (in *EdgecacheoriginTimeout) DeepCopyInto(out *EdgecacheoriginTimeout)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheoriginUrlRewrite

type EdgecacheoriginUrlRewrite struct {
	/* Prior to forwarding the request to the selected
	origin, the request's host header is replaced with
	contents of the hostRewrite.

	This value must be between 1 and 255 characters. */
	// +optional
	HostRewrite *string `json:"hostRewrite,omitempty"`
}

func (*EdgecacheoriginUrlRewrite) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheoriginUrlRewrite.

func (*EdgecacheoriginUrlRewrite) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheserviceAddSignatures

type EdgecacheserviceAddSignatures struct {
	/* The actions to take to add signatures to responses. Possible values: ["GENERATE_COOKIE", "GENERATE_TOKEN_HLS_COOKIELESS", "PROPAGATE_TOKEN_HLS_COOKIELESS"]. */
	Actions []string `json:"actions"`

	/* The parameters to copy from the verified token to the generated token.

	Only the following parameters may be copied:

	* 'PathGlobs'
	* 'paths'
	* 'acl'
	* 'URLPrefix'
	* 'IPRanges'
	* 'SessionID'
	* 'id'
	* 'Data'
	* 'data'
	* 'payload'
	* 'Headers'

	You may specify up to 6 parameters to copy.  A given parameter is be copied only if the parameter exists in the verified token.  Parameter names are matched exactly as specified.  The order of the parameters does not matter.  Duplicates are not allowed.

	This field may only be specified when the GENERATE_COOKIE or GENERATE_TOKEN_HLS_COOKIELESS actions are specified. */
	// +optional
	CopiedParameters []string `json:"copiedParameters,omitempty"`

	/* The keyset to use for signature generation.

	The following are both valid paths to an EdgeCacheKeyset resource:

	* 'projects/project/locations/global/edgeCacheKeysets/yourKeyset'
	* 'yourKeyset'

	This must be specified when the GENERATE_COOKIE or GENERATE_TOKEN_HLS_COOKIELESS actions are specified.  This field may not be specified otherwise. */
	// +optional
	Keyset *string `json:"keyset,omitempty"`

	/* The query parameter in which to put the generated token.

	If not specified, defaults to 'edge-cache-token'.

	If specified, the name must be 1-64 characters long and match the regular expression '[a-zA-Z]([a-zA-Z0-9_-])*' which means the first character must be a letter, and all following characters must be a dash, underscore, letter or digit.

	This field may only be set when the GENERATE_TOKEN_HLS_COOKIELESS or PROPAGATE_TOKEN_HLS_COOKIELESS actions are specified. */
	// +optional
	TokenQueryParameter *string `json:"tokenQueryParameter,omitempty"`

	/* The duration the token is valid starting from the moment the token is first generated.

	Defaults to '86400s' (1 day).

	The TTL must be >= 0 and <= 604,800 seconds (1 week).

	This field may only be specified when the GENERATE_COOKIE or GENERATE_TOKEN_HLS_COOKIELESS actions are specified.

	A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s". */
	// +optional
	TokenTtl *string `json:"tokenTtl,omitempty"`
}

func (*EdgecacheserviceAddSignatures) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheserviceAddSignatures.

func (*EdgecacheserviceAddSignatures) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheserviceCacheKeyPolicy

type EdgecacheserviceCacheKeyPolicy struct {
	/* If true, requests to different hosts will be cached separately.

	Note: this should only be enabled if hosts share the same origin and content. Removing the host from the cache key may inadvertently result in different objects being cached than intended, depending on which route the first user matched. */
	// +optional
	ExcludeHost *bool `json:"excludeHost,omitempty"`

	/* If true, exclude query string parameters from the cache key

	If false (the default), include the query string parameters in
	the cache key according to includeQueryParameters and
	excludeQueryParameters. If neither includeQueryParameters nor
	excludeQueryParameters is set, the entire query string will be
	included. */
	// +optional
	ExcludeQueryString *bool `json:"excludeQueryString,omitempty"`

	/* Names of query string parameters to exclude from cache keys. All other parameters will be included.

	Either specify includedQueryParameters or excludedQueryParameters, not both. '&' and '=' will be percent encoded and not treated as delimiters. */
	// +optional
	ExcludedQueryParameters []string `json:"excludedQueryParameters,omitempty"`

	/* If true, http and https requests will be cached separately. */
	// +optional
	IncludeProtocol *bool `json:"includeProtocol,omitempty"`

	/* Names of Cookies to include in cache keys.  The cookie name and cookie value of each cookie named will be used as part of the cache key.

	Cookie names:
	- must be valid RFC 6265 "cookie-name" tokens
	- are case sensitive
	- cannot start with "Edge-Cache-" (case insensitive)

	Note that specifying several cookies, and/or cookies that have a large range of values (e.g., per-user) will dramatically impact the cache hit rate, and may result in a higher eviction rate and reduced performance.

	You may specify up to three cookie names. */
	// +optional
	IncludedCookieNames []string `json:"includedCookieNames,omitempty"`

	/* Names of HTTP request headers to include in cache keys. The value of the header field will be used as part of the cache key.

	- Header names must be valid HTTP RFC 7230 header field values.
	- Header field names are case insensitive
	- To include the HTTP method, use ":method"

	Note that specifying several headers, and/or headers that have a large range of values (e.g. per-user) will dramatically impact the cache hit rate, and may result in a higher eviction rate and reduced performance. */
	// +optional
	IncludedHeaderNames []string `json:"includedHeaderNames,omitempty"`

	/* Names of query string parameters to include in cache keys. All other parameters will be excluded.

	Either specify includedQueryParameters or excludedQueryParameters, not both. '&' and '=' will be percent encoded and not treated as delimiters. */
	// +optional
	IncludedQueryParameters []string `json:"includedQueryParameters,omitempty"`
}

func (*EdgecacheserviceCacheKeyPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheserviceCacheKeyPolicy.

func (*EdgecacheserviceCacheKeyPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheserviceCdnPolicy

type EdgecacheserviceCdnPolicy struct {
	/* Enable signature generation or propagation on this route.

	This field may only be specified when signedRequestMode is set to REQUIRE_TOKENS. */
	// +optional
	AddSignatures *EdgecacheserviceAddSignatures `json:"addSignatures,omitempty"`

	/* Defines the request parameters that contribute to the cache key. */
	// +optional
	CacheKeyPolicy *EdgecacheserviceCacheKeyPolicy `json:"cacheKeyPolicy,omitempty"`

	/* Cache modes allow users to control the behaviour of the cache, what content it should cache automatically, whether to respect origin headers, or whether to unconditionally cache all responses.

	For all cache modes, Cache-Control headers will be passed to the client. Use clientTtl to override what is sent to the client. Possible values: ["CACHE_ALL_STATIC", "USE_ORIGIN_HEADERS", "FORCE_CACHE_ALL", "BYPASS_CACHE"]. */
	// +optional
	CacheMode *string `json:"cacheMode,omitempty"`

	/* Specifies a separate client (e.g. browser client) TTL, separate from the TTL used by the edge caches. Leaving this empty will use the same cache TTL for both the CDN and the client-facing response.

	- The TTL must be > 0 and <= 86400s (1 day)
	- The clientTtl cannot be larger than the defaultTtl (if set)
	- Fractions of a second are not allowed.

	Omit this field to use the defaultTtl, or the max-age set by the origin, as the client-facing TTL.

	When the cache mode is set to "USE_ORIGIN_HEADERS" or "BYPASS_CACHE", you must omit this field.
	A duration in seconds terminated by 's'. Example: "3s". */
	// +optional
	ClientTtl *string `json:"clientTtl,omitempty"`

	/* Specifies the default TTL for cached content served by this origin for responses that do not have an existing valid TTL (max-age or s-max-age).

	Defaults to 3600s (1 hour).

	- The TTL must be >= 0 and <= 31,536,000 seconds (1 year)
	- Setting a TTL of "0" means "always revalidate" (equivalent to must-revalidate)
	- The value of defaultTTL cannot be set to a value greater than that of maxTTL.
	- Fractions of a second are not allowed.
	- When the cacheMode is set to FORCE_CACHE_ALL, the defaultTTL will overwrite the TTL set in all responses.

	Note that infrequently accessed objects may be evicted from the cache before the defined TTL. Objects that expire will be revalidated with the origin.

	When the cache mode is set to "USE_ORIGIN_HEADERS" or "BYPASS_CACHE", you must omit this field.

	A duration in seconds terminated by 's'. Example: "3s". */
	// +optional
	DefaultTtl *string `json:"defaultTtl,omitempty"`

	/* Specifies the maximum allowed TTL for cached content served by this origin.

	Defaults to 86400s (1 day).

	Cache directives that attempt to set a max-age or s-maxage higher than this, or an Expires header more than maxTtl seconds in the future will be capped at the value of maxTTL, as if it were the value of an s-maxage Cache-Control directive.

	- The TTL must be >= 0 and <= 31,536,000 seconds (1 year)
	- Setting a TTL of "0" means "always revalidate"
	- The value of maxTtl must be equal to or greater than defaultTtl.
	- Fractions of a second are not allowed.

	When the cache mode is set to "USE_ORIGIN_HEADERS", "FORCE_CACHE_ALL", or "BYPASS_CACHE", you must omit this field.

	A duration in seconds terminated by 's'. Example: "3s". */
	// +optional
	MaxTtl *string `json:"maxTtl,omitempty"`

	/* Negative caching allows per-status code TTLs to be set, in order to apply fine-grained caching for common errors or redirects. This can reduce the load on your origin and improve end-user experience by reducing response latency.

	By default, the CDNPolicy will apply the following default TTLs to these status codes:

	- HTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m
	- HTTP 404 (Not Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s
	- HTTP 405 (Method Not Found), 414 (URI Too Long), 501 (Not Implemented): 60s

	These defaults can be overridden in negativeCachingPolicy. */
	// +optional
	NegativeCaching *bool `json:"negativeCaching,omitempty"`

	/* Sets a cache TTL for the specified HTTP status code. negativeCaching must be enabled to configure negativeCachingPolicy.

	- Omitting the policy and leaving negativeCaching enabled will use the default TTLs for each status code, defined in negativeCaching.
	- TTLs must be >= 0 (where 0 is "always revalidate") and <= 86400s (1 day)

	Note that when specifying an explicit negativeCachingPolicy, you should take care to specify a cache TTL for all response codes that you wish to cache. The CDNPolicy will not apply any default negative caching when a policy exists. */
	// +optional
	NegativeCachingPolicy map[string]string `json:"negativeCachingPolicy,omitempty"`

	/* The EdgeCacheKeyset containing the set of public keys used to validate signed requests at the edge. */
	// +optional
	SignedRequestKeyset *string `json:"signedRequestKeyset,omitempty"`

	/* Limit how far into the future the expiration time of a signed request may be.

	When set, a signed request is rejected if its expiration time is later than now + signedRequestMaximumExpirationTtl, where now is the time at which the signed request is first handled by the CDN.

	- The TTL must be > 0.
	- Fractions of a second are not allowed.

	By default, signedRequestMaximumExpirationTtl is not set and the expiration time of a signed request may be arbitrarily far into future. */
	// +optional
	SignedRequestMaximumExpirationTtl *string `json:"signedRequestMaximumExpirationTtl,omitempty"`

	/* Whether to enforce signed requests. The default value is DISABLED, which means all content is public, and does not authorize access.

	You must also set a signedRequestKeyset to enable signed requests.

	When set to REQUIRE_SIGNATURES, all matching requests will have their signature validated. Requests that were not signed with the corresponding private key, or that are otherwise invalid (expired, do not match the signature, IP address, or header) will be rejected with a HTTP 403 and (if enabled) logged. Possible values: ["DISABLED", "REQUIRE_SIGNATURES", "REQUIRE_TOKENS"]. */
	// +optional
	SignedRequestMode *string `json:"signedRequestMode,omitempty"`

	/* Additional options for signed tokens.

	signedTokenOptions may only be specified when signedRequestMode is REQUIRE_TOKENS. */
	// +optional
	SignedTokenOptions *EdgecacheserviceSignedTokenOptions `json:"signedTokenOptions,omitempty"`
}

func (*EdgecacheserviceCdnPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheserviceCdnPolicy.

func (*EdgecacheserviceCdnPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheserviceCorsPolicy

type EdgecacheserviceCorsPolicy struct {
	/* In response to a preflight request, setting this to true indicates that the actual request can include user credentials.

	This translates to the Access-Control-Allow-Credentials response header. */
	// +optional
	AllowCredentials *bool `json:"allowCredentials,omitempty"`

	/* Specifies the content for the Access-Control-Allow-Headers response header. */
	// +optional
	AllowHeaders []string `json:"allowHeaders,omitempty"`

	/* Specifies the content for the Access-Control-Allow-Methods response header. */
	// +optional
	AllowMethods []string `json:"allowMethods,omitempty"`

	/* Specifies the list of origins that will be allowed to do CORS requests.

	This translates to the Access-Control-Allow-Origin response header. */
	// +optional
	AllowOrigins []string `json:"allowOrigins,omitempty"`

	/* If true, specifies the CORS policy is disabled. The default value is false, which indicates that the CORS policy is in effect. */
	// +optional
	Disabled *bool `json:"disabled,omitempty"`

	/* Specifies the content for the Access-Control-Allow-Headers response header. */
	// +optional
	ExposeHeaders []string `json:"exposeHeaders,omitempty"`

	/* Specifies how long results of a preflight request can be cached by a client in seconds. Note that many browser clients enforce a maximum TTL of 600s (10 minutes).

	- Setting the value to -1 forces a pre-flight check for all requests (not recommended)
	- A maximum TTL of 86400s can be set, but note that (as above) some clients may force pre-flight checks at a more regular interval.
	- This translates to the Access-Control-Max-Age header.

	A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s". */
	MaxAge string `json:"maxAge"`
}

func (*EdgecacheserviceCorsPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheserviceCorsPolicy.

func (*EdgecacheserviceCorsPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheserviceHeaderAction

type EdgecacheserviceHeaderAction struct {
	/* Describes a header to add. */
	// +optional
	RequestHeaderToAdd []EdgecacheserviceRequestHeaderToAdd `json:"requestHeaderToAdd,omitempty"`

	/* A list of header names for headers that need to be removed from the request prior to forwarding the request to the origin. */
	// +optional
	RequestHeaderToRemove []EdgecacheserviceRequestHeaderToRemove `json:"requestHeaderToRemove,omitempty"`

	/* Headers to add to the response prior to sending it back to the client.

	Response headers are only sent to the client, and do not have an effect on the cache serving the response. */
	// +optional
	ResponseHeaderToAdd []EdgecacheserviceResponseHeaderToAdd `json:"responseHeaderToAdd,omitempty"`

	/* A list of header names for headers that need to be removed from the request prior to forwarding the request to the origin. */
	// +optional
	ResponseHeaderToRemove []EdgecacheserviceResponseHeaderToRemove `json:"responseHeaderToRemove,omitempty"`
}

func (*EdgecacheserviceHeaderAction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheserviceHeaderAction.

func (*EdgecacheserviceHeaderAction) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheserviceHeaderMatch

type EdgecacheserviceHeaderMatch struct {
	/* The value of the header should exactly match contents of exactMatch. */
	// +optional
	ExactMatch *string `json:"exactMatch,omitempty"`

	/* The header name to match on. */
	HeaderName string `json:"headerName"`

	/* If set to false (default), the headerMatch is considered a match if the match criteria above are met.
	If set to true, the headerMatch is considered a match if the match criteria above are NOT met. */
	// +optional
	InvertMatch *bool `json:"invertMatch,omitempty"`

	/* The value of the header must start with the contents of prefixMatch. */
	// +optional
	PrefixMatch *string `json:"prefixMatch,omitempty"`

	/* A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. */
	// +optional
	PresentMatch *bool `json:"presentMatch,omitempty"`

	/* The value of the header must end with the contents of suffixMatch. */
	// +optional
	SuffixMatch *string `json:"suffixMatch,omitempty"`
}

func (*EdgecacheserviceHeaderMatch) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheserviceHeaderMatch.

func (*EdgecacheserviceHeaderMatch) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheserviceHostRule

type EdgecacheserviceHostRule struct {
	/* A human-readable description of the hostRule. */
	// +optional
	Description *string `json:"description,omitempty"`

	/* The list of host patterns to match.

	Host patterns must be valid hostnames. Ports are not allowed. Wildcard hosts are supported in the suffix or prefix form. * matches any string of ([a-z0-9-.]*). It does not match the empty string.

	When multiple hosts are specified, hosts are matched in the following priority:

	1. Exact domain names: ”www.foo.com”.
	2. Suffix domain wildcards: ”*.foo.com” or ”*-bar.foo.com”.
	3. Prefix domain wildcards: ”foo.*” or ”foo-*”.
	4. Special wildcard ”*” matching any domain.

	Notes:

	The wildcard will not match the empty string. e.g. ”*-bar.foo.com” will match ”baz-bar.foo.com” but not ”-bar.foo.com”. The longest wildcards match first. Only a single host in the entire service can match on ”*”. A domain must be unique across all configured hosts within a service.

	Hosts are matched against the HTTP Host header, or for HTTP/2 and HTTP/3, the ":authority" header, from the incoming request.

	You may specify up to 10 hosts. */
	Hosts []string `json:"hosts"`

	/* The name of the pathMatcher associated with this hostRule. */
	PathMatcher string `json:"pathMatcher"`
}

func (*EdgecacheserviceHostRule) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheserviceHostRule.

func (*EdgecacheserviceHostRule) DeepCopyInto

func (in *EdgecacheserviceHostRule) DeepCopyInto(out *EdgecacheserviceHostRule)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheserviceLogConfig

type EdgecacheserviceLogConfig struct {
	/* Specifies whether to enable logging for traffic served by this service. */
	// +optional
	Enable *bool `json:"enable,omitempty"`

	/* Configures the sampling rate of requests, where 1.0 means all logged requests are reported and 0.0 means no logged requests are reported. The default value is 1.0, and the value of the field must be in [0, 1].

	This field can only be specified if logging is enabled for this service. */
	// +optional
	SampleRate *float64 `json:"sampleRate,omitempty"`
}

func (*EdgecacheserviceLogConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheserviceLogConfig.

func (*EdgecacheserviceLogConfig) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheserviceMatchRule

type EdgecacheserviceMatchRule struct {
	/* For satisfying the matchRule condition, the path of the request must exactly match the value specified in fullPathMatch after removing any query parameters and anchor that may be part of the original URL. */
	// +optional
	FullPathMatch *string `json:"fullPathMatch,omitempty"`

	/* Specifies a list of header match criteria, all of which must match corresponding headers in the request. */
	// +optional
	HeaderMatch []EdgecacheserviceHeaderMatch `json:"headerMatch,omitempty"`

	/* Specifies that prefixMatch and fullPathMatch matches are case sensitive. */
	// +optional
	IgnoreCase *bool `json:"ignoreCase,omitempty"`

	/* For satisfying the matchRule condition, the path of the request
	must match the wildcard pattern specified in pathTemplateMatch
	after removing any query parameters and anchor that may be part
	of the original URL.

	pathTemplateMatch must be between 1 and 255 characters
	(inclusive).  The pattern specified by pathTemplateMatch may
	have at most 5 wildcard operators and at most 5 variable
	captures in total. */
	// +optional
	PathTemplateMatch *string `json:"pathTemplateMatch,omitempty"`

	/* For satisfying the matchRule condition, the request's path must begin with the specified prefixMatch. prefixMatch must begin with a /. */
	// +optional
	PrefixMatch *string `json:"prefixMatch,omitempty"`

	/* Specifies a list of query parameter match criteria, all of which must match corresponding query parameters in the request. */
	// +optional
	QueryParameterMatch []EdgecacheserviceQueryParameterMatch `json:"queryParameterMatch,omitempty"`
}

func (*EdgecacheserviceMatchRule) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheserviceMatchRule.

func (*EdgecacheserviceMatchRule) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheservicePathMatcher

type EdgecacheservicePathMatcher struct {
	/* A human-readable description of the resource. */
	// +optional
	Description *string `json:"description,omitempty"`

	/* The name to which this PathMatcher is referred by the HostRule. */
	Name string `json:"name"`

	/* The routeRules to match against. routeRules support advanced routing behaviour, and can match on paths, headers and query parameters, as well as status codes and HTTP methods. */
	RouteRule []EdgecacheserviceRouteRule `json:"routeRule"`
}

func (*EdgecacheservicePathMatcher) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheservicePathMatcher.

func (*EdgecacheservicePathMatcher) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheserviceQueryParameterMatch

type EdgecacheserviceQueryParameterMatch struct {
	/* The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. */
	// +optional
	ExactMatch *string `json:"exactMatch,omitempty"`

	/* The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails. */
	Name string `json:"name"`

	/* Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. */
	// +optional
	PresentMatch *bool `json:"presentMatch,omitempty"`
}

func (*EdgecacheserviceQueryParameterMatch) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheserviceQueryParameterMatch.

func (*EdgecacheserviceQueryParameterMatch) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheserviceRequestHeaderToAdd

type EdgecacheserviceRequestHeaderToAdd struct {
	/* The name of the header to add. */
	HeaderName string `json:"headerName"`

	/* The value of the header to add. */
	HeaderValue string `json:"headerValue"`

	/* Whether to replace all existing headers with the same name. */
	// +optional
	Replace *bool `json:"replace,omitempty"`
}

func (*EdgecacheserviceRequestHeaderToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheserviceRequestHeaderToAdd.

func (*EdgecacheserviceRequestHeaderToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheserviceRequestHeaderToRemove

type EdgecacheserviceRequestHeaderToRemove struct {
	/* The name of the header to remove. */
	HeaderName string `json:"headerName"`
}

func (*EdgecacheserviceRequestHeaderToRemove) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheserviceRequestHeaderToRemove.

func (*EdgecacheserviceRequestHeaderToRemove) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheserviceResponseHeaderToAdd

type EdgecacheserviceResponseHeaderToAdd struct {
	/* The name of the header to add. */
	HeaderName string `json:"headerName"`

	/* The value of the header to add. */
	HeaderValue string `json:"headerValue"`

	/* Whether to replace all existing headers with the same name. */
	// +optional
	Replace *bool `json:"replace,omitempty"`
}

func (*EdgecacheserviceResponseHeaderToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheserviceResponseHeaderToAdd.

func (*EdgecacheserviceResponseHeaderToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheserviceResponseHeaderToRemove

type EdgecacheserviceResponseHeaderToRemove struct {
	/* Headers to remove from the response prior to sending it back to the client.

	Response headers are only sent to the client, and do not have an effect on the cache serving the response. */
	HeaderName string `json:"headerName"`
}

func (*EdgecacheserviceResponseHeaderToRemove) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheserviceResponseHeaderToRemove.

func (*EdgecacheserviceResponseHeaderToRemove) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheserviceRouteAction

type EdgecacheserviceRouteAction struct {
	/* The policy to use for defining caching and signed request behaviour for requests that match this route. */
	// +optional
	CdnPolicy *EdgecacheserviceCdnPolicy `json:"cdnPolicy,omitempty"`

	/* CORSPolicy defines Cross-Origin-Resource-Sharing configuration, including which CORS response headers will be set. */
	// +optional
	CorsPolicy *EdgecacheserviceCorsPolicy `json:"corsPolicy,omitempty"`

	/* The URL rewrite configuration for requests that match this route. */
	// +optional
	UrlRewrite *EdgecacheserviceUrlRewrite `json:"urlRewrite,omitempty"`
}

func (*EdgecacheserviceRouteAction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheserviceRouteAction.

func (*EdgecacheserviceRouteAction) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheserviceRouteRule

type EdgecacheserviceRouteRule struct {
	/* A human-readable description of the routeRule. */
	// +optional
	Description *string `json:"description,omitempty"`

	/* The header actions, including adding & removing headers, for requests that match this route. */
	// +optional
	HeaderAction *EdgecacheserviceHeaderAction `json:"headerAction,omitempty"`

	/* The list of criteria for matching attributes of a request to this routeRule. This list has OR semantics: the request matches this routeRule when any of the matchRules are satisfied. However predicates
	within a given matchRule have AND semantics. All predicates within a matchRule must match for the request to match the rule. */
	MatchRule []EdgecacheserviceMatchRule `json:"matchRule"`

	/* The Origin resource that requests to this route should fetch from when a matching response is not in cache. Origins can be defined as short names ("my-origin") or fully-qualified resource URLs - e.g. "networkservices.googleapis.com/projects/my-project/global/edgecacheorigins/my-origin"

	Only one of origin or urlRedirect can be set. */
	// +optional
	Origin *string `json:"origin,omitempty"`

	/* The priority of this route rule, where 1 is the highest priority.

	You cannot configure two or more routeRules with the same priority. Priority for each rule must be set to a number between 1 and 999 inclusive.

	Priority numbers can have gaps, which enable you to add or remove rules in the future without affecting the rest of the rules. For example, 1, 2, 3, 4, 5, 9, 12, 16 is a valid series of priority numbers
	to which you could add rules numbered from 6 to 8, 10 to 11, and 13 to 15 in the future without any impact on existing rules. */
	Priority string `json:"priority"`

	/* In response to a matching path, the routeAction performs advanced routing actions like URL rewrites, header transformations, etc. prior to forwarding the request to the selected origin. */
	// +optional
	RouteAction *EdgecacheserviceRouteAction `json:"routeAction,omitempty"`

	/* The URL redirect configuration for requests that match this route. */
	// +optional
	UrlRedirect *EdgecacheserviceUrlRedirect `json:"urlRedirect,omitempty"`
}

func (*EdgecacheserviceRouteRule) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheserviceRouteRule.

func (*EdgecacheserviceRouteRule) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheserviceRouting

type EdgecacheserviceRouting struct {
	/* The list of hostRules to match against. These rules define which hostnames the EdgeCacheService will match against, and which route configurations apply. */
	HostRule []EdgecacheserviceHostRule `json:"hostRule"`

	/* The list of pathMatchers referenced via name by hostRules. PathMatcher is used to match the path portion of the URL when a HostRule matches the URL's host portion. */
	PathMatcher []EdgecacheservicePathMatcher `json:"pathMatcher"`
}

func (*EdgecacheserviceRouting) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheserviceRouting.

func (*EdgecacheserviceRouting) DeepCopyInto

func (in *EdgecacheserviceRouting) DeepCopyInto(out *EdgecacheserviceRouting)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheserviceSignedTokenOptions

type EdgecacheserviceSignedTokenOptions struct {
	/* The allowed signature algorithms to use.

	Defaults to using only ED25519.

	You may specify up to 3 signature algorithms to use. Possible values: ["ED25519", "HMAC_SHA_256", "HMAC_SHA1"]. */
	// +optional
	AllowedSignatureAlgorithms []string `json:"allowedSignatureAlgorithms,omitempty"`

	/* The query parameter in which to find the token.

	The name must be 1-64 characters long and match the regular expression '[a-zA-Z]([a-zA-Z0-9_-])*' which means the first character must be a letter, and all following characters must be a dash, underscore, letter or digit.

	Defaults to 'edge-cache-token'. */
	// +optional
	TokenQueryParameter *string `json:"tokenQueryParameter,omitempty"`
}

func (*EdgecacheserviceSignedTokenOptions) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheserviceSignedTokenOptions.

func (*EdgecacheserviceSignedTokenOptions) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheserviceUrlRedirect

type EdgecacheserviceUrlRedirect struct {
	/* The host that will be used in the redirect response instead of the one that was supplied in the request. */
	// +optional
	HostRedirect *string `json:"hostRedirect,omitempty"`

	/* If set to true, the URL scheme in the redirected request is set to https. If set to false, the URL scheme of the redirected request will remain the same as that of the request.

	This can only be set if there is at least one (1) edgeSslCertificate set on the service. */
	// +optional
	HttpsRedirect *bool `json:"httpsRedirect,omitempty"`

	/* The path that will be used in the redirect response instead of the one that was supplied in the request.

	pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect.

	The path value must be between 1 and 1024 characters. */
	// +optional
	PathRedirect *string `json:"pathRedirect,omitempty"`

	/* The prefix that replaces the prefixMatch specified in the routeRule, retaining the remaining portion of the URL before redirecting the request.

	prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. */
	// +optional
	PrefixRedirect *string `json:"prefixRedirect,omitempty"`

	/* The HTTP Status code to use for this RedirectAction.

	The supported values are:

	- 'MOVED_PERMANENTLY_DEFAULT', which is the default value and corresponds to 301.
	- 'FOUND', which corresponds to 302.
	- 'SEE_OTHER' which corresponds to 303.
	- 'TEMPORARY_REDIRECT', which corresponds to 307. in this case, the request method will be retained.
	- 'PERMANENT_REDIRECT', which corresponds to 308. in this case, the request method will be retained. Possible values: ["MOVED_PERMANENTLY_DEFAULT", "FOUND", "SEE_OTHER", "TEMPORARY_REDIRECT", "PERMANENT_REDIRECT"]. */
	// +optional
	RedirectResponseCode *string `json:"redirectResponseCode,omitempty"`

	/* If set to true, any accompanying query portion of the original URL is removed prior to redirecting the request. If set to false, the query portion of the original URL is retained. */
	// +optional
	StripQuery *bool `json:"stripQuery,omitempty"`
}

func (*EdgecacheserviceUrlRedirect) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheserviceUrlRedirect.

func (*EdgecacheserviceUrlRedirect) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EdgecacheserviceUrlRewrite

type EdgecacheserviceUrlRewrite struct {
	/* Prior to forwarding the request to the selected origin, the request's host header is replaced with contents of hostRewrite. */
	// +optional
	HostRewrite *string `json:"hostRewrite,omitempty"`

	/* Prior to forwarding the request to the selected origin, the matching portion of the request's path is replaced by pathPrefixRewrite. */
	// +optional
	PathPrefixRewrite *string `json:"pathPrefixRewrite,omitempty"`

	/* Prior to forwarding the request to the selected origin, if the
	request matched a pathTemplateMatch, the matching portion of the
	request's path is replaced re-written using the pattern specified
	by pathTemplateRewrite.

	pathTemplateRewrite must be between 1 and 255 characters
	(inclusive), must start with a '/', and must only use variables
	captured by the route's pathTemplate matchers.

	pathTemplateRewrite may only be used when all of a route's
	MatchRules specify pathTemplate.

	Only one of pathPrefixRewrite and pathTemplateRewrite may be
	specified. */
	// +optional
	PathTemplateRewrite *string `json:"pathTemplateRewrite,omitempty"`
}

func (*EdgecacheserviceUrlRewrite) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgecacheserviceUrlRewrite.

func (*EdgecacheserviceUrlRewrite) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkServicesEdgeCacheKeyset

type NetworkServicesEdgeCacheKeyset struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   NetworkServicesEdgeCacheKeysetSpec   `json:"spec,omitempty"`
	Status NetworkServicesEdgeCacheKeysetStatus `json:"status,omitempty"`
}

NetworkServicesEdgeCacheKeyset is the Schema for the networkservices API +k8s:openapi-gen=true

func (*NetworkServicesEdgeCacheKeyset) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkServicesEdgeCacheKeyset.

func (*NetworkServicesEdgeCacheKeyset) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NetworkServicesEdgeCacheKeyset) DeepCopyObject

func (in *NetworkServicesEdgeCacheKeyset) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NetworkServicesEdgeCacheKeysetList

type NetworkServicesEdgeCacheKeysetList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []NetworkServicesEdgeCacheKeyset `json:"items"`
}

NetworkServicesEdgeCacheKeysetList contains a list of NetworkServicesEdgeCacheKeyset

func (*NetworkServicesEdgeCacheKeysetList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkServicesEdgeCacheKeysetList.

func (*NetworkServicesEdgeCacheKeysetList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NetworkServicesEdgeCacheKeysetList) DeepCopyObject

func (in *NetworkServicesEdgeCacheKeysetList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NetworkServicesEdgeCacheKeysetSpec

type NetworkServicesEdgeCacheKeysetSpec struct {
	/* A human-readable description of the resource. */
	// +optional
	Description *string `json:"description,omitempty"`

	/* The project that this resource belongs to. */
	ProjectRef v1alpha1.ResourceRef `json:"projectRef"`

	/* An ordered list of Ed25519 public keys to use for validating signed requests.
	You must specify 'public_keys' or 'validation_shared_keys' (or both). The keys in 'public_keys' are checked first.
	You may specify no more than one Google-managed public key.
	If you specify 'public_keys', you must specify at least one (1) key and may specify up to three (3) keys.

	Ed25519 public keys are not secret, and only allow Google to validate a request was signed by your corresponding private key.
	Ensure that the private key is kept secret, and that only authorized users can add public keys to a keyset. */
	// +optional
	PublicKey []EdgecachekeysetPublicKey `json:"publicKey,omitempty"`

	/* Immutable. Optional. The name of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default. */
	// +optional
	ResourceID *string `json:"resourceID,omitempty"`

	/* An ordered list of shared keys to use for validating signed requests.
	Shared keys are secret.  Ensure that only authorized users can add 'validation_shared_keys' to a keyset.
	You can rotate keys by appending (pushing) a new key to the list of 'validation_shared_keys' and removing any superseded keys.
	You must specify 'public_keys' or 'validation_shared_keys' (or both). The keys in 'public_keys' are checked first. */
	// +optional
	ValidationSharedKeys []EdgecachekeysetValidationSharedKeys `json:"validationSharedKeys,omitempty"`
}

func (*NetworkServicesEdgeCacheKeysetSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkServicesEdgeCacheKeysetSpec.

func (*NetworkServicesEdgeCacheKeysetSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkServicesEdgeCacheKeysetStatus

type NetworkServicesEdgeCacheKeysetStatus struct {
	/* Conditions represent the latest available observations of the
	   NetworkServicesEdgeCacheKeyset's current state. */
	Conditions []v1alpha1.Condition `json:"conditions,omitempty"`
	/* ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource. */
	// +optional
	ObservedGeneration *int64 `json:"observedGeneration,omitempty"`
}

func (*NetworkServicesEdgeCacheKeysetStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkServicesEdgeCacheKeysetStatus.

func (*NetworkServicesEdgeCacheKeysetStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkServicesEdgeCacheOrigin

type NetworkServicesEdgeCacheOrigin struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   NetworkServicesEdgeCacheOriginSpec   `json:"spec,omitempty"`
	Status NetworkServicesEdgeCacheOriginStatus `json:"status,omitempty"`
}

NetworkServicesEdgeCacheOrigin is the Schema for the networkservices API +k8s:openapi-gen=true

func (*NetworkServicesEdgeCacheOrigin) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkServicesEdgeCacheOrigin.

func (*NetworkServicesEdgeCacheOrigin) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NetworkServicesEdgeCacheOrigin) DeepCopyObject

func (in *NetworkServicesEdgeCacheOrigin) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NetworkServicesEdgeCacheOriginList

type NetworkServicesEdgeCacheOriginList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []NetworkServicesEdgeCacheOrigin `json:"items"`
}

NetworkServicesEdgeCacheOriginList contains a list of NetworkServicesEdgeCacheOrigin

func (*NetworkServicesEdgeCacheOriginList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkServicesEdgeCacheOriginList.

func (*NetworkServicesEdgeCacheOriginList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NetworkServicesEdgeCacheOriginList) DeepCopyObject

func (in *NetworkServicesEdgeCacheOriginList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NetworkServicesEdgeCacheOriginSpec

type NetworkServicesEdgeCacheOriginSpec struct {
	/* Enable AWS Signature Version 4 origin authentication. */
	// +optional
	AwsV4Authentication *EdgecacheoriginAwsV4Authentication `json:"awsV4Authentication,omitempty"`

	/* A human-readable description of the resource. */
	// +optional
	Description *string `json:"description,omitempty"`

	/* The Origin resource to try when the current origin cannot be reached.
	After maxAttempts is reached, the configured failoverOrigin will be used to fulfil the request.

	The value of timeout.maxAttemptsTimeout dictates the timeout across all origins.
	A reference to a Topic resource. */
	// +optional
	FailoverOrigin *string `json:"failoverOrigin,omitempty"`

	/* The maximum number of attempts to cache fill from this origin. Another attempt is made when a cache fill fails with one of the retryConditions.

	Once maxAttempts to this origin have failed the failoverOrigin will be used, if one is specified. That failoverOrigin may specify its own maxAttempts,
	retryConditions and failoverOrigin to control its own cache fill failures.

	The total number of allowed attempts to cache fill across this and failover origins is limited to four.
	The total time allowed for cache fill attempts across this and failover origins can be controlled with maxAttemptsTimeout.

	The last valid, non-retried response from all origins will be returned to the client.
	If no origin returns a valid response, an HTTP 502 will be returned to the client.

	Defaults to 1. Must be a value greater than 0 and less than 4. */
	// +optional
	MaxAttempts *int64 `json:"maxAttempts,omitempty"`

	/* A fully qualified domain name (FQDN) or IP address reachable over the public Internet, or the address of a Google Cloud Storage bucket.

	This address will be used as the origin for cache requests - e.g. FQDN: media-backend.example.com, IPv4: 35.218.1.1, IPv6: 2607:f8b0:4012:809::200e, Cloud Storage: gs://bucketname

	When providing an FQDN (hostname), it must be publicly resolvable (e.g. via Google public DNS) and IP addresses must be publicly routable.  It must not contain a protocol (e.g., https://) and it must not contain any slashes.
	If a Cloud Storage bucket is provided, it must be in the canonical "gs://bucketname" format. Other forms, such as "storage.googleapis.com", will be rejected. */
	OriginAddress string `json:"originAddress"`

	/* The override actions, including url rewrites and header
	additions, for requests that use this origin. */
	// +optional
	OriginOverrideAction *EdgecacheoriginOriginOverrideAction `json:"originOverrideAction,omitempty"`

	/* Follow redirects from this origin. */
	// +optional
	OriginRedirect *EdgecacheoriginOriginRedirect `json:"originRedirect,omitempty"`

	/* The port to connect to the origin on.
	Defaults to port 443 for HTTP2 and HTTPS protocols, and port 80 for HTTP. */
	// +optional
	Port *int64 `json:"port,omitempty"`

	/* The project that this resource belongs to. */
	ProjectRef v1alpha1.ResourceRef `json:"projectRef"`

	/* The protocol to use to connect to the configured origin. Defaults to HTTP2, and it is strongly recommended that users use HTTP2 for both security & performance.

	When using HTTP2 or HTTPS as the protocol, a valid, publicly-signed, unexpired TLS (SSL) certificate must be presented by the origin server. Possible values: ["HTTP2", "HTTPS", "HTTP"]. */
	// +optional
	Protocol *string `json:"protocol,omitempty"`

	/* Immutable. Optional. The name of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default. */
	// +optional
	ResourceID *string `json:"resourceID,omitempty"`

	/* Specifies one or more retry conditions for the configured origin.

	If the failure mode during a connection attempt to the origin matches the configured retryCondition(s),
	the origin request will be retried up to maxAttempts times. The failoverOrigin, if configured, will then be used to satisfy the request.

	The default retryCondition is "CONNECT_FAILURE".

	retryConditions apply to this origin, and not subsequent failoverOrigin(s),
	which may specify their own retryConditions and maxAttempts.

	Valid values are:

	- CONNECT_FAILURE: Retry on failures connecting to origins, for example due to connection timeouts.
	- HTTP_5XX: Retry if the origin responds with any 5xx response code, or if the origin does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams.
	- GATEWAY_ERROR: Similar to 5xx, but only applies to response codes 502, 503 or 504.
	- RETRIABLE_4XX: Retry for retriable 4xx response codes, which include HTTP 409 (Conflict) and HTTP 429 (Too Many Requests)
	- NOT_FOUND: Retry if the origin returns a HTTP 404 (Not Found). This can be useful when generating video content, and the segment is not available yet.
	- FORBIDDEN: Retry if the origin returns a HTTP 403 (Forbidden). Possible values: ["CONNECT_FAILURE", "HTTP_5XX", "GATEWAY_ERROR", "RETRIABLE_4XX", "NOT_FOUND", "FORBIDDEN"]. */
	// +optional
	RetryConditions []string `json:"retryConditions,omitempty"`

	/* The connection and HTTP timeout configuration for this origin. */
	// +optional
	Timeout *EdgecacheoriginTimeout `json:"timeout,omitempty"`
}

func (*NetworkServicesEdgeCacheOriginSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkServicesEdgeCacheOriginSpec.

func (*NetworkServicesEdgeCacheOriginSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkServicesEdgeCacheOriginStatus

type NetworkServicesEdgeCacheOriginStatus struct {
	/* Conditions represent the latest available observations of the
	   NetworkServicesEdgeCacheOrigin's current state. */
	Conditions []v1alpha1.Condition `json:"conditions,omitempty"`
	/* ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource. */
	// +optional
	ObservedGeneration *int64 `json:"observedGeneration,omitempty"`
}

func (*NetworkServicesEdgeCacheOriginStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkServicesEdgeCacheOriginStatus.

func (*NetworkServicesEdgeCacheOriginStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkServicesEdgeCacheService

type NetworkServicesEdgeCacheService struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   NetworkServicesEdgeCacheServiceSpec   `json:"spec,omitempty"`
	Status NetworkServicesEdgeCacheServiceStatus `json:"status,omitempty"`
}

NetworkServicesEdgeCacheService is the Schema for the networkservices API +k8s:openapi-gen=true

func (*NetworkServicesEdgeCacheService) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkServicesEdgeCacheService.

func (*NetworkServicesEdgeCacheService) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NetworkServicesEdgeCacheService) DeepCopyObject

func (in *NetworkServicesEdgeCacheService) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NetworkServicesEdgeCacheServiceList

type NetworkServicesEdgeCacheServiceList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []NetworkServicesEdgeCacheService `json:"items"`
}

NetworkServicesEdgeCacheServiceList contains a list of NetworkServicesEdgeCacheService

func (*NetworkServicesEdgeCacheServiceList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkServicesEdgeCacheServiceList.

func (*NetworkServicesEdgeCacheServiceList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NetworkServicesEdgeCacheServiceList) DeepCopyObject

func (in *NetworkServicesEdgeCacheServiceList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NetworkServicesEdgeCacheServiceSpec

type NetworkServicesEdgeCacheServiceSpec struct {
	/* A human-readable description of the resource. */
	// +optional
	Description *string `json:"description,omitempty"`

	/* Disables HTTP/2.

	HTTP/2 (h2) is enabled by default and recommended for performance. HTTP/2 improves connection re-use and reduces connection setup overhead by sending multiple streams over the same connection.

	Some legacy HTTP clients may have issues with HTTP/2 connections due to broken HTTP/2 implementations. Setting this to true will prevent HTTP/2 from being advertised and negotiated. */
	// +optional
	DisableHttp2 *bool `json:"disableHttp2,omitempty"`

	/* HTTP/3 (IETF QUIC) and Google QUIC are enabled by default. */
	// +optional
	DisableQuic *bool `json:"disableQuic,omitempty"`

	/* Resource URL that points at the Cloud Armor edge security policy that is applied on each request against the EdgeCacheService. */
	// +optional
	EdgeSecurityPolicy *string `json:"edgeSecurityPolicy,omitempty"`

	/* URLs to sslCertificate resources that are used to authenticate connections between users and the EdgeCacheService.

	Note that only "global" certificates with a "scope" of "EDGE_CACHE" can be attached to an EdgeCacheService. */
	// +optional
	EdgeSslCertificates []string `json:"edgeSslCertificates,omitempty"`

	/* Specifies the logging options for the traffic served by this service. If logging is enabled, logs will be exported to Cloud Logging. */
	// +optional
	LogConfig *EdgecacheserviceLogConfig `json:"logConfig,omitempty"`

	/* The project that this resource belongs to. */
	ProjectRef v1alpha1.ResourceRef `json:"projectRef"`

	/* Require TLS (HTTPS) for all clients connecting to this service.

	Clients who connect over HTTP (port 80) will receive a HTTP 301 to the same URL over HTTPS (port 443).
	You must have at least one (1) edgeSslCertificate specified to enable this. */
	// +optional
	RequireTls *bool `json:"requireTls,omitempty"`

	/* Immutable. Optional. The name of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default. */
	// +optional
	ResourceID *string `json:"resourceID,omitempty"`

	/* Defines how requests are routed, modified, cached and/or which origin content is filled from. */
	Routing EdgecacheserviceRouting `json:"routing"`

	/* URL of the SslPolicy resource that will be associated with the EdgeCacheService.

	If not set, the EdgeCacheService has no SSL policy configured, and will default to the "COMPATIBLE" policy. */
	// +optional
	SslPolicy *string `json:"sslPolicy,omitempty"`
}

func (*NetworkServicesEdgeCacheServiceSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkServicesEdgeCacheServiceSpec.

func (*NetworkServicesEdgeCacheServiceSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkServicesEdgeCacheServiceStatus

type NetworkServicesEdgeCacheServiceStatus struct {
	/* Conditions represent the latest available observations of the
	   NetworkServicesEdgeCacheService's current state. */
	Conditions []v1alpha1.Condition `json:"conditions,omitempty"`
	/* The IPv4 addresses associated with this service. Addresses are static for the lifetime of the service. */
	// +optional
	Ipv4Addresses []string `json:"ipv4Addresses,omitempty"`

	/* The IPv6 addresses associated with this service. Addresses are static for the lifetime of the service. */
	// +optional
	Ipv6Addresses []string `json:"ipv6Addresses,omitempty"`

	/* ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource. */
	// +optional
	ObservedGeneration *int64 `json:"observedGeneration,omitempty"`
}

func (*NetworkServicesEdgeCacheServiceStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkServicesEdgeCacheServiceStatus.

func (*NetworkServicesEdgeCacheServiceStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL