kind: CustomResourceDefinition
apiVersion: apiextensions.k8s.io/v1
metadata:
    name: backendconfigs.cloud.google.com
    selfLink: >-
        /apis/apiextensions.k8s.io/v1/customresourcedefinitions/backendconfigs.cloud.google.com
    uid: ae8dbc51-3437-11ea-9cdc-42010a8001cf
    resourceVersion: '273579517'
    generation: 6
    creationTimestamp: '2020-01-11T06:00:34Z'
spec:
    group: cloud.google.com
    names:
        plural: backendconfigs
        singular: backendconfig
        shortNames:
            - bc
        kind: BackendConfig
        listKind: BackendConfigList
    scope: Namespaced
    versions:
        -
            name: v1
            served: true
            storage: true
            schema:
                openAPIV3Schema:
                    type: object
                    properties:
                        apiVersion:
                            description: >-
                                APIVersion defines the versioned schema of this
                                representation of an object. Servers should
                                convert recognized schemas to the latest
                                internal value, and may reject unrecognized
                                values. More info:
                                https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
                            type: string
                        kind:
                            description: >-
                                Kind is a string value representing the REST
                                resource this object represents. Servers may
                                infer this from the endpoint the client submits
                                requests to. Cannot be updated. In CamelCase.
                                More info:
                                https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
                            type: string
                        metadata:
                            type: object
                        spec:
                            description: >-
                                BackendConfigSpec is the spec for a
                                BackendConfig resource
                            type: object
                            properties:
                                cdn:
                                    description: >-
                                        CDNConfig contains configuration for
                                        CDN-enabled backends.
                                    type: object
                                    required:
                                        - enabled
                                    properties:
                                        cachePolicy:
                                            description: >-
                                                CacheKeyPolicy contains configuration
                                                for how requests to a CDN-enabled
                                                backend are cached.
                                            type: object
                                            properties:
                                                includeHost:
                                                    description: >-
                                                        If true, requests to different hosts
                                                        will be cached separately.
                                                    type: boolean
                                                includeProtocol:
                                                    description: >-
                                                        If true, http and https requests will be
                                                        cached separately.
                                                    type: boolean
                                                includeQueryString:
                                                    description: >-
                                                        If true, query string parameters are
                                                        included in the cache key according to
                                                        QueryStringBlacklist and
                                                        QueryStringWhitelist. If neither is set,
                                                        the entire query string is included and
                                                        if false the entire query string is
                                                        excluded.
                                                    type: boolean
                                                queryStringBlacklist:
                                                    description: >-
                                                        Names of query strint parameters to
                                                        exclude from cache keys. All other
                                                        parameters are included. Either specify
                                                        QueryStringBlacklist or
                                                        QueryStringWhitelist, but not both.
                                                    type: array
                                                    items:
                                                        type: string
                                                queryStringWhitelist:
                                                    description: >-
                                                        Names of query string parameters to
                                                        include in cache keys. All other
                                                        parameters are excluded. Either specify
                                                        QueryStringBlacklist or
                                                        QueryStringWhitelist, but not both.
                                                    type: array
                                                    items:
                                                        type: string
                                        enabled:
                                            type: boolean
                                connectionDraining:
                                    description: >-
                                        ConnectionDrainingConfig contains
                                        configuration for connection draining.
                                        For now the draining timeout. May manage
                                        more settings in the future.
                                    type: object
                                    properties:
                                        drainingTimeoutSec:
                                            description: Draining timeout in seconds.
                                            type: integer
                                            format: int64
                                customRequestHeaders:
                                    description: >-
                                        CustomRequestHeadersConfig contains
                                        configuration for custom request headers
                                    type: object
                                    properties:
                                        headers:
                                            type: array
                                            items:
                                                type: string
                                healthCheck:
                                    description: >-
                                        HealthCheckConfig contains configuration
                                        for the health check.
                                    type: object
                                    properties:
                                        checkIntervalSec:
                                            description: >-
                                                CheckIntervalSec is a health check
                                                parameter. See
                                                https://cloud.google.com/compute/docs/reference/rest/v1/healthChecks.
                                            type: integer
                                            format: int64
                                        healthyThreshold:
                                            description: >-
                                                HealthyThreshold is a health check
                                                parameter. See
                                                https://cloud.google.com/compute/docs/reference/rest/v1/healthChecks.
                                            type: integer
                                            format: int64
                                        port:
                                            description: >-
                                                Port is a health check parameter. See
                                                https://cloud.google.com/compute/docs/reference/rest/v1/healthChecks.
                                                If Port is used, the controller updates
                                                portSpecification as well
                                            type: integer
                                            format: int64
                                        requestPath:
                                            description: >-
                                                RequestPath is a health check parameter.
                                                See
                                                https://cloud.google.com/compute/docs/reference/rest/v1/healthChecks.
                                            type: string
                                        timeoutSec:
                                            description: >-
                                                TimeoutSec is a health check parameter.
                                                See
                                                https://cloud.google.com/compute/docs/reference/rest/v1/healthChecks.
                                            type: integer
                                            format: int64
                                        type:
                                            description: >-
                                                Type is a health check parameter. See
                                                https://cloud.google.com/compute/docs/reference/rest/v1/healthChecks.
                                            type: string
                                        unhealthyThreshold:
                                            description: >-
                                                UnhealthyThreshold is a health check
                                                parameter. See
                                                https://cloud.google.com/compute/docs/reference/rest/v1/healthChecks.
                                            type: integer
                                            format: int64
                                iap:
                                    description: >-
                                        IAPConfig contains configuration for
                                        IAP-enabled backends.
                                    type: object
                                    required:
                                        - enabled
                                        - oauthclientCredentials
                                    properties:
                                        enabled:
                                            type: boolean
                                        oauthclientCredentials:
                                            description: >-
                                                OAuthClientCredentials contains
                                                credentials for a single IAP-enabled
                                                backend.
                                            type: object
                                            required:
                                                - secretName
                                            properties:
                                                clientID:
                                                    description: Direct reference to OAuth client id.
                                                    type: string
                                                clientSecret:
                                                    description: Direct reference to OAuth client secret.
                                                    type: string
                                                secretName:
                                                    description: >-
                                                        The name of a k8s secret which stores
                                                        the OAuth client id & secret.
                                                    type: string
                                logging:
                                    description: >-
                                        LogConfig contains configuration for
                                        logging.
                                    type: object
                                    properties:
                                        enable:
                                            description: >-
                                                This field denotes whether to enable
                                                logging for the load balancer traffic
                                                served by this backend service.
                                            type: boolean
                                        sampleRate:
                                            description: >-
                                                This field can only be specified if
                                                logging is enabled for this backend
                                                service. The value of the field must be
                                                in [0, 1]. This configures the sampling
                                                rate of requests to the load balancer
                                                where 1.0 means all logged requests are
                                                reported and 0.0 means no logged
                                                requests are reported. The default value
                                                is 1.0.
                                            type: number
                                            format: double
                                securityPolicy:
                                    description: >-
                                        SecurityPolicyConfig contains
                                        configuration for CloudArmor-enabled
                                        backends.
                                    type: object
                                    required:
                                        - name
                                    properties:
                                        name:
                                            description: >-
                                                Name of the security policy that should
                                                be associated.
                                            type: string
                                sessionAffinity:
                                    description: >-
                                        SessionAffinityConfig contains
                                        configuration for stickyness parameters.
                                    type: object
                                    properties:
                                        affinityCookieTtlSec:
                                            type: integer
                                            format: int64
                                        affinityType:
                                            type: string
                                timeoutSec:
                                    type: integer
                                    format: int64
                        status:
                            type: object
        -
            name: v1beta1
            served: true
            storage: false
            schema:
                openAPIV3Schema:
                    type: object
                    properties:
                        apiVersion:
                            description: >-
                                APIVersion defines the versioned schema of this
                                representation of an object. Servers should
                                convert recognized schemas to the latest
                                internal value, and may reject unrecognized
                                values. More info:
                                https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
                            type: string
                        kind:
                            description: >-
                                Kind is a string value representing the REST
                                resource this object represents. Servers may
                                infer this from the endpoint the client submits
                                requests to. Cannot be updated. In CamelCase.
                                More info:
                                https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
                            type: string
                        metadata:
                            type: object
                        spec:
                            description: >-
                                BackendConfigSpec is the spec for a
                                BackendConfig resource
                            type: object
                            properties:
                                cdn:
                                    description: >-
                                        CDNConfig contains configuration for
                                        CDN-enabled backends.
                                    type: object
                                    required:
                                        - enabled
                                    properties:
                                        cachePolicy:
                                            description: >-
                                                CacheKeyPolicy contains configuration
                                                for how requests to a CDN-enabled
                                                backend are cached.
                                            type: object
                                            properties:
                                                includeHost:
                                                    description: >-
                                                        If true, requests to different hosts
                                                        will be cached separately.
                                                    type: boolean
                                                includeProtocol:
                                                    description: >-
                                                        If true, http and https requests will be
                                                        cached separately.
                                                    type: boolean
                                                includeQueryString:
                                                    description: >-
                                                        If true, query string parameters are
                                                        included in the cache key according to
                                                        QueryStringBlacklist and
                                                        QueryStringWhitelist. If neither is set,
                                                        the entire query string is included and
                                                        if false the entire query string is
                                                        excluded.
                                                    type: boolean
                                                queryStringBlacklist:
                                                    description: >-
                                                        Names of query strint parameters to
                                                        exclude from cache keys. All other
                                                        parameters are included. Either specify
                                                        QueryStringBlacklist or
                                                        QueryStringWhitelist, but not both.
                                                    type: array
                                                    items:
                                                        type: string
                                                queryStringWhitelist:
                                                    description: >-
                                                        Names of query string parameters to
                                                        include in cache keys. All other
                                                        parameters are excluded. Either specify
                                                        QueryStringBlacklist or
                                                        QueryStringWhitelist, but not both.
                                                    type: array
                                                    items:
                                                        type: string
                                        enabled:
                                            type: boolean
                                connectionDraining:
                                    description: >-
                                        ConnectionDrainingConfig contains
                                        configuration for connection draining.
                                        For now the draining timeout. May manage
                                        more settings in the future.
                                    type: object
                                    properties:
                                        drainingTimeoutSec:
                                            description: Draining timeout in seconds.
                                            type: integer
                                            format: int64
                                customRequestHeaders:
                                    description: >-
                                        CustomRequestHeadersConfig contains
                                        configuration for custom request headers
                                    type: object
                                    properties:
                                        headers:
                                            type: array
                                            items:
                                                type: string
                                healthCheck:
                                    description: >-
                                        HealthCheckConfig contains configuration
                                        for the health check.
                                    type: object
                                    properties:
                                        checkIntervalSec:
                                            description: >-
                                                CheckIntervalSec is a health check
                                                parameter. See
                                                https://cloud.google.com/compute/docs/reference/rest/v1/healthChecks.
                                            type: integer
                                            format: int64
                                        healthyThreshold:
                                            description: >-
                                                HealthyThreshold is a health check
                                                parameter. See
                                                https://cloud.google.com/compute/docs/reference/rest/v1/healthChecks.
                                            type: integer
                                            format: int64
                                        port:
                                            type: integer
                                            format: int64
                                        requestPath:
                                            description: >-
                                                RequestPath is a health check parameter.
                                                See
                                                https://cloud.google.com/compute/docs/reference/rest/v1/healthChecks.
                                            type: string
                                        timeoutSec:
                                            description: >-
                                                TimeoutSec is a health check parameter.
                                                See
                                                https://cloud.google.com/compute/docs/reference/rest/v1/healthChecks.
                                            type: integer
                                            format: int64
                                        type:
                                            description: >-
                                                Type is a health check parameter. See
                                                https://cloud.google.com/compute/docs/reference/rest/v1/healthChecks.
                                            type: string
                                        unhealthyThreshold:
                                            description: >-
                                                UnhealthyThreshold is a health check
                                                parameter. See
                                                https://cloud.google.com/compute/docs/reference/rest/v1/healthChecks.
                                            type: integer
                                            format: int64
                                iap:
                                    description: >-
                                        IAPConfig contains configuration for
                                        IAP-enabled backends.
                                    type: object
                                    required:
                                        - enabled
                                        - oauthclientCredentials
                                    properties:
                                        enabled:
                                            type: boolean
                                        oauthclientCredentials:
                                            description: >-
                                                OAuthClientCredentials contains
                                                credentials for a single IAP-enabled
                                                backend.
                                            type: object
                                            required:
                                                - secretName
                                            properties:
                                                clientID:
                                                    description: Direct reference to OAuth client id.
                                                    type: string
                                                clientSecret:
                                                    description: Direct reference to OAuth client secret.
                                                    type: string
                                                secretName:
                                                    description: >-
                                                        The name of a k8s secret which stores
                                                        the OAuth client id & secret.
                                                    type: string
                                securityPolicy:
                                    type: object
                                sessionAffinity:
                                    description: >-
                                        SessionAffinityConfig contains
                                        configuration for stickyness parameters.
                                    type: object
                                    properties:
                                        affinityCookieTtlSec:
                                            type: integer
                                            format: int64
                                        affinityType:
                                            type: string
                                timeoutSec:
                                    type: integer
                                    format: int64
                        status:
                            type: object
    conversion:
        strategy: None
status:
    conditions:
        -
            type: NamesAccepted
            status: 'True'
            lastTransitionTime: '2020-01-11T06:00:34Z'
            reason: NoConflicts
            message: no conflicts found
        -
            type: Established
            status: 'True'
            lastTransitionTime: '2020-08-11T18:49:30Z'
            reason: InitialNamesAccepted
            message: the initial names have been accepted
    acceptedNames:
        plural: backendconfigs
        singular: backendconfig
        shortNames:
            - bc
        kind: BackendConfig
        listKind: BackendConfigList
    storedVersions:
        - v1beta1
        - v1

