@@ -1008,6 +1008,55 @@ def update!(**args)
10081008 end
10091009 end
10101010
1011+ # CertificateConfig configures certificate for the registry.
1012+ class CertificateConfig
1013+ include Google ::Apis ::Core ::Hashable
1014+
1015+ # The URI configures a secret from [Secret Manager](https://cloud.google.com/
1016+ # secret-manager) in the format "projects/$PROJECT_ID/secrets/$SECRET_NAME/
1017+ # versions/$VERSION" for global secret or "projects/$PROJECT_ID/locations/$
1018+ # REGION/secrets/$SECRET_NAME/versions/$VERSION" for regional secret. Version
1019+ # can be fixed (e.g. "2") or "latest"
1020+ # Corresponds to the JSON property `gcpSecretManagerSecretUri`
1021+ # @return [String]
1022+ attr_accessor :gcp_secret_manager_secret_uri
1023+
1024+ def initialize ( **args )
1025+ update! ( **args )
1026+ end
1027+
1028+ # Update properties of this object
1029+ def update! ( **args )
1030+ @gcp_secret_manager_secret_uri = args [ :gcp_secret_manager_secret_uri ] if args . key? ( :gcp_secret_manager_secret_uri )
1031+ end
1032+ end
1033+
1034+ # CertificateConfigPair configures pairs of certificates, which is used for
1035+ # client certificate and key pairs under a registry.
1036+ class CertificateConfigPair
1037+ include Google ::Apis ::Core ::Hashable
1038+
1039+ # CertificateConfig configures certificate for the registry.
1040+ # Corresponds to the JSON property `cert`
1041+ # @return [Google::Apis::ContainerV1::CertificateConfig]
1042+ attr_accessor :cert
1043+
1044+ # CertificateConfig configures certificate for the registry.
1045+ # Corresponds to the JSON property `key`
1046+ # @return [Google::Apis::ContainerV1::CertificateConfig]
1047+ attr_accessor :key
1048+
1049+ def initialize ( **args )
1050+ update! ( **args )
1051+ end
1052+
1053+ # Update properties of this object
1054+ def update! ( **args )
1055+ @cert = args [ :cert ] if args . key? ( :cert )
1056+ @key = args [ :key ] if args . key? ( :key )
1057+ end
1058+ end
1059+
10111060 # CheckAutopilotCompatibilityResponse has a list of compatibility issues.
10121061 class CheckAutopilotCompatibilityResponse
10131062 include Google ::Apis ::Core ::Hashable
@@ -2545,6 +2594,13 @@ class ContainerdConfig
25452594 # @return [Google::Apis::ContainerV1::PrivateRegistryAccessConfig]
25462595 attr_accessor :private_registry_access_config
25472596
2597+ # RegistryHostConfig configures containerd registry host configuration. Each
2598+ # registry_hosts represents a hosts.toml file. At most 25 registry_hosts are
2599+ # allowed.
2600+ # Corresponds to the JSON property `registryHosts`
2601+ # @return [Array<Google::Apis::ContainerV1::RegistryHostConfig>]
2602+ attr_accessor :registry_hosts
2603+
25482604 # Defines writable cgroups configuration.
25492605 # Corresponds to the JSON property `writableCgroups`
25502606 # @return [Google::Apis::ContainerV1::WritableCgroups]
@@ -2557,6 +2613,7 @@ def initialize(**args)
25572613 # Update properties of this object
25582614 def update! ( **args )
25592615 @private_registry_access_config = args [ :private_registry_access_config ] if args . key? ( :private_registry_access_config )
2616+ @registry_hosts = args [ :registry_hosts ] if args . key? ( :registry_hosts )
25602617 @writable_cgroups = args [ :writable_cgroups ] if args . key? ( :writable_cgroups )
25612618 end
25622619 end
@@ -3671,6 +3728,73 @@ def update!(**args)
36713728 end
36723729 end
36733730
3731+ # HostConfig configures the registry host under a given Server.
3732+ class HostConfig
3733+ include Google ::Apis ::Core ::Hashable
3734+
3735+ # CA configures the registry host certificate.
3736+ # Corresponds to the JSON property `ca`
3737+ # @return [Array<Google::Apis::ContainerV1::CertificateConfig>]
3738+ attr_accessor :ca
3739+
3740+ # Capabilities represent the capabilities of the registry host, specifying what
3741+ # operations a host is capable of performing. If not set, containerd enables all
3742+ # capabilities by default.
3743+ # Corresponds to the JSON property `capabilities`
3744+ # @return [Array<String>]
3745+ attr_accessor :capabilities
3746+
3747+ # Client configures the registry host client certificate and key.
3748+ # Corresponds to the JSON property `client`
3749+ # @return [Array<Google::Apis::ContainerV1::CertificateConfigPair>]
3750+ attr_accessor :client
3751+
3752+ # Specifies the maximum duration allowed for a connection attempt to complete. A
3753+ # shorter timeout helps reduce delays when falling back to the original registry
3754+ # if the mirror is unreachable. Maximum allowed value is 180s. If not set,
3755+ # containerd sets default 30s. The value should be a decimal number of seconds
3756+ # with an `s` suffix.
3757+ # Corresponds to the JSON property `dialTimeout`
3758+ # @return [String]
3759+ attr_accessor :dial_timeout
3760+
3761+ # Header configures the registry host headers.
3762+ # Corresponds to the JSON property `header`
3763+ # @return [Array<Google::Apis::ContainerV1::RegistryHeader>]
3764+ attr_accessor :header
3765+
3766+ # Host configures the registry host/mirror. It supports fully qualified domain
3767+ # names (FQDN) and IP addresses: Specifying port is supported. Wildcards are NOT
3768+ # supported. Examples: - my.customdomain.com - 10.0.1.2:5000
3769+ # Corresponds to the JSON property `host`
3770+ # @return [String]
3771+ attr_accessor :host
3772+
3773+ # OverridePath is used to indicate the host's API root endpoint is defined in
3774+ # the URL path rather than by the API specification. This may be used with non-
3775+ # compliant OCI registries which are missing the /v2 prefix. If not set,
3776+ # containerd sets default false.
3777+ # Corresponds to the JSON property `overridePath`
3778+ # @return [Boolean]
3779+ attr_accessor :override_path
3780+ alias_method :override_path? , :override_path
3781+
3782+ def initialize ( **args )
3783+ update! ( **args )
3784+ end
3785+
3786+ # Update properties of this object
3787+ def update! ( **args )
3788+ @ca = args [ :ca ] if args . key? ( :ca )
3789+ @capabilities = args [ :capabilities ] if args . key? ( :capabilities )
3790+ @client = args [ :client ] if args . key? ( :client )
3791+ @dial_timeout = args [ :dial_timeout ] if args . key? ( :dial_timeout )
3792+ @header = args [ :header ] if args . key? ( :header )
3793+ @host = args [ :host ] if args . key? ( :host )
3794+ @override_path = args [ :override_path ] if args . key? ( :override_path )
3795+ end
3796+ end
3797+
36743798 # RFC-2616: cache control support
36753799 class HttpCacheControlResponseHeader
36763800 include Google ::Apis ::Core ::Hashable
@@ -4478,7 +4602,10 @@ class LustreCsiDriverConfig
44784602 # port 6988. This serves as a workaround for a port conflict with the gke-
44794603 # metadata-server. This field is required ONLY under the following conditions: 1.
44804604 # The GKE node version is older than 1.33.2-gke.4655000. 2. You're connecting
4481- # to a Lustre instance that has the 'gke-support-enabled' flag.
4605+ # to a Lustre instance that has the 'gke-support-enabled' flag. Deprecated: This
4606+ # flag is no longer required as of GKE node version 1.33.2-gke.4655000, unless
4607+ # you are connecting to a Lustre instance that has the `gke-support-enabled`
4608+ # flag.
44824609 # Corresponds to the JSON property `enableLegacyLustrePort`
44834610 # @return [Boolean]
44844611 attr_accessor :enable_legacy_lustre_port
@@ -7119,6 +7246,62 @@ def update!(**args)
71197246 end
71207247 end
71217248
7249+ # RegistryHeader configures headers for the registry.
7250+ class RegistryHeader
7251+ include Google ::Apis ::Core ::Hashable
7252+
7253+ # Key configures the header key.
7254+ # Corresponds to the JSON property `key`
7255+ # @return [String]
7256+ attr_accessor :key
7257+
7258+ # Value configures the header value.
7259+ # Corresponds to the JSON property `value`
7260+ # @return [Array<String>]
7261+ attr_accessor :value
7262+
7263+ def initialize ( **args )
7264+ update! ( **args )
7265+ end
7266+
7267+ # Update properties of this object
7268+ def update! ( **args )
7269+ @key = args [ :key ] if args . key? ( :key )
7270+ @value = args [ :value ] if args . key? ( :value )
7271+ end
7272+ end
7273+
7274+ # RegistryHostConfig configures the top-level structure for a single containerd
7275+ # registry server's configuration, which represents one hosts.toml file on the
7276+ # node. It will override the same fqdns in PrivateRegistryAccessConfig.
7277+ class RegistryHostConfig
7278+ include Google ::Apis ::Core ::Hashable
7279+
7280+ # HostConfig configures a list of host-specific configurations for the server.
7281+ # Each server can have at most 10 host configurations.
7282+ # Corresponds to the JSON property `hosts`
7283+ # @return [Array<Google::Apis::ContainerV1::HostConfig>]
7284+ attr_accessor :hosts
7285+
7286+ # Defines the host name of the registry server, which will be used to create
7287+ # configuration file as /etc/containerd/hosts.d//hosts.toml. It supports fully
7288+ # qualified domain names (FQDN) and IP addresses: Specifying port is supported.
7289+ # Wildcards are NOT supported. Examples: - my.customdomain.com - 10.0.1.2:5000
7290+ # Corresponds to the JSON property `server`
7291+ # @return [String]
7292+ attr_accessor :server
7293+
7294+ def initialize ( **args )
7295+ update! ( **args )
7296+ end
7297+
7298+ # Update properties of this object
7299+ def update! ( **args )
7300+ @hosts = args [ :hosts ] if args . key? ( :hosts )
7301+ @server = args [ :server ] if args . key? ( :server )
7302+ end
7303+ end
7304+
71227305 # ReleaseChannel indicates which release channel a cluster is subscribed to.
71237306 # Release channels are arranged in order of risk. When a cluster is subscribed
71247307 # to a release channel, Google maintains both the master version and the node
0 commit comments