...

Text file src/github.com/GoogleCloudPlatform/k8s-config-connector/crds/osconfig_v1beta1_osconfigospolicyassignment.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/dcl2crd: "true"
    23    cnrm.cloud.google.com/managed-by-kcc: "true"
    24    cnrm.cloud.google.com/stability-level: stable
    25    cnrm.cloud.google.com/system: "true"
    26  name: osconfigospolicyassignments.osconfig.cnrm.cloud.google.com
    27spec:
    28  group: osconfig.cnrm.cloud.google.com
    29  names:
    30    categories:
    31    - gcp
    32    kind: OSConfigOSPolicyAssignment
    33    plural: osconfigospolicyassignments
    34    shortNames:
    35    - gcposconfigospolicyassignment
    36    - gcposconfigospolicyassignments
    37    singular: osconfigospolicyassignment
    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: v1beta1
    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              description:
    75                description: OS policy assignment description. Length of the description
    76                  is limited to 1024 characters.
    77                type: string
    78              instanceFilter:
    79                description: Required. Filter to select VMs.
    80                properties:
    81                  all:
    82                    description: Target all VMs in the project. If true, no other
    83                      criteria is permitted.
    84                    type: boolean
    85                  exclusionLabels:
    86                    description: List of label sets used for VM exclusion. If the
    87                      list has more than one label set, the VM is excluded if any
    88                      of the label sets are applicable for the VM.
    89                    items:
    90                      properties:
    91                        labels:
    92                          additionalProperties:
    93                            type: string
    94                          description: Labels are identified by key/value pairs in
    95                            this map. A VM should contain all the key/value pairs
    96                            specified in this map to be selected.
    97                          type: object
    98                      type: object
    99                    type: array
   100                  inclusionLabels:
   101                    description: List of label sets used for VM inclusion. If the
   102                      list has more than one `LabelSet`, the VM is included if any
   103                      of the label sets are applicable for the VM.
   104                    items:
   105                      properties:
   106                        labels:
   107                          additionalProperties:
   108                            type: string
   109                          description: Labels are identified by key/value pairs in
   110                            this map. A VM should contain all the key/value pairs
   111                            specified in this map to be selected.
   112                          type: object
   113                      type: object
   114                    type: array
   115                  inventories:
   116                    description: List of inventories to select VMs. A VM is selected
   117                      if its inventory data matches at least one of the following
   118                      inventories.
   119                    items:
   120                      properties:
   121                        osShortName:
   122                          description: Required. The OS short name
   123                          type: string
   124                        osVersion:
   125                          description: The OS version Prefix matches are supported
   126                            if asterisk(*) is provided as the last character. For
   127                            example, to match all versions with a major version of
   128                            `7`, specify the following value for this field `7.*`
   129                            An empty string matches all OS versions.
   130                          type: string
   131                      required:
   132                      - osShortName
   133                      type: object
   134                    type: array
   135                type: object
   136              location:
   137                description: Immutable. The location for the resource
   138                type: string
   139              osPolicies:
   140                description: Required. List of OS policies to be applied to the VMs.
   141                items:
   142                  properties:
   143                    allowNoResourceGroupMatch:
   144                      description: This flag determines the OS policy compliance status
   145                        when none of the resource groups within the policy are applicable
   146                        for a VM. Set this value to `true` if the policy needs to
   147                        be reported as compliant even if the policy has nothing to
   148                        validate or enforce.
   149                      type: boolean
   150                    description:
   151                      description: Policy description. Length of the description is
   152                        limited to 1024 characters.
   153                      type: string
   154                    id:
   155                      description: 'Required. The id of the OS policy with the following
   156                        restrictions: * Must contain only lowercase letters, numbers,
   157                        and hyphens. * Must start with a letter. * Must be between
   158                        1-63 characters. * Must end with a number or a letter. * Must
   159                        be unique within the assignment.'
   160                      type: string
   161                    mode:
   162                      description: 'Required. Policy mode Possible values: MODE_UNSPECIFIED,
   163                        VALIDATION, ENFORCEMENT'
   164                      type: string
   165                    resourceGroups:
   166                      description: Required. List of resource groups for the policy.
   167                        For a particular VM, resource groups are evaluated in the
   168                        order specified and the first resource group that is applicable
   169                        is selected and the rest are ignored. If none of the resource
   170                        groups are applicable for a VM, the VM is considered to be
   171                        non-compliant w.r.t this policy. This behavior can be toggled
   172                        by the flag `allow_no_resource_group_match`
   173                      items:
   174                        properties:
   175                          inventoryFilters:
   176                            description: 'List of inventory filters for the resource
   177                              group. The resources in this resource group are applied
   178                              to the target VM if it satisfies at least one of the
   179                              following inventory filters. For example, to apply this
   180                              resource group to VMs running either `RHEL` or `CentOS`
   181                              operating systems, specify 2 items for the list with
   182                              following values: inventory_filters[0].os_short_name=''rhel''
   183                              and inventory_filters[1].os_short_name=''centos'' If
   184                              the list is empty, this resource group will be applied
   185                              to the target VM unconditionally.'
   186                            items:
   187                              properties:
   188                                osShortName:
   189                                  description: Required. The OS short name
   190                                  type: string
   191                                osVersion:
   192                                  description: The OS version Prefix matches are supported
   193                                    if asterisk(*) is provided as the last character.
   194                                    For example, to match all versions with a major
   195                                    version of `7`, specify the following value for
   196                                    this field `7.*` An empty string matches all OS
   197                                    versions.
   198                                  type: string
   199                              required:
   200                              - osShortName
   201                              type: object
   202                            type: array
   203                          resources:
   204                            description: Required. List of resources configured for
   205                              this resource group. The resources are executed in the
   206                              exact order specified here.
   207                            items:
   208                              properties:
   209                                exec:
   210                                  description: Exec resource
   211                                  properties:
   212                                    enforce:
   213                                      description: What to run to bring this resource
   214                                        into the desired state. An exit code of 100
   215                                        indicates "success", any other exit code indicates
   216                                        a failure running enforce.
   217                                      properties:
   218                                        args:
   219                                          description: Optional arguments to pass
   220                                            to the source during execution.
   221                                          items:
   222                                            type: string
   223                                          type: array
   224                                        file:
   225                                          description: A remote or local file.
   226                                          properties:
   227                                            allowInsecure:
   228                                              description: 'Defaults to false. When
   229                                                false, files are subject to validations
   230                                                based on the file type: Remote: A
   231                                                checksum must be specified. Cloud
   232                                                Storage: An object generation number
   233                                                must be specified.'
   234                                              type: boolean
   235                                            gcs:
   236                                              description: A Cloud Storage object.
   237                                              properties:
   238                                                bucket:
   239                                                  description: Required. Bucket of
   240                                                    the Cloud Storage object.
   241                                                  type: string
   242                                                generation:
   243                                                  description: Generation number of
   244                                                    the Cloud Storage object.
   245                                                  format: int64
   246                                                  type: integer
   247                                                object:
   248                                                  description: Required. Name of the
   249                                                    Cloud Storage object.
   250                                                  type: string
   251                                              required:
   252                                              - bucket
   253                                              - object
   254                                              type: object
   255                                            localPath:
   256                                              description: A local path within the
   257                                                VM to use.
   258                                              type: string
   259                                            remote:
   260                                              description: A generic remote file.
   261                                              properties:
   262                                                sha256Checksum:
   263                                                  description: SHA256 checksum of
   264                                                    the remote file.
   265                                                  type: string
   266                                                uri:
   267                                                  description: Required. URI from
   268                                                    which to fetch the object. It
   269                                                    should contain both the protocol
   270                                                    and path following the format
   271                                                    `{protocol}://{location}`.
   272                                                  type: string
   273                                              required:
   274                                              - uri
   275                                              type: object
   276                                          type: object
   277                                        interpreter:
   278                                          description: 'Required. The script interpreter
   279                                            to use. Possible values: INTERPRETER_UNSPECIFIED,
   280                                            NONE, SHELL, POWERSHELL'
   281                                          type: string
   282                                        outputFilePath:
   283                                          description: Only recorded for enforce Exec.
   284                                            Path to an output file (that is created
   285                                            by this Exec) whose content will be recorded
   286                                            in OSPolicyResourceCompliance after a
   287                                            successful run. Absence or failure to
   288                                            read this file will result in this ExecResource
   289                                            being non-compliant. Output file size
   290                                            is limited to 100K bytes.
   291                                          type: string
   292                                        script:
   293                                          description: An inline script. The size
   294                                            of the script is limited to 1024 characters.
   295                                          type: string
   296                                      required:
   297                                      - interpreter
   298                                      type: object
   299                                    validate:
   300                                      description: Required. What to run to validate
   301                                        this resource is in the desired state. An
   302                                        exit code of 100 indicates "in desired state",
   303                                        and exit code of 101 indicates "not in desired
   304                                        state". Any other exit code indicates a failure
   305                                        running validate.
   306                                      properties:
   307                                        args:
   308                                          description: Optional arguments to pass
   309                                            to the source during execution.
   310                                          items:
   311                                            type: string
   312                                          type: array
   313                                        file:
   314                                          description: A remote or local file.
   315                                          properties:
   316                                            allowInsecure:
   317                                              description: 'Defaults to false. When
   318                                                false, files are subject to validations
   319                                                based on the file type: Remote: A
   320                                                checksum must be specified. Cloud
   321                                                Storage: An object generation number
   322                                                must be specified.'
   323                                              type: boolean
   324                                            gcs:
   325                                              description: A Cloud Storage object.
   326                                              properties:
   327                                                bucket:
   328                                                  description: Required. Bucket of
   329                                                    the Cloud Storage object.
   330                                                  type: string
   331                                                generation:
   332                                                  description: Generation number of
   333                                                    the Cloud Storage object.
   334                                                  format: int64
   335                                                  type: integer
   336                                                object:
   337                                                  description: Required. Name of the
   338                                                    Cloud Storage object.
   339                                                  type: string
   340                                              required:
   341                                              - bucket
   342                                              - object
   343                                              type: object
   344                                            localPath:
   345                                              description: A local path within the
   346                                                VM to use.
   347                                              type: string
   348                                            remote:
   349                                              description: A generic remote file.
   350                                              properties:
   351                                                sha256Checksum:
   352                                                  description: SHA256 checksum of
   353                                                    the remote file.
   354                                                  type: string
   355                                                uri:
   356                                                  description: Required. URI from
   357                                                    which to fetch the object. It
   358                                                    should contain both the protocol
   359                                                    and path following the format
   360                                                    `{protocol}://{location}`.
   361                                                  type: string
   362                                              required:
   363                                              - uri
   364                                              type: object
   365                                          type: object
   366                                        interpreter:
   367                                          description: 'Required. The script interpreter
   368                                            to use. Possible values: INTERPRETER_UNSPECIFIED,
   369                                            NONE, SHELL, POWERSHELL'
   370                                          type: string
   371                                        outputFilePath:
   372                                          description: Only recorded for enforce Exec.
   373                                            Path to an output file (that is created
   374                                            by this Exec) whose content will be recorded
   375                                            in OSPolicyResourceCompliance after a
   376                                            successful run. Absence or failure to
   377                                            read this file will result in this ExecResource
   378                                            being non-compliant. Output file size
   379                                            is limited to 100K bytes.
   380                                          type: string
   381                                        script:
   382                                          description: An inline script. The size
   383                                            of the script is limited to 1024 characters.
   384                                          type: string
   385                                      required:
   386                                      - interpreter
   387                                      type: object
   388                                  required:
   389                                  - validate
   390                                  type: object
   391                                file:
   392                                  description: File resource
   393                                  properties:
   394                                    content:
   395                                      description: A a file with this content. The
   396                                        size of the content is limited to 1024 characters.
   397                                      type: string
   398                                    file:
   399                                      description: A remote or local source.
   400                                      properties:
   401                                        allowInsecure:
   402                                          description: 'Defaults to false. When false,
   403                                            files are subject to validations based
   404                                            on the file type: Remote: A checksum must
   405                                            be specified. Cloud Storage: An object
   406                                            generation number must be specified.'
   407                                          type: boolean
   408                                        gcs:
   409                                          description: A Cloud Storage object.
   410                                          properties:
   411                                            bucket:
   412                                              description: Required. Bucket of the
   413                                                Cloud Storage object.
   414                                              type: string
   415                                            generation:
   416                                              description: Generation number of the
   417                                                Cloud Storage object.
   418                                              format: int64
   419                                              type: integer
   420                                            object:
   421                                              description: Required. Name of the Cloud
   422                                                Storage object.
   423                                              type: string
   424                                          required:
   425                                          - bucket
   426                                          - object
   427                                          type: object
   428                                        localPath:
   429                                          description: A local path within the VM
   430                                            to use.
   431                                          type: string
   432                                        remote:
   433                                          description: A generic remote file.
   434                                          properties:
   435                                            sha256Checksum:
   436                                              description: SHA256 checksum of the
   437                                                remote file.
   438                                              type: string
   439                                            uri:
   440                                              description: Required. URI from which
   441                                                to fetch the object. It should contain
   442                                                both the protocol and path following
   443                                                the format `{protocol}://{location}`.
   444                                              type: string
   445                                          required:
   446                                          - uri
   447                                          type: object
   448                                      type: object
   449                                    path:
   450                                      description: Required. The absolute path of
   451                                        the file within the VM.
   452                                      type: string
   453                                    permissions:
   454                                      description: 'Consists of three octal digits
   455                                        which represent, in order, the permissions
   456                                        of the owner, group, and other users for the
   457                                        file (similarly to the numeric mode used in
   458                                        the linux chmod utility). Each digit represents
   459                                        a three bit number with the 4 bit corresponding
   460                                        to the read permissions, the 2 bit corresponds
   461                                        to the write bit, and the one bit corresponds
   462                                        to the execute permission. Default behavior
   463                                        is 755. Below are some examples of permissions
   464                                        and their associated values: read, write,
   465                                        and execute: 7 read and execute: 5 read and
   466                                        write: 6 read only: 4'
   467                                      type: string
   468                                    state:
   469                                      description: 'Required. Desired state of the
   470                                        file. Possible values: OS_POLICY_COMPLIANCE_STATE_UNSPECIFIED,
   471                                        COMPLIANT, NON_COMPLIANT, UNKNOWN, NO_OS_POLICIES_APPLICABLE'
   472                                      type: string
   473                                  required:
   474                                  - path
   475                                  - state
   476                                  type: object
   477                                id:
   478                                  description: 'Required. The id of the resource with
   479                                    the following restrictions: * Must contain only
   480                                    lowercase letters, numbers, and hyphens. * Must
   481                                    start with a letter. * Must be between 1-63 characters.
   482                                    * Must end with a number or a letter. * Must be
   483                                    unique within the OS policy.'
   484                                  type: string
   485                                pkg:
   486                                  description: Package resource
   487                                  properties:
   488                                    apt:
   489                                      description: A package managed by Apt.
   490                                      properties:
   491                                        name:
   492                                          description: Required. Package name.
   493                                          type: string
   494                                      required:
   495                                      - name
   496                                      type: object
   497                                    deb:
   498                                      description: A deb package file.
   499                                      properties:
   500                                        pullDeps:
   501                                          description: 'Whether dependencies should
   502                                            also be installed. - install when false:
   503                                            `dpkg -i package` - install when true:
   504                                            `apt-get update && apt-get -y install
   505                                            package.deb`'
   506                                          type: boolean
   507                                        source:
   508                                          description: Required. A deb package.
   509                                          properties:
   510                                            allowInsecure:
   511                                              description: 'Defaults to false. When
   512                                                false, files are subject to validations
   513                                                based on the file type: Remote: A
   514                                                checksum must be specified. Cloud
   515                                                Storage: An object generation number
   516                                                must be specified.'
   517                                              type: boolean
   518                                            gcs:
   519                                              description: A Cloud Storage object.
   520                                              properties:
   521                                                bucket:
   522                                                  description: Required. Bucket of
   523                                                    the Cloud Storage object.
   524                                                  type: string
   525                                                generation:
   526                                                  description: Generation number of
   527                                                    the Cloud Storage object.
   528                                                  format: int64
   529                                                  type: integer
   530                                                object:
   531                                                  description: Required. Name of the
   532                                                    Cloud Storage object.
   533                                                  type: string
   534                                              required:
   535                                              - bucket
   536                                              - object
   537                                              type: object
   538                                            localPath:
   539                                              description: A local path within the
   540                                                VM to use.
   541                                              type: string
   542                                            remote:
   543                                              description: A generic remote file.
   544                                              properties:
   545                                                sha256Checksum:
   546                                                  description: SHA256 checksum of
   547                                                    the remote file.
   548                                                  type: string
   549                                                uri:
   550                                                  description: Required. URI from
   551                                                    which to fetch the object. It
   552                                                    should contain both the protocol
   553                                                    and path following the format
   554                                                    `{protocol}://{location}`.
   555                                                  type: string
   556                                              required:
   557                                              - uri
   558                                              type: object
   559                                          type: object
   560                                      required:
   561                                      - source
   562                                      type: object
   563                                    desiredState:
   564                                      description: 'Required. The desired state the
   565                                        agent should maintain for this package. Possible
   566                                        values: DESIRED_STATE_UNSPECIFIED, INSTALLED,
   567                                        REMOVED'
   568                                      type: string
   569                                    googet:
   570                                      description: A package managed by GooGet.
   571                                      properties:
   572                                        name:
   573                                          description: Required. Package name.
   574                                          type: string
   575                                      required:
   576                                      - name
   577                                      type: object
   578                                    msi:
   579                                      description: An MSI package.
   580                                      properties:
   581                                        properties:
   582                                          description: Additional properties to use
   583                                            during installation. This should be in
   584                                            the format of Property=Setting. Appended
   585                                            to the defaults of `ACTION=INSTALL REBOOT=ReallySuppress`.
   586                                          items:
   587                                            type: string
   588                                          type: array
   589                                        source:
   590                                          description: Required. The MSI package.
   591                                          properties:
   592                                            allowInsecure:
   593                                              description: 'Defaults to false. When
   594                                                false, files are subject to validations
   595                                                based on the file type: Remote: A
   596                                                checksum must be specified. Cloud
   597                                                Storage: An object generation number
   598                                                must be specified.'
   599                                              type: boolean
   600                                            gcs:
   601                                              description: A Cloud Storage object.
   602                                              properties:
   603                                                bucket:
   604                                                  description: Required. Bucket of
   605                                                    the Cloud Storage object.
   606                                                  type: string
   607                                                generation:
   608                                                  description: Generation number of
   609                                                    the Cloud Storage object.
   610                                                  format: int64
   611                                                  type: integer
   612                                                object:
   613                                                  description: Required. Name of the
   614                                                    Cloud Storage object.
   615                                                  type: string
   616                                              required:
   617                                              - bucket
   618                                              - object
   619                                              type: object
   620                                            localPath:
   621                                              description: A local path within the
   622                                                VM to use.
   623                                              type: string
   624                                            remote:
   625                                              description: A generic remote file.
   626                                              properties:
   627                                                sha256Checksum:
   628                                                  description: SHA256 checksum of
   629                                                    the remote file.
   630                                                  type: string
   631                                                uri:
   632                                                  description: Required. URI from
   633                                                    which to fetch the object. It
   634                                                    should contain both the protocol
   635                                                    and path following the format
   636                                                    `{protocol}://{location}`.
   637                                                  type: string
   638                                              required:
   639                                              - uri
   640                                              type: object
   641                                          type: object
   642                                      required:
   643                                      - source
   644                                      type: object
   645                                    rpm:
   646                                      description: An rpm package file.
   647                                      properties:
   648                                        pullDeps:
   649                                          description: 'Whether dependencies should
   650                                            also be installed. - install when false:
   651                                            `rpm --upgrade --replacepkgs package.rpm`
   652                                            - install when true: `yum -y install package.rpm`
   653                                            or `zypper -y install package.rpm`'
   654                                          type: boolean
   655                                        source:
   656                                          description: Required. An rpm package.
   657                                          properties:
   658                                            allowInsecure:
   659                                              description: 'Defaults to false. When
   660                                                false, files are subject to validations
   661                                                based on the file type: Remote: A
   662                                                checksum must be specified. Cloud
   663                                                Storage: An object generation number
   664                                                must be specified.'
   665                                              type: boolean
   666                                            gcs:
   667                                              description: A Cloud Storage object.
   668                                              properties:
   669                                                bucket:
   670                                                  description: Required. Bucket of
   671                                                    the Cloud Storage object.
   672                                                  type: string
   673                                                generation:
   674                                                  description: Generation number of
   675                                                    the Cloud Storage object.
   676                                                  format: int64
   677                                                  type: integer
   678                                                object:
   679                                                  description: Required. Name of the
   680                                                    Cloud Storage object.
   681                                                  type: string
   682                                              required:
   683                                              - bucket
   684                                              - object
   685                                              type: object
   686                                            localPath:
   687                                              description: A local path within the
   688                                                VM to use.
   689                                              type: string
   690                                            remote:
   691                                              description: A generic remote file.
   692                                              properties:
   693                                                sha256Checksum:
   694                                                  description: SHA256 checksum of
   695                                                    the remote file.
   696                                                  type: string
   697                                                uri:
   698                                                  description: Required. URI from
   699                                                    which to fetch the object. It
   700                                                    should contain both the protocol
   701                                                    and path following the format
   702                                                    `{protocol}://{location}`.
   703                                                  type: string
   704                                              required:
   705                                              - uri
   706                                              type: object
   707                                          type: object
   708                                      required:
   709                                      - source
   710                                      type: object
   711                                    yum:
   712                                      description: A package managed by YUM.
   713                                      properties:
   714                                        name:
   715                                          description: Required. Package name.
   716                                          type: string
   717                                      required:
   718                                      - name
   719                                      type: object
   720                                    zypper:
   721                                      description: A package managed by Zypper.
   722                                      properties:
   723                                        name:
   724                                          description: Required. Package name.
   725                                          type: string
   726                                      required:
   727                                      - name
   728                                      type: object
   729                                  required:
   730                                  - desiredState
   731                                  type: object
   732                                repository:
   733                                  description: Package repository resource
   734                                  properties:
   735                                    apt:
   736                                      description: An Apt Repository.
   737                                      properties:
   738                                        archiveType:
   739                                          description: 'Required. Type of archive
   740                                            files in this repository. Possible values:
   741                                            ARCHIVE_TYPE_UNSPECIFIED, DEB, DEB_SRC'
   742                                          type: string
   743                                        components:
   744                                          description: Required. List of components
   745                                            for this repository. Must contain at least
   746                                            one item.
   747                                          items:
   748                                            type: string
   749                                          type: array
   750                                        distribution:
   751                                          description: Required. Distribution of this
   752                                            repository.
   753                                          type: string
   754                                        gpgKey:
   755                                          description: URI of the key file for this
   756                                            repository. The agent maintains a keyring
   757                                            at `/etc/apt/trusted.gpg.d/osconfig_agent_managed.gpg`.
   758                                          type: string
   759                                        uri:
   760                                          description: Required. URI for this repository.
   761                                          type: string
   762                                      required:
   763                                      - archiveType
   764                                      - components
   765                                      - distribution
   766                                      - uri
   767                                      type: object
   768                                    goo:
   769                                      description: A Goo Repository.
   770                                      properties:
   771                                        name:
   772                                          description: Required. The name of the repository.
   773                                          type: string
   774                                        url:
   775                                          description: Required. The url of the repository.
   776                                          type: string
   777                                      required:
   778                                      - name
   779                                      - url
   780                                      type: object
   781                                    yum:
   782                                      description: A Yum Repository.
   783                                      properties:
   784                                        baseUrl:
   785                                          description: Required. The location of the
   786                                            repository directory.
   787                                          type: string
   788                                        displayName:
   789                                          description: The display name of the repository.
   790                                          type: string
   791                                        gpgKeys:
   792                                          description: URIs of GPG keys.
   793                                          items:
   794                                            type: string
   795                                          type: array
   796                                        id:
   797                                          description: Required. A one word, unique
   798                                            name for this repository. This is the
   799                                            `repo id` in the yum config file and also
   800                                            the `display_name` if `display_name` is
   801                                            omitted. This id is also used as the unique
   802                                            identifier when checking for resource
   803                                            conflicts.
   804                                          type: string
   805                                      required:
   806                                      - baseUrl
   807                                      - id
   808                                      type: object
   809                                    zypper:
   810                                      description: A Zypper Repository.
   811                                      properties:
   812                                        baseUrl:
   813                                          description: Required. The location of the
   814                                            repository directory.
   815                                          type: string
   816                                        displayName:
   817                                          description: The display name of the repository.
   818                                          type: string
   819                                        gpgKeys:
   820                                          description: URIs of GPG keys.
   821                                          items:
   822                                            type: string
   823                                          type: array
   824                                        id:
   825                                          description: Required. A one word, unique
   826                                            name for this repository. This is the
   827                                            `repo id` in the zypper config file and
   828                                            also the `display_name` if `display_name`
   829                                            is omitted. This id is also used as the
   830                                            unique identifier when checking for GuestPolicy
   831                                            conflicts.
   832                                          type: string
   833                                      required:
   834                                      - baseUrl
   835                                      - id
   836                                      type: object
   837                                  type: object
   838                              required:
   839                              - id
   840                              type: object
   841                            type: array
   842                        required:
   843                        - resources
   844                        type: object
   845                      type: array
   846                  required:
   847                  - id
   848                  - mode
   849                  - resourceGroups
   850                  type: object
   851                type: array
   852              projectRef:
   853                description: Immutable. The Project that this resource belongs to.
   854                oneOf:
   855                - not:
   856                    required:
   857                    - external
   858                  required:
   859                  - name
   860                - not:
   861                    anyOf:
   862                    - required:
   863                      - name
   864                    - required:
   865                      - namespace
   866                  required:
   867                  - external
   868                properties:
   869                  external:
   870                    description: |-
   871                      The project for the resource
   872
   873                      Allowed value: The Google Cloud resource name of a `Project` resource (format: `projects/{{name}}`).
   874                    type: string
   875                  name:
   876                    description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
   877                    type: string
   878                  namespace:
   879                    description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
   880                    type: string
   881                type: object
   882              resourceID:
   883                description: Immutable. Optional. The name of the resource. Used for
   884                  creation and acquisition. When unset, the value of `metadata.name`
   885                  is used as the default.
   886                type: string
   887              rollout:
   888                description: 'Required. Rollout to deploy the OS policy assignment.
   889                  A rollout is triggered in the following situations: 1) OSPolicyAssignment
   890                  is created. 2) OSPolicyAssignment is updated and the update contains
   891                  changes to one of the following fields: - instance_filter - os_policies
   892                  3) OSPolicyAssignment is deleted.'
   893                properties:
   894                  disruptionBudget:
   895                    description: Required. The maximum number (or percentage) of VMs
   896                      per zone to disrupt at any given moment.
   897                    properties:
   898                      fixed:
   899                        description: Specifies a fixed value.
   900                        format: int64
   901                        type: integer
   902                      percent:
   903                        description: Specifies the relative value defined as a percentage,
   904                          which will be multiplied by a reference value.
   905                        format: int64
   906                        type: integer
   907                    type: object
   908                  minWaitDuration:
   909                    description: Required. This determines the minimum duration of
   910                      time to wait after the configuration changes are applied through
   911                      the current rollout. A VM continues to count towards the `disruption_budget`
   912                      at least until this duration of time has passed after configuration
   913                      changes are applied.
   914                    type: string
   915                required:
   916                - disruptionBudget
   917                - minWaitDuration
   918                type: object
   919              skipAwaitRollout:
   920                description: Set to true to skip awaiting rollout during resource
   921                  creation and update.
   922                type: boolean
   923            required:
   924            - instanceFilter
   925            - location
   926            - osPolicies
   927            - projectRef
   928            - rollout
   929            type: object
   930          status:
   931            properties:
   932              baseline:
   933                description: Output only. Indicates that this revision has been successfully
   934                  rolled out in this zone and new VMs will be assigned OS policies
   935                  from this revision. For a given OS policy assignment, there is only
   936                  one revision with a value of `true` for this field.
   937                type: boolean
   938              conditions:
   939                description: Conditions represent the latest available observation
   940                  of the resource's current state.
   941                items:
   942                  properties:
   943                    lastTransitionTime:
   944                      description: Last time the condition transitioned from one status
   945                        to another.
   946                      type: string
   947                    message:
   948                      description: Human-readable message indicating details about
   949                        last transition.
   950                      type: string
   951                    reason:
   952                      description: Unique, one-word, CamelCase reason for the condition's
   953                        last transition.
   954                      type: string
   955                    status:
   956                      description: Status is the status of the condition. Can be True,
   957                        False, Unknown.
   958                      type: string
   959                    type:
   960                      description: Type is the type of the condition.
   961                      type: string
   962                  type: object
   963                type: array
   964              deleted:
   965                description: Output only. Indicates that this revision deletes the
   966                  OS policy assignment.
   967                type: boolean
   968              etag:
   969                description: The etag for this OS policy assignment. If this is provided
   970                  on update, it must match the server's etag.
   971                type: string
   972              observedGeneration:
   973                description: ObservedGeneration is the generation of the resource
   974                  that was most recently observed by the Config Connector controller.
   975                  If this is equal to metadata.generation, then that means that the
   976                  current reported status reflects the most recent desired state of
   977                  the resource.
   978                type: integer
   979              reconciling:
   980                description: 'Output only. Indicates that reconciliation is in progress
   981                  for the revision. This value is `true` when the `rollout_state`
   982                  is one of: * IN_PROGRESS * CANCELLING'
   983                type: boolean
   984              revisionCreateTime:
   985                description: Output only. The timestamp that the revision was created.
   986                format: date-time
   987                type: string
   988              revisionId:
   989                description: Output only. The assignment revision ID A new revision
   990                  is committed whenever a rollout is triggered for a OS policy assignment
   991                type: string
   992              rolloutState:
   993                description: 'Output only. OS policy assignment rollout state Possible
   994                  values: ROLLOUT_STATE_UNSPECIFIED, IN_PROGRESS, CANCELLING, CANCELLED,
   995                  SUCCEEDED'
   996                type: string
   997              uid:
   998                description: Output only. Server generated unique id for the OS policy
   999                  assignment resource.
  1000                type: string
  1001            type: object
  1002        required:
  1003        - spec
  1004        type: object
  1005    served: true
  1006    storage: true
  1007    subresources:
  1008      status: {}
  1009status:
  1010  acceptedNames:
  1011    kind: ""
  1012    plural: ""
  1013  conditions: []
  1014  storedVersions: []

View as plain text