...

Text file src/github.com/GoogleCloudPlatform/k8s-config-connector/crds/gkebackup_v1alpha1_gkebackupbackupplan.yaml

Documentation: github.com/GoogleCloudPlatform/k8s-config-connector/crds

     1# Copyright 2020 Google LLC
     2#
     3# Licensed under the Apache License, Version 2.0 (the "License");
     4# you may not use this file except in compliance with the License.
     5# You may obtain a copy of the License at
     6#
     7#     http://www.apache.org/licenses/LICENSE-2.0
     8#
     9# Unless required by applicable law or agreed to in writing, software
    10# distributed under the License is distributed on an "AS IS" BASIS,
    11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12# See the License for the specific language governing permissions and
    13# limitations under the License.
    14
    15apiVersion: apiextensions.k8s.io/v1
    16kind: CustomResourceDefinition
    17metadata:
    18  annotations:
    19    cnrm.cloud.google.com/version: 1.106.0
    20  creationTimestamp: null
    21  labels:
    22    cnrm.cloud.google.com/managed-by-kcc: "true"
    23    cnrm.cloud.google.com/stability-level: alpha
    24    cnrm.cloud.google.com/system: "true"
    25    cnrm.cloud.google.com/tf2crd: "true"
    26  name: gkebackupbackupplans.gkebackup.cnrm.cloud.google.com
    27spec:
    28  group: gkebackup.cnrm.cloud.google.com
    29  names:
    30    categories:
    31    - gcp
    32    kind: GKEBackupBackupPlan
    33    plural: gkebackupbackupplans
    34    shortNames:
    35    - gcpgkebackupbackupplan
    36    - gcpgkebackupbackupplans
    37    singular: gkebackupbackupplan
    38  scope: Namespaced
    39  versions:
    40  - additionalPrinterColumns:
    41    - jsonPath: .metadata.creationTimestamp
    42      name: Age
    43      type: date
    44    - description: When 'True', the most recent reconcile of the resource succeeded
    45      jsonPath: .status.conditions[?(@.type=='Ready')].status
    46      name: Ready
    47      type: string
    48    - description: The reason for the value in 'Ready'
    49      jsonPath: .status.conditions[?(@.type=='Ready')].reason
    50      name: Status
    51      type: string
    52    - description: The last transition time for the value in 'Status'
    53      jsonPath: .status.conditions[?(@.type=='Ready')].lastTransitionTime
    54      name: Status Age
    55      type: date
    56    name: v1alpha1
    57    schema:
    58      openAPIV3Schema:
    59        properties:
    60          apiVersion:
    61            description: 'apiVersion defines the versioned schema of this representation
    62              of an object. Servers should convert recognized schemas to the latest
    63              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources'
    64            type: string
    65          kind:
    66            description: 'kind is a string value representing the REST resource this
    67              object represents. Servers may infer this from the endpoint the client
    68              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds'
    69            type: string
    70          metadata:
    71            type: object
    72          spec:
    73            properties:
    74              backupConfig:
    75                description: Defines the configuration of Backups created via this
    76                  BackupPlan.
    77                properties:
    78                  allNamespaces:
    79                    description: If True, include all namespaced resources.
    80                    type: boolean
    81                  encryptionKey:
    82                    description: |-
    83                      This defines a customer managed encryption key that will be used to encrypt the "config"
    84                      portion (the Kubernetes resources) of Backups created via this plan.
    85                    properties:
    86                      gcpKmsEncryptionKey:
    87                        description: 'Google Cloud KMS encryption key. Format: projects/*/locations/*/keyRings/*/cryptoKeys/*.'
    88                        type: string
    89                    required:
    90                    - gcpKmsEncryptionKey
    91                    type: object
    92                  includeSecrets:
    93                    description: |-
    94                      This flag specifies whether Kubernetes Secret resources should be included
    95                      when they fall into the scope of Backups.
    96                    type: boolean
    97                  includeVolumeData:
    98                    description: |-
    99                      This flag specifies whether volume data should be backed up when PVCs are
   100                      included in the scope of a Backup.
   101                    type: boolean
   102                  selectedApplications:
   103                    description: A list of namespaced Kubernetes Resources.
   104                    properties:
   105                      namespacedNames:
   106                        description: A list of namespaced Kubernetes resources.
   107                        items:
   108                          properties:
   109                            name:
   110                              description: The name of a Kubernetes Resource.
   111                              type: string
   112                            namespace:
   113                              description: The namespace of a Kubernetes Resource.
   114                              type: string
   115                          required:
   116                          - name
   117                          - namespace
   118                          type: object
   119                        type: array
   120                    required:
   121                    - namespacedNames
   122                    type: object
   123                  selectedNamespaces:
   124                    description: If set, include just the resources in the listed
   125                      namespaces.
   126                    properties:
   127                      namespaces:
   128                        description: A list of Kubernetes Namespaces.
   129                        items:
   130                          type: string
   131                        type: array
   132                    required:
   133                    - namespaces
   134                    type: object
   135                type: object
   136              backupSchedule:
   137                description: Defines a schedule for automatic Backup creation via
   138                  this BackupPlan.
   139                properties:
   140                  cronSchedule:
   141                    description: |-
   142                      A standard cron string that defines a repeating schedule for
   143                      creating Backups via this BackupPlan.
   144                      If this is defined, then backupRetainDays must also be defined.
   145                    type: string
   146                  paused:
   147                    description: This flag denotes whether automatic Backup creation
   148                      is paused for this BackupPlan.
   149                    type: boolean
   150                type: object
   151              cluster:
   152                description: Immutable. The source cluster from which Backups will
   153                  be created via this BackupPlan.
   154                type: string
   155              deactivated:
   156                description: |-
   157                  This flag indicates whether this BackupPlan has been deactivated.
   158                  Setting this field to True locks the BackupPlan such that no further updates will be allowed
   159                  (except deletes), including the deactivated field itself. It also prevents any new Backups
   160                  from being created via this BackupPlan (including scheduled Backups).
   161                type: boolean
   162              description:
   163                description: User specified descriptive string for this BackupPlan.
   164                type: string
   165              location:
   166                description: Immutable. The region of the Backup Plan.
   167                type: string
   168              projectRef:
   169                description: The project that this resource belongs to.
   170                oneOf:
   171                - not:
   172                    required:
   173                    - external
   174                  required:
   175                  - name
   176                - not:
   177                    anyOf:
   178                    - required:
   179                      - name
   180                    - required:
   181                      - namespace
   182                  required:
   183                  - external
   184                properties:
   185                  external:
   186                    description: 'Allowed value: The `name` field of a `Project` resource.'
   187                    type: string
   188                  name:
   189                    description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
   190                    type: string
   191                  namespace:
   192                    description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
   193                    type: string
   194                type: object
   195              resourceID:
   196                description: Immutable. Optional. The name of the resource. Used for
   197                  creation and acquisition. When unset, the value of `metadata.name`
   198                  is used as the default.
   199                type: string
   200              retentionPolicy:
   201                description: RetentionPolicy governs lifecycle of Backups created
   202                  under this plan.
   203                properties:
   204                  backupDeleteLockDays:
   205                    description: |-
   206                      Minimum age for a Backup created via this BackupPlan (in days).
   207                      Must be an integer value between 0-90 (inclusive).
   208                      A Backup created under this BackupPlan will not be deletable
   209                      until it reaches Backup's (create time + backup_delete_lock_days).
   210                      Updating this field of a BackupPlan does not affect existing Backups.
   211                      Backups created after a successful update will inherit this new value.
   212                    type: integer
   213                  backupRetainDays:
   214                    description: |-
   215                      The default maximum age of a Backup created via this BackupPlan.
   216                      This field MUST be an integer value >= 0 and <= 365. If specified,
   217                      a Backup created under this BackupPlan will be automatically deleted
   218                      after its age reaches (createTime + backupRetainDays).
   219                      If not specified, Backups created under this BackupPlan will NOT be
   220                      subject to automatic deletion. Updating this field does NOT affect
   221                      existing Backups under it. Backups created AFTER a successful update
   222                      will automatically pick up the new value.
   223                      NOTE: backupRetainDays must be >= backupDeleteLockDays.
   224                      If cronSchedule is defined, then this must be <= 360 * the creation interval.].
   225                    type: integer
   226                  locked:
   227                    description: |-
   228                      This flag denotes whether the retention policy of this BackupPlan is locked.
   229                      If set to True, no further update is allowed on this policy, including
   230                      the locked field itself.
   231                    type: boolean
   232                type: object
   233            required:
   234            - cluster
   235            - location
   236            - projectRef
   237            type: object
   238          status:
   239            properties:
   240              conditions:
   241                description: Conditions represent the latest available observation
   242                  of the resource's current state.
   243                items:
   244                  properties:
   245                    lastTransitionTime:
   246                      description: Last time the condition transitioned from one status
   247                        to another.
   248                      type: string
   249                    message:
   250                      description: Human-readable message indicating details about
   251                        last transition.
   252                      type: string
   253                    reason:
   254                      description: Unique, one-word, CamelCase reason for the condition's
   255                        last transition.
   256                      type: string
   257                    status:
   258                      description: Status is the status of the condition. Can be True,
   259                        False, Unknown.
   260                      type: string
   261                    type:
   262                      description: Type is the type of the condition.
   263                      type: string
   264                  type: object
   265                type: array
   266              etag:
   267                description: |-
   268                  etag is used for optimistic concurrency control as a way to help prevent simultaneous
   269                  updates of a backup plan from overwriting each other. It is strongly suggested that
   270                  systems make use of the 'etag' in the read-modify-write cycle to perform BackupPlan updates
   271                  in order to avoid race conditions: An etag is returned in the response to backupPlans.get,
   272                  and systems are expected to put that etag in the request to backupPlans.patch or
   273                  backupPlans.delete to ensure that their change will be applied to the same version of the resource.
   274                type: string
   275              observedGeneration:
   276                description: ObservedGeneration is the generation of the resource
   277                  that was most recently observed by the Config Connector controller.
   278                  If this is equal to metadata.generation, then that means that the
   279                  current reported status reflects the most recent desired state of
   280                  the resource.
   281                type: integer
   282              protectedPodCount:
   283                description: The number of Kubernetes Pods backed up in the last successful
   284                  Backup created via this BackupPlan.
   285                type: integer
   286              uid:
   287                description: Server generated, unique identifier of UUID format.
   288                type: string
   289            type: object
   290        required:
   291        - spec
   292        type: object
   293    served: true
   294    storage: true
   295    subresources:
   296      status: {}
   297status:
   298  acceptedNames:
   299    kind: ""
   300    plural: ""
   301  conditions: []
   302  storedVersions: []

View as plain text