From 6a6f92839758d463f3c4b6d387d8c3c8bf90b958 Mon Sep 17 00:00:00 2001 From: Kaku Sawada Date: Tue, 21 Jan 2025 19:56:14 +0900 Subject: [PATCH] Update ConfigConnector CRDs to v1.127.0 --- .../alloydbcluster_v1alpha1.json | 11 + .../alloydbcluster_v1beta1.json | 11 + .../alloydbinstance_v1alpha1.json | 11 + .../alloydbinstance_v1beta1.json | 11 + .../apikeyskey_v1alpha1.json | 2 +- .../artifactregistryrepository_v1beta1.json | 2 +- .../bigquerydataset_v1beta1.json | 113 ++-- .../bigquerydatasetaccess_v1alpha1.json | 2 +- .../bigqueryjob_v1beta1.json | 2 +- .../bigquerytable_v1beta1.json | 6 +- ...ueryanalyticshubdataexchange_v1alpha1.json | 67 +- ...queryanalyticshubdataexchange_v1beta1.json | 177 ++++++ .../bigqueryanalyticshublisting_v1alpha1.json | 281 +++++++-- ...bigqueryconnectionconnection_v1alpha1.json | 554 +++++++++++----- .../bigqueryconnectionconnection_v1beta1.json | 595 ++++++++++++++++++ .../bigquerydatatransferconfig_v1alpha1.json | 389 +++++++++--- .../bigquerydatatransferconfig_v1beta1.json | 468 ++++++++++++++ .../bigtableinstance_v1beta1.json | 27 +- ...icatemanagerdnsauthorization_v1alpha1.json | 42 +- ...ficatemanagerdnsauthorization_v1beta1.json | 52 +- .../cloudbuildworkerpool_v1alpha1.json | 268 ++++++++ .../cloudbuildworkerpool_v1beta1.json | 22 +- .../cloudschedulerjob_v1beta1.json | 4 +- .../computebackendservice_v1beta1.json | 2 +- .../computefirewallpolicy_v1beta1.json | 2 +- .../computefirewallpolicyrule_v1beta1.json | 29 +- .../computeforwardingrule_v1beta1.json | 151 ++--- .../computenetworkfirewallpolicy_v1beta1.json | 2 +- .../computetargethttpsproxy_v1beta1.json | 4 +- .../computetargettcpproxy_v1beta1.json | 54 +- .../computeurlmap_v1beta1.json | 2 +- .../containercluster_v1beta1.json | 12 +- .../containernodepool_v1beta1.json | 8 +- .../containerattachedcluster_v1beta1.json | 132 ++-- .../datacatalogentry_v1alpha1.json | 4 +- .../dataflowflextemplatejob_v1beta1.json | 62 +- .../dataformrepository_v1alpha1.json | 254 +++++++- .../dataformrepository_v1beta1.json | 402 ++++++++++++ .../dialogflowcxflow_v1alpha1.json | 2 +- .../dialogflowcxpage_v1alpha1.json | 2 +- .../discoveryenginedatastore_v1alpha1.json | 253 ++++++++ .../dnsrecordset_v1beta1.json | 2 +- .../eventarctrigger_v1beta1.json | 2 +- .../firestoredatabase_v1alpha1.json | 178 ++++++ .../gkehubfeaturemembership_v1beta1.json | 8 +- .../healthcarefhirstore_v1alpha1.json | 2 +- .../iamauditconfig_v1beta1.json | 2 +- .../iampolicy_v1beta1.json | 2 +- .../kmsautokeyconfig_v1alpha1.json | 194 ++++++ .../kmskeyhandle_v1alpha1.json | 155 +++++ .../kmskeyring_v1beta1.json | 10 +- .../logginglogmetric_v1beta1.json | 2 +- .../memcacheinstance_v1beta1.json | 2 +- .../monitoringdashboard_v1beta1.json | 26 +- ...monitoringnotificationchannel_v1beta1.json | 2 +- ...ivityserviceconnectionpolicy_v1alpha1.json | 370 +++++++++++ ...workservicesedgecacheservice_v1alpha1.json | 8 +- ...networkservicesendpointpolicy_v1beta1.json | 2 +- .../networkservicesgateway_v1beta1.json | 2 +- .../networkservicesgrpcroute_v1beta1.json | 2 +- .../networkserviceshttproute_v1beta1.json | 4 +- .../networkservicestlsroute_v1beta1.json | 2 +- .../osconfigguestpolicy_v1beta1.json | 4 +- .../privatecacertificate_v1beta1.json | 2 +- ...privatecacertificateauthority_v1beta1.json | 2 +- ...egedaccessmanagerentitlement_v1alpha1.json | 405 ++++++++++++ ...legedaccessmanagerentitlement_v1beta1.json | 405 ++++++++++++ .../rediscluster_v1alpha1.json | 396 ++++++++++++ .../rediscluster_v1beta1.json | 396 ++++++++++++ .../redisinstance_v1beta1.json | 4 +- run.cnrm.cloud.google.com/runjob_v1beta1.json | 60 ++ .../secretmanagersecret_v1beta1.json | 89 +-- .../securesourcemanagerinstance_v1alpha1.json | 78 ++- ...ecuresourcemanagerrepository_v1alpha1.json | 248 ++++++++ .../spannerinstance_v1beta1.json | 38 +- .../sqlinstance_v1beta1.json | 190 ++++-- .../tpunode_v1alpha1.json | 2 +- ...rtexaifeaturestoreentitytype_v1alpha1.json | 2 +- .../workstationcluster_v1alpha1.json | 430 +++++++++++++ .../workstationcluster_v1beta1.json | 430 +++++++++++++ 80 files changed, 7836 insertions(+), 816 deletions(-) create mode 100644 bigqueryanalyticshub.cnrm.cloud.google.com/bigqueryanalyticshubdataexchange_v1beta1.json create mode 100644 bigqueryconnection.cnrm.cloud.google.com/bigqueryconnectionconnection_v1beta1.json create mode 100644 bigquerydatatransfer.cnrm.cloud.google.com/bigquerydatatransferconfig_v1beta1.json create mode 100644 cloudbuild.cnrm.cloud.google.com/cloudbuildworkerpool_v1alpha1.json create mode 100644 dataform.cnrm.cloud.google.com/dataformrepository_v1beta1.json create mode 100644 discoveryengine.cnrm.cloud.google.com/discoveryenginedatastore_v1alpha1.json create mode 100644 firestore.cnrm.cloud.google.com/firestoredatabase_v1alpha1.json create mode 100644 kms.cnrm.cloud.google.com/kmsautokeyconfig_v1alpha1.json create mode 100644 kms.cnrm.cloud.google.com/kmskeyhandle_v1alpha1.json create mode 100644 networkconnectivity.cnrm.cloud.google.com/networkconnectivityserviceconnectionpolicy_v1alpha1.json create mode 100644 privilegedaccessmanager.cnrm.cloud.google.com/privilegedaccessmanagerentitlement_v1alpha1.json create mode 100644 privilegedaccessmanager.cnrm.cloud.google.com/privilegedaccessmanagerentitlement_v1beta1.json create mode 100644 redis.cnrm.cloud.google.com/rediscluster_v1alpha1.json create mode 100644 redis.cnrm.cloud.google.com/rediscluster_v1beta1.json create mode 100644 securesourcemanager.cnrm.cloud.google.com/securesourcemanagerrepository_v1alpha1.json create mode 100644 workstations.cnrm.cloud.google.com/workstationcluster_v1alpha1.json create mode 100644 workstations.cnrm.cloud.google.com/workstationcluster_v1beta1.json diff --git a/alloydb.cnrm.cloud.google.com/alloydbcluster_v1alpha1.json b/alloydb.cnrm.cloud.google.com/alloydbcluster_v1alpha1.json index 6b407685..1e531e66 100644 --- a/alloydb.cnrm.cloud.google.com/alloydbcluster_v1alpha1.json +++ b/alloydb.cnrm.cloud.google.com/alloydbcluster_v1alpha1.json @@ -935,6 +935,17 @@ "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", "type": "integer" }, + "observedState": { + "description": "The observed state of the underlying GCP resource.", + "properties": { + "clusterType": { + "description": "The type of cluster. If not set, defaults to PRIMARY. Default value: \"PRIMARY\" Possible values: [\"PRIMARY\", \"SECONDARY\"].", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, "uid": { "description": "The system-generated UID of the resource.", "type": "string" diff --git a/alloydb.cnrm.cloud.google.com/alloydbcluster_v1beta1.json b/alloydb.cnrm.cloud.google.com/alloydbcluster_v1beta1.json index 6b407685..1e531e66 100644 --- a/alloydb.cnrm.cloud.google.com/alloydbcluster_v1beta1.json +++ b/alloydb.cnrm.cloud.google.com/alloydbcluster_v1beta1.json @@ -935,6 +935,17 @@ "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", "type": "integer" }, + "observedState": { + "description": "The observed state of the underlying GCP resource.", + "properties": { + "clusterType": { + "description": "The type of cluster. If not set, defaults to PRIMARY. Default value: \"PRIMARY\" Possible values: [\"PRIMARY\", \"SECONDARY\"].", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, "uid": { "description": "The system-generated UID of the resource.", "type": "string" diff --git a/alloydb.cnrm.cloud.google.com/alloydbinstance_v1alpha1.json b/alloydb.cnrm.cloud.google.com/alloydbinstance_v1alpha1.json index 18764452..d4431da4 100644 --- a/alloydb.cnrm.cloud.google.com/alloydbinstance_v1alpha1.json +++ b/alloydb.cnrm.cloud.google.com/alloydbinstance_v1alpha1.json @@ -182,6 +182,10 @@ }, "type": "array" }, + "enableOutboundPublicIp": { + "description": "Enabling outbound public ip for the instance.", + "type": "boolean" + }, "enablePublicIp": { "description": "Enabling public ip for the instance. If a user wishes to disable this, please also clear the list of the authorized external networks set on the same instance.", "type": "boolean" @@ -260,6 +264,13 @@ "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", "type": "integer" }, + "outboundPublicIpAddresses": { + "description": "The outbound public IP addresses for the instance. This is available ONLY when\nnetworkConfig.enableOutboundPublicIp is set to true. These IP addresses are used\nfor outbound connections.", + "items": { + "type": "string" + }, + "type": "array" + }, "publicIpAddress": { "description": "The public IP addresses for the Instance. This is available ONLY when networkConfig.enablePublicIp is set to true. This is the connection endpoint for an end-user application.", "type": "string" diff --git a/alloydb.cnrm.cloud.google.com/alloydbinstance_v1beta1.json b/alloydb.cnrm.cloud.google.com/alloydbinstance_v1beta1.json index 18764452..d4431da4 100644 --- a/alloydb.cnrm.cloud.google.com/alloydbinstance_v1beta1.json +++ b/alloydb.cnrm.cloud.google.com/alloydbinstance_v1beta1.json @@ -182,6 +182,10 @@ }, "type": "array" }, + "enableOutboundPublicIp": { + "description": "Enabling outbound public ip for the instance.", + "type": "boolean" + }, "enablePublicIp": { "description": "Enabling public ip for the instance. If a user wishes to disable this, please also clear the list of the authorized external networks set on the same instance.", "type": "boolean" @@ -260,6 +264,13 @@ "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", "type": "integer" }, + "outboundPublicIpAddresses": { + "description": "The outbound public IP addresses for the instance. This is available ONLY when\nnetworkConfig.enableOutboundPublicIp is set to true. These IP addresses are used\nfor outbound connections.", + "items": { + "type": "string" + }, + "type": "array" + }, "publicIpAddress": { "description": "The public IP addresses for the Instance. This is available ONLY when networkConfig.enablePublicIp is set to true. This is the connection endpoint for an end-user application.", "type": "string" diff --git a/apikeys.cnrm.cloud.google.com/apikeyskey_v1alpha1.json b/apikeys.cnrm.cloud.google.com/apikeyskey_v1alpha1.json index 20da803c..6cfa1fe4 100644 --- a/apikeys.cnrm.cloud.google.com/apikeyskey_v1alpha1.json +++ b/apikeys.cnrm.cloud.google.com/apikeyskey_v1alpha1.json @@ -53,7 +53,7 @@ ], "properties": { "external": { - "description": "The `projectID` field of a project, when not managed by KCC.", + "description": "The `projectID` field of a project, when not managed by Config Connector.", "type": "string" }, "kind": { diff --git a/artifactregistry.cnrm.cloud.google.com/artifactregistryrepository_v1beta1.json b/artifactregistry.cnrm.cloud.google.com/artifactregistryrepository_v1beta1.json index 55a60913..ac8425fe 100644 --- a/artifactregistry.cnrm.cloud.google.com/artifactregistryrepository_v1beta1.json +++ b/artifactregistry.cnrm.cloud.google.com/artifactregistryrepository_v1beta1.json @@ -111,7 +111,7 @@ "additionalProperties": false }, "format": { - "description": "Immutable. The format of packages that are stored in the repository. Supported formats\ncan be found [here](https://cloud.google.com/artifact-registry/docs/supported-formats).\nYou can only create alpha formats if you are a member of the\n[alpha user group](https://cloud.google.com/artifact-registry/docs/supported-formats#alpha-access).", + "description": "Immutable. The format of packages that are stored in the repository. See\n[Supported formats](https://cloud.google.com/artifact-registry/docs/supported-formats).\nYou can only create alpha formats if you are a member of the\n[alpha user group](https://cloud.google.com/artifact-registry/docs/supported-formats#alpha-access).", "type": "string" }, "kmsKeyRef": { diff --git a/bigquery.cnrm.cloud.google.com/bigquerydataset_v1beta1.json b/bigquery.cnrm.cloud.google.com/bigquerydataset_v1beta1.json index 74883336..5e2ae466 100644 --- a/bigquery.cnrm.cloud.google.com/bigquerydataset_v1beta1.json +++ b/bigquery.cnrm.cloud.google.com/bigquerydataset_v1beta1.json @@ -1,34 +1,36 @@ { + "description": "BigQueryDataset is the Schema for the BigQueryDataset API", "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/api-conventions.md#resources", + "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/api-conventions.md#types-kinds", + "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": "BigQueryDatasetSpec defines the desired state of BigQueryDataset", "properties": { "access": { "description": "An array of objects that define dataset access for one or more entities.", "items": { "properties": { "dataset": { - "description": "Grants all resources of particular types in a particular dataset read access to the current dataset.", + "description": "[Pick one] A grant authorizing all resources of a particular type in a particular dataset access to this dataset. Only views are supported for now. The role field is not required when this field is set. If that dataset is deleted and re-created, its access needs to be granted again via an update operation.", "properties": { "dataset": { "description": "The dataset this entry applies to.", "properties": { "datasetId": { - "description": "The ID of the dataset containing this table.", + "description": "A unique Id for this dataset, without the project name. The Id must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.", "type": "string" }, "projectId": { - "description": "The ID of the project containing this table.", + "description": "The ID of the project containing this dataset.", "type": "string" } }, @@ -40,7 +42,7 @@ "additionalProperties": false }, "targetTypes": { - "description": "Which resources in the dataset this entry applies to. Currently, only views are supported,\nbut additional target types may be added in the future. Possible values: VIEWS.", + "description": "Which resources in the dataset this entry applies to. Currently, only views are supported, but additional target types may be added in the future.", "items": { "type": "string" }, @@ -55,34 +57,34 @@ "additionalProperties": false }, "domain": { - "description": "A domain to grant access to. Any users signed in with the\ndomain specified will be granted the specified access.", + "description": "[Pick one] A domain to grant access to. Any users signed in with the domain specified will be granted the specified access. Example: \"example.com\". Maps to IAM policy member \"domain:DOMAIN\".", "type": "string" }, "groupByEmail": { - "description": "An email address of a Google Group to grant access to.", + "description": "[Pick one] An email address of a Google Group to grant access to. Maps to IAM policy member \"group:GROUP\".", "type": "string" }, "iamMember": { - "description": "Some other type of member that appears in the IAM Policy but isn't a user,\ngroup, domain, or special group. For example: 'allUsers'.", + "description": "[Pick one] Some other type of member that appears in the IAM Policy but isn't a user, group, domain, or special group.", "type": "string" }, "role": { - "description": "Describes the rights granted to the user specified by the other\nmember of the access object. Basic, predefined, and custom roles\nare supported. Predefined roles that have equivalent basic roles\nare swapped by the API to their basic counterparts. See\n[official docs](https://cloud.google.com/bigquery/docs/access-control).", + "description": "An IAM role ID that should be granted to the user, group,\n or domain specified in this access entry.\n The following legacy mappings will be applied:\n\n * `OWNER`: `roles/bigquery.dataOwner`\n * `WRITER`: `roles/bigquery.dataEditor`\n * `READER`: `roles/bigquery.dataViewer`\n\n This field will accept any of the above formats, but will return only\n the legacy format. For example, if you set this field to\n \"roles/bigquery.dataOwner\", it will be returned back as \"OWNER\".", "type": "string" }, "routine": { - "description": "A routine from a different dataset to grant access to. Queries\nexecuted against that routine will have read access to tables in\nthis dataset. The role field is not required when this field is\nset. If that routine is updated by any user, access to the routine\nneeds to be granted again via an update operation.", + "description": "[Pick one] A routine from a different dataset to grant access to. Queries executed against that routine will have read access to views/tables/routines in this dataset. Only UDF is supported for now. The role field is not required when this field is set. If that routine is updated by any user, access to the routine needs to be granted again via an update operation.", "properties": { "datasetId": { - "description": "The ID of the dataset containing this table.", + "description": "The ID of the dataset containing this routine.", "type": "string" }, "projectId": { - "description": "The ID of the project containing this table.", + "description": "The ID of the project containing this routine.", "type": "string" }, "routineId": { - "description": "The ID of the routine. The ID must contain only letters (a-z,\nA-Z), numbers (0-9), or underscores (_). The maximum length\nis 256 characters.", + "description": "The Id of the routine. The Id must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 256 characters.", "type": "string" } }, @@ -95,15 +97,15 @@ "additionalProperties": false }, "specialGroup": { - "description": "A special group to grant access to. Possible values include:\n\n\n* 'projectOwners': Owners of the enclosing project.\n\n\n* 'projectReaders': Readers of the enclosing project.\n\n\n* 'projectWriters': Writers of the enclosing project.\n\n\n* 'allAuthenticatedUsers': All authenticated BigQuery users.", + "description": "[Pick one] A special group to grant access to. Possible values include:\n\n * projectOwners: Owners of the enclosing project.\n * projectReaders: Readers of the enclosing project.\n * projectWriters: Writers of the enclosing project.\n * allAuthenticatedUsers: All authenticated BigQuery users.\n\n Maps to similarly-named IAM members.", "type": "string" }, "userByEmail": { - "description": "An email address of a user to grant access to. For example:\nfred@example.com.", + "description": "[Pick one] An email address of a user to grant access to. For example: fred@example.com. Maps to IAM policy member \"user:EMAIL\" or \"serviceAccount:EMAIL\".", "type": "string" }, "view": { - "description": "A view from a different dataset to grant access to. Queries\nexecuted against that view will have read access to tables in\nthis dataset. The role field is not required when this field is\nset. If that view is updated by any user, access to the view\nneeds to be granted again via an update operation.", + "description": "[Pick one] A view from a different dataset to grant access to. Queries executed against that view will have read access to views/tables/routines in this dataset. The role field is not required when this field is set. If that view is updated by any user, access to the view needs to be granted again via an update operation.", "properties": { "datasetId": { "description": "The ID of the dataset containing this table.", @@ -114,7 +116,7 @@ "type": "string" }, "tableId": { - "description": "The ID of the table. The ID must contain only letters (a-z,\nA-Z), numbers (0-9), or underscores (_). The maximum length\nis 1,024 characters.", + "description": "The Id of the table. The Id can contain Unicode characters in category L (letter), M (mark), N (number), Pc (connector, including underscore), Pd (dash), and Zs (space). For more information, see [General Category](https://wikipedia.org/wiki/Unicode_character_property#General_Category). The maximum length is 1,024 characters. Certain operations allow suffixing of the table Id with a partition decorator, such as `sample_table$20190123`.", "type": "string" } }, @@ -133,14 +135,14 @@ "type": "array" }, "defaultCollation": { - "description": "Defines the default collation specification of future tables created\nin the dataset. If a table is created in this dataset without table-level\ndefault collation, then the table inherits the dataset default collation,\nwhich is applied to the string fields that do not have explicit collation\nspecified. A change to this field affects only tables created afterwards,\nand does not alter the existing tables.\n\nThe following values are supported:\n- 'und:ci': undetermined locale, case insensitive.\n- '': empty string. Default to case-sensitive behavior.", + "description": "Optional. Defines the default collation specification of future tables\n created in the dataset. If a table is created in this dataset without\n table-level default collation, then the table inherits the dataset default\n collation, which is applied to the string fields that do not have explicit\n collation specified. A change to this field affects only tables created\n afterwards, and does not alter the existing tables.\n The following values are supported:\n\n * 'und:ci': undetermined locale, case-insensitive.\n * '': empty string. Default to case-sensitive behavior.", "type": "string" }, "defaultEncryptionConfiguration": { - "description": "The default encryption key for all tables in the dataset. Once this property is set,\nall newly-created partitioned tables in the dataset will have encryption key set to\nthis value, unless table creation request (or query) overrides the key.", + "description": "The default encryption key for all tables in the dataset. After this property is set, the encryption key of all newly-created tables in the dataset is set to this value unless the table creation request or query explicitly overrides the key.", "properties": { "kmsKeyRef": { - "description": "Describes the Cloud KMS encryption key that will be used to protect destination\nBigQuery table. The BigQuery Service Account associated with your project requires\naccess to this encryption key.", + "description": "Optional. Describes the Cloud KMS encryption key that will be used to protect destination BigQuery table. The BigQuery Service Account associated with your project requires access to this encryption key.", "oneOf": [ { "not": { @@ -174,15 +176,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `KMSCryptoKey` resource.", + "description": "A reference to an externally managed KMSCryptoKey. Should be in the format `projects/[kms_project_id]/locations/[region]/keyRings/[key_ring_id]/cryptoKeys/[key]`.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` of a `KMSCryptoKey` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` of a `KMSCryptoKey` resource.", "type": "string" } }, @@ -190,42 +192,41 @@ "additionalProperties": false } }, - "required": [ - "kmsKeyRef" - ], "type": "object", "additionalProperties": false }, "defaultPartitionExpirationMs": { - "description": "The default partition expiration for all partitioned tables in\nthe dataset, in milliseconds.\n\n\nOnce this property is set, all newly-created partitioned tables in\nthe dataset will have an 'expirationMs' property in the 'timePartitioning'\nsettings set to this value, and changing the value will only\naffect new tables, not existing ones. The storage in a partition will\nhave an expiration time of its partition time plus this value.\nSetting this property overrides the use of 'defaultTableExpirationMs'\nfor partitioned tables: only one of 'defaultTableExpirationMs' and\n'defaultPartitionExpirationMs' will be used for any new partitioned\ntable. If you provide an explicit 'timePartitioning.expirationMs' when\ncreating or updating a partitioned table, that value takes precedence\nover the default partition expiration time indicated by this property.", + "description": "This default partition expiration, expressed in milliseconds.\n\n When new time-partitioned tables are created in a dataset where this\n property is set, the table will inherit this value, propagated as the\n `TimePartitioning.expirationMs` property on the new table. If you set\n `TimePartitioning.expirationMs` explicitly when creating a table,\n the `defaultPartitionExpirationMs` of the containing dataset is ignored.\n\n When creating a partitioned table, if `defaultPartitionExpirationMs`\n is set, the `defaultTableExpirationMs` value is ignored and the table\n will not be inherit a table expiration deadline.", + "format": "int64", "type": "integer" }, "defaultTableExpirationMs": { - "description": "The default lifetime of all tables in the dataset, in milliseconds.\nThe minimum value is 3600000 milliseconds (one hour).\n\n\nOnce this property is set, all newly-created tables in the dataset\nwill have an 'expirationTime' property set to the creation time plus\nthe value in this property, and changing the value will only affect\nnew tables, not existing ones. When the 'expirationTime' for a given\ntable is reached, that table will be deleted automatically.\nIf a table's 'expirationTime' is modified or removed before the\ntable expires, or if you provide an explicit 'expirationTime' when\ncreating a table, that value takes precedence over the default\nexpiration time indicated by this property.", + "description": "Optional. The default lifetime of all tables in the dataset, in milliseconds. The minimum lifetime value is 3600000 milliseconds (one hour). To clear an existing default expiration with a PATCH request, set to 0. Once this property is set, all newly-created tables in the dataset will have an expirationTime property set to the creation time plus the value in this property, and changing the value will only affect new tables, not existing ones. When the expirationTime for a given table is reached, that table will be deleted automatically. If a table's expirationTime is modified or removed before the table expires, or if you provide an explicit expirationTime when creating a table, that value takes precedence over the default expiration time indicated by this property.", + "format": "int64", "type": "integer" }, "description": { - "description": "A user-friendly description of the dataset.", + "description": "Optional. A user-friendly description of the dataset.", "type": "string" }, "friendlyName": { - "description": "A descriptive name for the dataset.", + "description": "Optional. A descriptive name for the dataset.", "type": "string" }, "isCaseInsensitive": { - "description": "TRUE if the dataset and its table names are case-insensitive, otherwise FALSE.\nBy default, this is FALSE, which means the dataset and its table names are\ncase-sensitive. This field does not affect routine references.", + "description": "Optional. TRUE if the dataset and its table names are case-insensitive, otherwise FALSE. By default, this is FALSE, which means the dataset and its table names are case-sensitive. This field does not affect routine references.", "type": "boolean" }, "location": { - "description": "Immutable. The geographic location where the dataset should reside.\nSee [official docs](https://cloud.google.com/bigquery/docs/dataset-locations).\n\n\nThere are two types of locations, regional or multi-regional. A regional\nlocation is a specific geographic place, such as Tokyo, and a multi-regional\nlocation is a large geographic area, such as the United States, that\ncontains at least two geographic places.\n\n\nThe default value is multi-regional location 'US'.\nChanging this forces a new resource to be created.", + "description": "Optional. The geographic location where the dataset should reside. See https://cloud.google.com/bigquery/docs/locations for supported locations.", "type": "string" }, "maxTimeTravelHours": { - "description": "Defines the time travel window in hours. The value can be from 48 to 168 hours (2 to 7 days).", + "description": "Optional. Defines the time travel window in hours. The value can be from 48 to 168 hours (2 to 7 days). The default value is 168 hours if this is not set.", "type": "string" }, "projectRef": { - "description": "The project that this resource belongs to.", + "description": " Optional. The project that this resource belongs to.", "oneOf": [ { "not": { @@ -259,15 +260,19 @@ ], "properties": { "external": { - "description": "Allowed value: The `name` field of a `Project` resource.", + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `Project` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `Project` resource.", "type": "string" } }, @@ -275,11 +280,11 @@ "additionalProperties": false }, "resourceID": { - "description": "Immutable. Optional. The datasetId of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default.", + "description": "The BigQueryDataset name. If not given, the metadata.name will be used.", "type": "string" }, "storageBillingModel": { - "description": "Specifies the storage billing model for the dataset.\nSet this flag value to LOGICAL to use logical bytes for storage billing,\nor to PHYSICAL to use physical bytes instead.\n\nLOGICAL is the default if this flag isn't specified.", + "description": "Optional. Updates storage_billing_model for the dataset.", "type": "string" } }, @@ -287,9 +292,10 @@ "additionalProperties": false }, "status": { + "description": "BigQueryDatasetStatus defines the config connector machine state of BigQueryDataset", "properties": { "conditions": { - "description": "Conditions represent the latest available observation of the resource's current state.", + "description": "Conditions represent the latest available observations of the object's current state.", "items": { "properties": { "lastTransitionTime": { @@ -319,22 +325,41 @@ "type": "array" }, "creationTime": { - "description": "The time when this dataset was created, in milliseconds since the\nepoch.", + "description": "Output only. The time when this dataset was created, in milliseconds since the epoch.", + "format": "int64", "type": "integer" }, "etag": { - "description": "A hash of the resource.", + "description": "Output only. A hash of the resource.", + "type": "string" + }, + "externalRef": { + "description": "A unique specifier for the BigQueryAnalyticsHubDataExchangeListing resource in GCP.", "type": "string" }, "lastModifiedTime": { - "description": "The date when this dataset or any of its tables was last modified, in\nmilliseconds since the epoch.", + "description": "Output only. The date when this dataset was last modified, in milliseconds since the epoch.", + "format": "int64", "type": "integer" }, "observedGeneration": { "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", "type": "integer" }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "location": { + "description": "Optional. If the location is not specified in the spec, the GCP server defaults to a location and will be captured here.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, "selfLink": { + "description": "Output only. A URL that can be used to access the resource again. You can use this URL in Get or Update requests to the resource.", "type": "string" } }, diff --git a/bigquery.cnrm.cloud.google.com/bigquerydatasetaccess_v1alpha1.json b/bigquery.cnrm.cloud.google.com/bigquerydatasetaccess_v1alpha1.json index 3c2c01eb..194260d9 100644 --- a/bigquery.cnrm.cloud.google.com/bigquerydatasetaccess_v1alpha1.json +++ b/bigquery.cnrm.cloud.google.com/bigquerydatasetaccess_v1alpha1.json @@ -167,7 +167,7 @@ "status": { "properties": { "apiUpdatedMember": { - "description": "If true, represents that that the iam_member in the config was translated to a different member type by the API, and is stored in state as a different member type.", + "description": "If true, represents that the iam_member in the config was translated to a different member type by the API, and is stored in state as a different member type.", "type": "boolean" }, "conditions": { diff --git a/bigquery.cnrm.cloud.google.com/bigqueryjob_v1beta1.json b/bigquery.cnrm.cloud.google.com/bigqueryjob_v1beta1.json index 245d3f67..4540a0cb 100644 --- a/bigquery.cnrm.cloud.google.com/bigqueryjob_v1beta1.json +++ b/bigquery.cnrm.cloud.google.com/bigqueryjob_v1beta1.json @@ -502,7 +502,7 @@ "additionalProperties": false }, "projectionFields": { - "description": "Immutable. If sourceFormat is set to \"DATASTORE_BACKUP\", indicates which entity properties to load into BigQuery from a Cloud Datastore backup.\nProperty names are case sensitive and must be top-level properties. If no properties are specified, BigQuery loads all properties.\nIf any named property isn't found in the Cloud Datastore backup, an invalid error is returned in the job result.", + "description": "Immutable. If sourceFormat is set to \"DATASTORE_BACKUP\", indicates which entity properties to load into BigQuery from a Cloud Datastore backup.\nProperty names are case-sensitive and must be top-level properties. If no properties are specified, BigQuery loads all properties.\nIf any named property isn't found in the Cloud Datastore backup, an invalid error is returned in the job result.", "items": { "type": "string" }, diff --git a/bigquery.cnrm.cloud.google.com/bigquerytable_v1beta1.json b/bigquery.cnrm.cloud.google.com/bigquerytable_v1beta1.json index ac191204..266fbbcc 100644 --- a/bigquery.cnrm.cloud.google.com/bigquerytable_v1beta1.json +++ b/bigquery.cnrm.cloud.google.com/bigquerytable_v1beta1.json @@ -382,6 +382,10 @@ "type": "object", "additionalProperties": false }, + "requirePartitionFilter": { + "description": "If set to true, queries over this table require a partition filter that can be used for partition elimination to be specified.", + "type": "boolean" + }, "resourceID": { "description": "Immutable. Optional. The tableId of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default.", "type": "string" @@ -487,7 +491,7 @@ "type": "string" }, "requirePartitionFilter": { - "description": "If set to true, queries over this table require a partition filter that can be used for partition elimination to be specified.", + "description": "DEPRECATED. This field is deprecated; please use the top level field with the same name instead. If set to true, queries over this table require a partition filter that can be used for partition elimination to be specified.", "type": "boolean" }, "type": { diff --git a/bigqueryanalyticshub.cnrm.cloud.google.com/bigqueryanalyticshubdataexchange_v1alpha1.json b/bigqueryanalyticshub.cnrm.cloud.google.com/bigqueryanalyticshubdataexchange_v1alpha1.json index 24b39b09..72e80232 100644 --- a/bigqueryanalyticshub.cnrm.cloud.google.com/bigqueryanalyticshubdataexchange_v1alpha1.json +++ b/bigqueryanalyticshub.cnrm.cloud.google.com/bigqueryanalyticshubdataexchange_v1alpha1.json @@ -1,32 +1,34 @@ { + "description": "BigQueryAnalyticsHubDataExchange is the Schema for the BigQueryAnalyticsHubDataExchange API", "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/api-conventions.md#resources", + "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/api-conventions.md#types-kinds", + "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": "BigQueryAnalyticsHubDataExchangeSpec defines the desired state of BigQueryAnalyticsHubDataExchange", "properties": { "description": { - "description": "Description of the data exchange.", + "description": "Optional. Description of the data exchange. The description must not contain Unicode non-characters as well as C0 and C1 control codes except tabs (HT), new lines (LF), carriage returns (CR), and page breaks (FF). Default value is an empty string. Max length: 2000 bytes.", "type": "string" }, - "displayName": { - "description": "Human-readable display name of the data exchange. The display name must contain only Unicode letters, numbers (0-9), underscores (_), dashes (-), spaces ( ), and must not start or end with spaces.", + "discoveryType": { + "description": "Optional. Type of discovery on the discovery page for all the listings under this exchange. Updating this field also updates (overwrites) the discovery_type field for all the listings under this exchange.", "type": "string" }, - "documentation": { - "description": "Documentation describing the data exchange.", + "displayName": { + "description": "Required. Human-readable display name of the data exchange. The display name must contain only Unicode letters, numbers (0-9), underscores (_), dashes (-), spaces ( ), ampersands (&) and must not start or end with spaces. Default value is an empty string. Max length: 63 bytes.", "type": "string" }, - "icon": { - "description": "Base64 encoded image representing the data exchange.", + "documentation": { + "description": "Optional. Documentation describing the data exchange.", "type": "string" }, "location": { @@ -34,7 +36,7 @@ "type": "string" }, "primaryContact": { - "description": "Email or URL of the primary point of contact of the data exchange.", + "description": "Optional. Email or URL of the primary point of contact of the data exchange. Max Length: 1000 bytes.", "type": "string" }, "projectRef": { @@ -72,15 +74,19 @@ ], "properties": { "external": { - "description": "Allowed value: The `name` field of a `Project` resource.", + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `Project` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `Project` resource.", "type": "string" } }, @@ -88,12 +94,17 @@ "additionalProperties": false }, "resourceID": { - "description": "Immutable. Optional. The dataExchangeId of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default.", - "type": "string" + "description": "Immutable. The BigQueryAnalyticsHubDataExchange name. If not given, the metadata.name will be used.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "ResourceID field is immutable", + "rule": "self == oldSelf" + } + ] } }, "required": [ - "displayName", "location", "projectRef" ], @@ -101,9 +112,10 @@ "additionalProperties": false }, "status": { + "description": "BigQueryAnalyticsHubDataExchangeStatus defines the config connector machine state of BigQueryAnalyticsHubDataExchange", "properties": { "conditions": { - "description": "Conditions represent the latest available observation of the resource's current state.", + "description": "Conditions represent the latest available observations of the object's current state.", "items": { "properties": { "lastTransitionTime": { @@ -132,17 +144,26 @@ }, "type": "array" }, - "listingCount": { - "description": "Number of listings contained in the data exchange.", - "type": "integer" - }, - "name": { - "description": "The resource name of the data exchange, for example:\n\"projects/myproject/locations/US/dataExchanges/123\".", + "externalRef": { + "description": "A unique specifier for the BigQueryAnalyticsHubDataExchange resource in GCP.", "type": "string" }, "observedGeneration": { "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "listingCount": { + "description": "Number of listings contained in the data exchange.", + "format": "int64", + "type": "integer" + } + }, + "type": "object", + "additionalProperties": false } }, "type": "object", diff --git a/bigqueryanalyticshub.cnrm.cloud.google.com/bigqueryanalyticshubdataexchange_v1beta1.json b/bigqueryanalyticshub.cnrm.cloud.google.com/bigqueryanalyticshubdataexchange_v1beta1.json new file mode 100644 index 00000000..72e80232 --- /dev/null +++ b/bigqueryanalyticshub.cnrm.cloud.google.com/bigqueryanalyticshubdataexchange_v1beta1.json @@ -0,0 +1,177 @@ +{ + "description": "BigQueryAnalyticsHubDataExchange is the Schema for the BigQueryAnalyticsHubDataExchange API", + "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": "BigQueryAnalyticsHubDataExchangeSpec defines the desired state of BigQueryAnalyticsHubDataExchange", + "properties": { + "description": { + "description": "Optional. Description of the data exchange. The description must not contain Unicode non-characters as well as C0 and C1 control codes except tabs (HT), new lines (LF), carriage returns (CR), and page breaks (FF). Default value is an empty string. Max length: 2000 bytes.", + "type": "string" + }, + "discoveryType": { + "description": "Optional. Type of discovery on the discovery page for all the listings under this exchange. Updating this field also updates (overwrites) the discovery_type field for all the listings under this exchange.", + "type": "string" + }, + "displayName": { + "description": "Required. Human-readable display name of the data exchange. The display name must contain only Unicode letters, numbers (0-9), underscores (_), dashes (-), spaces ( ), ampersands (&) and must not start or end with spaces. Default value is an empty string. Max length: 63 bytes.", + "type": "string" + }, + "documentation": { + "description": "Optional. Documentation describing the data exchange.", + "type": "string" + }, + "location": { + "description": "Immutable. The name of the location this data exchange.", + "type": "string" + }, + "primaryContact": { + "description": "Optional. Email or URL of the primary point of contact of the data exchange. Max Length: 1000 bytes.", + "type": "string" + }, + "projectRef": { + "description": "The project that this resource belongs to.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `Project` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `Project` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "resourceID": { + "description": "Immutable. The BigQueryAnalyticsHubDataExchange name. If not given, the metadata.name will be used.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "ResourceID field is immutable", + "rule": "self == oldSelf" + } + ] + } + }, + "required": [ + "location", + "projectRef" + ], + "type": "object", + "additionalProperties": false + }, + "status": { + "description": "BigQueryAnalyticsHubDataExchangeStatus defines the config connector machine state of BigQueryAnalyticsHubDataExchange", + "properties": { + "conditions": { + "description": "Conditions represent the latest available observations of the object's current state.", + "items": { + "properties": { + "lastTransitionTime": { + "description": "Last time the condition transitioned from one status to another.", + "type": "string" + }, + "message": { + "description": "Human-readable message indicating details about last transition.", + "type": "string" + }, + "reason": { + "description": "Unique, one-word, CamelCase reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Status is the status of the condition. Can be True, False, Unknown.", + "type": "string" + }, + "type": { + "description": "Type is the type of the condition.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "externalRef": { + "description": "A unique specifier for the BigQueryAnalyticsHubDataExchange resource in GCP.", + "type": "string" + }, + "observedGeneration": { + "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", + "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "listingCount": { + "description": "Number of listings contained in the data exchange.", + "format": "int64", + "type": "integer" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "spec" + ], + "type": "object" +} diff --git a/bigqueryanalyticshub.cnrm.cloud.google.com/bigqueryanalyticshublisting_v1alpha1.json b/bigqueryanalyticshub.cnrm.cloud.google.com/bigqueryanalyticshublisting_v1alpha1.json index e1d33299..282b19b4 100644 --- a/bigqueryanalyticshub.cnrm.cloud.google.com/bigqueryanalyticshublisting_v1alpha1.json +++ b/bigqueryanalyticshub.cnrm.cloud.google.com/bigqueryanalyticshublisting_v1alpha1.json @@ -1,87 +1,117 @@ { + "description": "BigQueryAnalyticsHubListing is the Schema for the BigQueryAnalyticsHubListing API", "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/api-conventions.md#resources", + "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/api-conventions.md#types-kinds", + "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": "BigQueryAnalyticsHubListingSpec defines the desired state of BigQueryAnalyticsHubDataExchangeListing", "properties": { - "bigqueryDataset": { - "description": "Shared dataset i.e. BigQuery dataset source.", - "properties": { - "dataset": { - "description": "Resource name of the dataset source for this listing. e.g. projects/myproject/datasets/123.", - "type": "string" - } - }, - "required": [ - "dataset" - ], - "type": "object", - "additionalProperties": false - }, "categories": { - "description": "Categories of the listing. Up to two categories are allowed.", + "description": "Optional. Categories of the listing. Up to two categories are allowed.", "items": { "type": "string" }, "type": "array" }, - "dataExchangeId": { - "description": "Immutable. The ID of the data exchange. Must contain only Unicode letters, numbers (0-9), underscores (_). Should not use characters that require URL-escaping, or characters outside of ASCII, spaces.", - "type": "string" + "dataExchangeRef": { + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The DataExchange selfLink, when not managed by Config Connector.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `DataExchange` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `DataExchange` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false }, "dataProvider": { - "description": "Details of the data provider who owns the source data.", + "description": "Optional. Details of the data provider who owns the source data.", "properties": { "name": { - "description": "Name of the data provider.", + "description": "Optional. Name of the data provider.", "type": "string" }, "primaryContact": { - "description": "Email or URL of the data provider.", + "description": "Optional. Email or URL of the data provider. Max Length: 1000 bytes.", "type": "string" } }, - "required": [ - "name" - ], "type": "object", "additionalProperties": false }, "description": { - "description": "Short description of the listing. The description must not contain Unicode non-characters and C0 and C1 control codes except tabs (HT), new lines (LF), carriage returns (CR), and page breaks (FF).", + "description": "Optional. Short description of the listing. The description must contain only Unicode characters or tabs (HT), new lines (LF), carriage returns (CR), and page breaks (FF). Default value is an empty string. Max length: 2000 bytes.", "type": "string" }, - "displayName": { - "description": "Human-readable display name of the listing. The display name must contain only Unicode letters, numbers (0-9), underscores (_), dashes (-), spaces ( ), ampersands (&) and can't start or end with spaces.", + "discoveryType": { + "description": "Optional. Type of discovery of the listing on the discovery page.", "type": "string" }, - "documentation": { - "description": "Documentation describing the listing.", + "displayName": { + "description": "Required. Human-readable display name of the listing. The display name must contain only Unicode letters, numbers (0-9), underscores (_), dashes (-), spaces ( ), ampersands (&) and can't start or end with spaces. Default value is an empty string. Max length: 63 bytes.", "type": "string" }, - "icon": { - "description": "Base64 encoded image representing the listing.", + "documentation": { + "description": "Optional. Documentation describing the listing.", "type": "string" }, "location": { - "description": "Immutable. The name of the location this data exchange listing.", + "description": "Immutable. The name of the location this data exchange.", "type": "string" }, "primaryContact": { - "description": "Email or URL of the primary point of contact of the listing.", + "description": "Optional. Email or URL of the primary point of contact of the listing. Max Length: 1000 bytes.", "type": "string" }, "projectRef": { - "description": "The project that this resource belongs to.", + "description": "The Project that this resource belongs to.", "oneOf": [ { "not": { @@ -115,15 +145,19 @@ ], "properties": { "external": { - "description": "Allowed value: The `name` field of a `Project` resource.", + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `Project` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `Project` resource.", "type": "string" } }, @@ -131,46 +165,170 @@ "additionalProperties": false }, "publisher": { - "description": "Details of the publisher who owns the listing and who can share the source data.", + "description": "Optional. Details of the publisher who owns the listing and who can share the source data.", "properties": { "name": { - "description": "Name of the listing publisher.", + "description": "Optional. Name of the listing publisher.", "type": "string" }, "primaryContact": { - "description": "Email or URL of the listing publisher.", + "description": "Optional. Email or URL of the listing publisher. Max Length: 1000 bytes.", "type": "string" } }, - "required": [ - "name" - ], "type": "object", "additionalProperties": false }, "requestAccess": { - "description": "Email or URL of the request access of the listing. Subscribers can use this reference to request access.", + "description": "Optional. Email or URL of the request access of the listing. Subscribers can use this reference to request access. Max Length: 1000 bytes.", "type": "string" }, "resourceID": { - "description": "Immutable. Optional. The listingId of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default.", - "type": "string" + "description": "Immutable. The BigQueryAnalyticsHubDataExchangeListing name. If not given, the metadata.name will be used.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "ResourceID field is immutable", + "rule": "self == oldSelf" + } + ] + }, + "source": { + "properties": { + "bigQueryDatasetSource": { + "description": "One of the following fields must be set.", + "properties": { + "datasetRef": { + "description": "Resource name of the dataset source for this listing. e.g. `projects/myproject/datasets/123`", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "If provided must be in the format `projects/[project_id]/datasets/[dataset_id]`.", + "type": "string" + }, + "name": { + "description": "The `metadata.name` field of a `BigQueryDataset` resource.", + "type": "string" + }, + "namespace": { + "description": "The `metadata.namespace` field of a `BigQueryDataset` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "restrictedExportPolicy": { + "description": "Optional. If set, restricted export policy will be propagated and enforced on the linked dataset.", + "properties": { + "enabled": { + "description": "Optional. If true, enable restricted export.", + "properties": { + "value": { + "description": "The bool value.", + "type": "boolean" + } + }, + "type": "object", + "additionalProperties": false + }, + "restrictDirectTableAccess": { + "description": "Optional. If true, restrict direct table access (read api/tabledata.list) on linked table.", + "properties": { + "value": { + "description": "The bool value.", + "type": "boolean" + } + }, + "type": "object", + "additionalProperties": false + }, + "restrictQueryResult": { + "description": "Optional. If true, restrict export of query result derived from restricted linked dataset table.", + "properties": { + "value": { + "description": "The bool value.", + "type": "boolean" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + }, + "selectedResources": { + "description": "Optional. Resources in this dataset that are selectively shared. If this field is empty, then the entire dataset (all resources) are shared. This field is only valid for data clean room exchanges.", + "items": { + "properties": { + "table": { + "description": "Optional. Format: For table: `projects/{projectId}/datasets/{datasetId}/tables/{tableId}` Example:\"projects/test_project/datasets/test_dataset/tables/test_table\"", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + } + }, + "required": [ + "datasetRef" + ], + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false } }, "required": [ - "bigqueryDataset", - "dataExchangeId", + "dataExchangeRef", "displayName", "location", - "projectRef" + "projectRef", + "source" ], "type": "object", "additionalProperties": false }, "status": { + "description": "BigQueryAnalyticsHubListingStatus defines the config connector machine state of BigQueryAnalyticsHubDataExchangeListing", "properties": { "conditions": { - "description": "Conditions represent the latest available observation of the resource's current state.", + "description": "Conditions represent the latest available observations of the object's current state.", "items": { "properties": { "lastTransitionTime": { @@ -199,21 +357,30 @@ }, "type": "array" }, - "name": { - "description": "The resource name of the listing. e.g. \"projects/myproject/locations/US/dataExchanges/123/listings/456\".", + "externalRef": { + "description": "A unique specifier for the BigQueryAnalyticsHubDataExchangeListing resource in GCP.", "type": "string" }, "observedGeneration": { "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "state": { + "description": "Output only. Current state of the listing.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false } }, "type": "object", "additionalProperties": false } }, - "required": [ - "spec" - ], "type": "object" } diff --git a/bigqueryconnection.cnrm.cloud.google.com/bigqueryconnectionconnection_v1alpha1.json b/bigqueryconnection.cnrm.cloud.google.com/bigqueryconnectionconnection_v1alpha1.json index 0659855e..b2efa08d 100644 --- a/bigqueryconnection.cnrm.cloud.google.com/bigqueryconnectionconnection_v1alpha1.json +++ b/bigqueryconnection.cnrm.cloud.google.com/bigqueryconnectionconnection_v1alpha1.json @@ -1,35 +1,33 @@ { + "description": "BigQueryConnectionConnection is the Schema for the BigQueryConnectionConnection API", "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/api-conventions.md#resources", + "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/api-conventions.md#types-kinds", + "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": "BigQueryConnectionConnectionSpec defines the desired state to connect BigQuery to external resources", "properties": { "aws": { - "description": "Connection properties specific to Amazon Web Services.", + "description": "Amazon Web Services (AWS) properties.", "properties": { "accessRole": { "description": "Authentication using Google owned service account to assume into customer's AWS IAM Role.", "properties": { - "iamRoleId": { + "iamRoleID": { "description": "The user\u2019s AWS IAM Role that trusts the Google-owned AWS IAM user Connection.", "type": "string" - }, - "identity": { - "description": "A unique Google-owned and Google-generated identity for the Connection. This identity will be used to access the user's AWS IAM Role.", - "type": "string" } }, "required": [ - "iamRoleId" + "iamRoleID" ], "type": "object", "additionalProperties": false @@ -42,193 +40,270 @@ "additionalProperties": false }, "azure": { - "description": "Container for connection properties specific to Azure.", + "description": "Azure properties.", "properties": { - "application": { - "description": "The name of the Azure Active Directory Application.", - "type": "string" - }, - "clientId": { - "description": "The client id of the Azure Active Directory Application.", - "type": "string" - }, - "customerTenantId": { + "customerTenantID": { "description": "The id of customer's directory that host the data.", "type": "string" }, - "federatedApplicationClientId": { - "description": "The Azure Application (client) ID where the federated credentials will be hosted.", - "type": "string" - }, - "identity": { - "description": "A unique Google-owned and Google-generated identity for the Connection. This identity will be used to access the user's Azure Active Directory Application.", - "type": "string" - }, - "objectId": { - "description": "The object id of the Azure Active Directory Application.", - "type": "string" - }, - "redirectUri": { - "description": "The URL user will be redirected to after granting consent during connection setup.", + "federatedApplicationClientID": { + "description": "The client ID of the user's Azure Active Directory Application used for a federated connection.", "type": "string" } }, "required": [ - "customerTenantId" + "customerTenantID" ], "type": "object", "additionalProperties": false }, "cloudResource": { - "description": "Container for connection properties for delegation of access to GCP resources.", - "properties": { - "serviceAccountId": { - "description": "The account ID of the service created for the purpose of this connection.", - "type": "string" - } - }, - "type": "object", - "additionalProperties": false + "description": "Use Cloud Resource properties.", + "type": "object" }, - "cloudSpanner": { - "description": "Connection properties specific to Cloud Spanner.", + "cloudSQL": { + "description": "Cloud SQL properties.", "properties": { - "database": { - "description": "Cloud Spanner database in the form 'project/instance/database'.", - "type": "string" + "credential": { + "description": "Cloud SQL credential.", + "properties": { + "secretRef": { + "description": "The Kubernetes Secret object that stores the \"username\" and \"password\" information. The Secret type has to be `kubernetes.io/basic-auth`.", + "properties": { + "name": { + "description": "The `metadata.name` field of a Kubernetes `Secret`", + "type": "string" + }, + "namespace": { + "description": "The `metadata.namespace` field of a Kubernetes `Secret`.", + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false }, - "useParallelism": { - "description": "If parallelism should be used when reading from Cloud Spanner.", - "type": "boolean" + "databaseRef": { + "description": "Reference to the SQL Database.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The SQL Database name, when not managed by Config Connector.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `SQLDatabase` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `SQLDatabase` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false }, - "useServerlessAnalytics": { - "description": "If the serverless analytics service should be used to read data from Cloud Spanner. useParallelism must be set when using serverless analytics.", - "type": "boolean" + "instanceRef": { + "description": "Reference to the Cloud SQL instance ID.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The SQLInstance selfLink, when not managed by Config Connector.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `SQLInstance` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `SQLInstance` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": { + "description": "Type of the Cloud SQL database.", + "type": "string" } }, "required": [ - "database" + "credential", + "databaseRef", + "instanceRef", + "type" ], "type": "object", "additionalProperties": false }, - "cloudSql": { - "description": "Connection properties specific to the Cloud SQL.", + "cloudSpanner": { + "description": "Cloud Spanner properties.", "properties": { - "credential": { - "description": "Cloud SQL properties.", - "properties": { - "password": { - "description": "Password for database.", - "oneOf": [ - { - "not": { + "databaseRef": { + "description": "Reference to a spanner database ID.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { "required": [ - "valueFrom" + "name" ] }, - "required": [ - "value" - ] - }, - { - "not": { + { "required": [ - "value" + "namespace" ] - }, - "required": [ - "valueFrom" - ] - } - ], - "properties": { - "value": { - "description": "Value of the field. Cannot be used if 'valueFrom' is specified.", - "type": "string" - }, - "valueFrom": { - "description": "Source for the field's value. Cannot be used if 'value' is specified.", - "properties": { - "secretKeyRef": { - "description": "Reference to a value with the given key in the given Secret in the resource's namespace.", - "properties": { - "key": { - "description": "Key that identifies the value to be extracted.", - "type": "string" - }, - "name": { - "description": "Name of the Secret to extract a value from.", - "type": "string" - } - }, - "required": [ - "name", - "key" - ], - "type": "object", - "additionalProperties": false - } - }, - "type": "object", - "additionalProperties": false - } + } + ] }, - "type": "object", - "additionalProperties": false + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The Spanner Database selfLink, when not managed by Config Connector.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `SpannerDatabase` resource.", + "type": "string" }, - "username": { - "description": "Username for database.", + "namespace": { + "description": "The `namespace` field of a `SpannerDatabase` resource.", "type": "string" } }, - "required": [ - "password", - "username" - ], "type": "object", "additionalProperties": false }, - "database": { - "description": "Database name.", + "databaseRole": { + "description": "Optional. Cloud Spanner database role for fine-grained access control.\n The Cloud Spanner admin should have provisioned the database role with\n appropriate permissions, such as `SELECT` and `INSERT`. Other users should\n only use roles provided by their Cloud Spanner admins.\n\n For more details, see [About fine-grained access control]\n (https://cloud.google.com/spanner/docs/fgac-about).\n\n REQUIRES: The database role name must start with a letter, and can only\n contain letters, numbers, and underscores.", "type": "string" }, - "instanceId": { - "description": "Cloud SQL instance ID in the form project:location:instance.", - "type": "string" + "maxParallelism": { + "description": "Allows setting max parallelism per query when executing on Spanner\n independent compute resources. If unspecified, default values of\n parallelism are chosen that are dependent on the Cloud Spanner instance\n configuration.\n\n REQUIRES: `use_parallelism` must be set.\n REQUIRES: Either `use_data_boost` or `use_serverless_analytics` must be\n set.", + "format": "int32", + "type": "integer" }, - "serviceAccountId": { - "description": "When the connection is used in the context of an operation in BigQuery, this service account will serve as the identity being used for connecting to the CloudSQL instance specified in this connection.", - "type": "string" + "useDataBoost": { + "description": "If set, the request will be executed via Spanner independent compute\n resources.\n REQUIRES: `use_parallelism` must be set.\n\n NOTE: `use_serverless_analytics` will be deprecated. Prefer\n `use_data_boost` over `use_serverless_analytics`.", + "type": "boolean" }, - "type": { - "description": "Type of the Cloud SQL database. Possible values: [\"DATABASE_TYPE_UNSPECIFIED\", \"POSTGRES\", \"MYSQL\"].", - "type": "string" + "useParallelism": { + "description": "If parallelism should be used when reading from Cloud Spanner", + "type": "boolean" + }, + "useServerlessAnalytics": { + "description": "If the serverless analytics service should be used to read data from Cloud Spanner. Note: `use_parallelism` must be set when using serverless analytics.", + "type": "boolean" } }, "required": [ - "credential", - "database", - "instanceId", - "type" + "databaseRef" ], "type": "object", "additionalProperties": false }, "description": { - "description": "A descriptive description for the connection.", + "description": "User provided description.", "type": "string" }, "friendlyName": { - "description": "A descriptive name for the connection.", + "description": "User provided display name for the connection.", "type": "string" }, "location": { - "description": "Immutable. The geographic location where the connection should reside.\nCloud SQL instance must be in the same location as the connection\nwith following exceptions: Cloud SQL us-central1 maps to BigQuery US, Cloud SQL europe-west1 maps to BigQuery EU.\nExamples: US, EU, asia-northeast1, us-central1, europe-west1.\nSpanner Connections same as spanner region\nAWS allowed regions are aws-us-east-1\nAzure allowed regions are azure-eastus2.", - "type": "string" + "description": "Immutable.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "Location field is immutable", + "rule": "self == oldSelf" + } + ] }, "projectRef": { - "description": "The project that this resource belongs to.", + "description": "The Project that this resource belongs to.", "oneOf": [ { "not": { @@ -262,15 +337,19 @@ ], "properties": { "external": { - "description": "Allowed value: The `name` field of a `Project` resource.", + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `Project` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `Project` resource.", "type": "string" } }, @@ -278,8 +357,93 @@ "additionalProperties": false }, "resourceID": { - "description": "Immutable. Optional. The connectionId of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default.", + "description": "Immutable. Optional. The BigQuery Connection ID used for resource creation or acquisition. For creation: If specified, this value is used as the connection ID. If not provided, a UUID will be generated and assigned as the connection ID. For acquisition: This field must be provided to identify the connection resource to acquire.", "type": "string" + }, + "spark": { + "description": "Spark properties.", + "properties": { + "metastoreService": { + "description": "Optional. Dataproc Metastore Service configuration for the connection.", + "properties": { + "metastoreServiceRef": { + "description": "Optional. Resource name of an existing Dataproc Metastore service.\n\n Example:\n\n * `projects/[project_id]/locations/[region]/services/[service_id]`", + "properties": { + "external": { + "description": "The self-link of an existing Dataproc Metastore service , when not managed by Config Connector.", + "type": "string" + } + }, + "required": [ + "external" + ], + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + }, + "sparkHistoryServer": { + "description": "Optional. Spark History Server configuration for the connection.", + "properties": { + "dataprocClusterRef": { + "description": "Optional. Resource name of an existing Dataproc Cluster to act as a Spark\n History Server for the connection.\n\n Example:\n\n * `projects/[project_id]/regions/[region]/clusters/[cluster_name]`", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The self-link of an existing Dataproc Cluster to act as a Spark History Server for the connection , when not managed by Config Connector.", + "type": "string" + }, + "name": { + "description": "The `name` field of a Dataproc Cluster.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a Dataproc Cluster.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false } }, "required": [ @@ -290,9 +454,10 @@ "additionalProperties": false }, "status": { + "description": "BigQueryConnectionConnectionStatus defines the config connector machine state of BigQueryConnectionConnection", "properties": { "conditions": { - "description": "Conditions represent the latest available observation of the resource's current state.", + "description": "Conditions represent the latest available observations of the object's current state.", "items": { "properties": { "lastTransitionTime": { @@ -321,25 +486,110 @@ }, "type": "array" }, - "hasCredential": { - "description": "True if the connection has credential assigned.", - "type": "boolean" - }, - "name": { - "description": "The resource name of the connection in the form of:\n\"projects/{project_id}/locations/{location_id}/connections/{connectionId}\".", + "externalRef": { + "description": "A unique specifier for the BigQueryConnectionConnection resource in GCP.", "type": "string" }, "observedGeneration": { "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "aws": { + "properties": { + "accessRole": { + "properties": { + "identity": { + "description": "A unique Google-owned and Google-generated identity for the Connection. This identity will be used to access the user's AWS IAM Role.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + }, + "azure": { + "properties": { + "application": { + "description": "The name of the Azure Active Directory Application.", + "type": "string" + }, + "clientID": { + "description": "The client id of the Azure Active Directory Application.", + "type": "string" + }, + "identity": { + "description": "A unique Google-owned and Google-generated identity for the Connection. This identity will be used to access the user's Azure Active Directory Application.", + "type": "string" + }, + "objectID": { + "description": "The object id of the Azure Active Directory Application.", + "type": "string" + }, + "redirectUri": { + "description": "The URL user will be redirected to after granting consent during connection setup.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "cloudResource": { + "properties": { + "serviceAccountID": { + "description": " The account ID of the service created for the purpose of this\n connection.\n\n The service account does not have any permissions associated with it\n when it is created. After creation, customers delegate permissions\n to the service account. When the connection is used in the context of an\n operation in BigQuery, the service account will be used to connect to the\n desired resources in GCP.\n\n The account ID is in the form of:\n @gcp-sa-bigquery-cloudresource.iam.gserviceaccount.com", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "cloudSQL": { + "properties": { + "serviceAccountID": { + "description": "The account ID of the service used for the purpose of this connection.\n\n When the connection is used in the context of an operation in\n BigQuery, this service account will serve as the identity being used for\n connecting to the CloudSQL instance specified in this connection.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "description": { + "description": "The description for the connection.", + "type": "string" + }, + "friendlyName": { + "description": "The display name for the connection.", + "type": "string" + }, + "hasCredential": { + "description": "Output only. True, if credential is configured for this connection.", + "type": "boolean" + }, + "spark": { + "properties": { + "serviceAccountID": { + "description": " The account ID of the service created for the purpose of this\n connection.\n\n The service account does not have any permissions associated with it when\n it is created. After creation, customers delegate permissions to the\n service account. When the connection is used in the context of a stored\n procedure for Apache Spark in BigQuery, the service account is used to\n connect to the desired resources in Google Cloud.\n\n The account ID is in the form of:\n bqcx--@gcp-sa-bigquery-consp.iam.gserviceaccount.com", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false } }, "type": "object", "additionalProperties": false } }, - "required": [ - "spec" - ], "type": "object" } diff --git a/bigqueryconnection.cnrm.cloud.google.com/bigqueryconnectionconnection_v1beta1.json b/bigqueryconnection.cnrm.cloud.google.com/bigqueryconnectionconnection_v1beta1.json new file mode 100644 index 00000000..b2efa08d --- /dev/null +++ b/bigqueryconnection.cnrm.cloud.google.com/bigqueryconnectionconnection_v1beta1.json @@ -0,0 +1,595 @@ +{ + "description": "BigQueryConnectionConnection is the Schema for the BigQueryConnectionConnection API", + "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": "BigQueryConnectionConnectionSpec defines the desired state to connect BigQuery to external resources", + "properties": { + "aws": { + "description": "Amazon Web Services (AWS) properties.", + "properties": { + "accessRole": { + "description": "Authentication using Google owned service account to assume into customer's AWS IAM Role.", + "properties": { + "iamRoleID": { + "description": "The user\u2019s AWS IAM Role that trusts the Google-owned AWS IAM user Connection.", + "type": "string" + } + }, + "required": [ + "iamRoleID" + ], + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "accessRole" + ], + "type": "object", + "additionalProperties": false + }, + "azure": { + "description": "Azure properties.", + "properties": { + "customerTenantID": { + "description": "The id of customer's directory that host the data.", + "type": "string" + }, + "federatedApplicationClientID": { + "description": "The client ID of the user's Azure Active Directory Application used for a federated connection.", + "type": "string" + } + }, + "required": [ + "customerTenantID" + ], + "type": "object", + "additionalProperties": false + }, + "cloudResource": { + "description": "Use Cloud Resource properties.", + "type": "object" + }, + "cloudSQL": { + "description": "Cloud SQL properties.", + "properties": { + "credential": { + "description": "Cloud SQL credential.", + "properties": { + "secretRef": { + "description": "The Kubernetes Secret object that stores the \"username\" and \"password\" information. The Secret type has to be `kubernetes.io/basic-auth`.", + "properties": { + "name": { + "description": "The `metadata.name` field of a Kubernetes `Secret`", + "type": "string" + }, + "namespace": { + "description": "The `metadata.namespace` field of a Kubernetes `Secret`.", + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + }, + "databaseRef": { + "description": "Reference to the SQL Database.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The SQL Database name, when not managed by Config Connector.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `SQLDatabase` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `SQLDatabase` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "instanceRef": { + "description": "Reference to the Cloud SQL instance ID.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The SQLInstance selfLink, when not managed by Config Connector.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `SQLInstance` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `SQLInstance` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": { + "description": "Type of the Cloud SQL database.", + "type": "string" + } + }, + "required": [ + "credential", + "databaseRef", + "instanceRef", + "type" + ], + "type": "object", + "additionalProperties": false + }, + "cloudSpanner": { + "description": "Cloud Spanner properties.", + "properties": { + "databaseRef": { + "description": "Reference to a spanner database ID.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The Spanner Database selfLink, when not managed by Config Connector.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `SpannerDatabase` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `SpannerDatabase` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "databaseRole": { + "description": "Optional. Cloud Spanner database role for fine-grained access control.\n The Cloud Spanner admin should have provisioned the database role with\n appropriate permissions, such as `SELECT` and `INSERT`. Other users should\n only use roles provided by their Cloud Spanner admins.\n\n For more details, see [About fine-grained access control]\n (https://cloud.google.com/spanner/docs/fgac-about).\n\n REQUIRES: The database role name must start with a letter, and can only\n contain letters, numbers, and underscores.", + "type": "string" + }, + "maxParallelism": { + "description": "Allows setting max parallelism per query when executing on Spanner\n independent compute resources. If unspecified, default values of\n parallelism are chosen that are dependent on the Cloud Spanner instance\n configuration.\n\n REQUIRES: `use_parallelism` must be set.\n REQUIRES: Either `use_data_boost` or `use_serverless_analytics` must be\n set.", + "format": "int32", + "type": "integer" + }, + "useDataBoost": { + "description": "If set, the request will be executed via Spanner independent compute\n resources.\n REQUIRES: `use_parallelism` must be set.\n\n NOTE: `use_serverless_analytics` will be deprecated. Prefer\n `use_data_boost` over `use_serverless_analytics`.", + "type": "boolean" + }, + "useParallelism": { + "description": "If parallelism should be used when reading from Cloud Spanner", + "type": "boolean" + }, + "useServerlessAnalytics": { + "description": "If the serverless analytics service should be used to read data from Cloud Spanner. Note: `use_parallelism` must be set when using serverless analytics.", + "type": "boolean" + } + }, + "required": [ + "databaseRef" + ], + "type": "object", + "additionalProperties": false + }, + "description": { + "description": "User provided description.", + "type": "string" + }, + "friendlyName": { + "description": "User provided display name for the connection.", + "type": "string" + }, + "location": { + "description": "Immutable.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "Location field is immutable", + "rule": "self == oldSelf" + } + ] + }, + "projectRef": { + "description": "The Project that this resource belongs to.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `Project` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `Project` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "resourceID": { + "description": "Immutable. Optional. The BigQuery Connection ID used for resource creation or acquisition. For creation: If specified, this value is used as the connection ID. If not provided, a UUID will be generated and assigned as the connection ID. For acquisition: This field must be provided to identify the connection resource to acquire.", + "type": "string" + }, + "spark": { + "description": "Spark properties.", + "properties": { + "metastoreService": { + "description": "Optional. Dataproc Metastore Service configuration for the connection.", + "properties": { + "metastoreServiceRef": { + "description": "Optional. Resource name of an existing Dataproc Metastore service.\n\n Example:\n\n * `projects/[project_id]/locations/[region]/services/[service_id]`", + "properties": { + "external": { + "description": "The self-link of an existing Dataproc Metastore service , when not managed by Config Connector.", + "type": "string" + } + }, + "required": [ + "external" + ], + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + }, + "sparkHistoryServer": { + "description": "Optional. Spark History Server configuration for the connection.", + "properties": { + "dataprocClusterRef": { + "description": "Optional. Resource name of an existing Dataproc Cluster to act as a Spark\n History Server for the connection.\n\n Example:\n\n * `projects/[project_id]/regions/[region]/clusters/[cluster_name]`", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The self-link of an existing Dataproc Cluster to act as a Spark History Server for the connection , when not managed by Config Connector.", + "type": "string" + }, + "name": { + "description": "The `name` field of a Dataproc Cluster.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a Dataproc Cluster.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "location", + "projectRef" + ], + "type": "object", + "additionalProperties": false + }, + "status": { + "description": "BigQueryConnectionConnectionStatus defines the config connector machine state of BigQueryConnectionConnection", + "properties": { + "conditions": { + "description": "Conditions represent the latest available observations of the object's current state.", + "items": { + "properties": { + "lastTransitionTime": { + "description": "Last time the condition transitioned from one status to another.", + "type": "string" + }, + "message": { + "description": "Human-readable message indicating details about last transition.", + "type": "string" + }, + "reason": { + "description": "Unique, one-word, CamelCase reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Status is the status of the condition. Can be True, False, Unknown.", + "type": "string" + }, + "type": { + "description": "Type is the type of the condition.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "externalRef": { + "description": "A unique specifier for the BigQueryConnectionConnection resource in GCP.", + "type": "string" + }, + "observedGeneration": { + "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", + "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "aws": { + "properties": { + "accessRole": { + "properties": { + "identity": { + "description": "A unique Google-owned and Google-generated identity for the Connection. This identity will be used to access the user's AWS IAM Role.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + }, + "azure": { + "properties": { + "application": { + "description": "The name of the Azure Active Directory Application.", + "type": "string" + }, + "clientID": { + "description": "The client id of the Azure Active Directory Application.", + "type": "string" + }, + "identity": { + "description": "A unique Google-owned and Google-generated identity for the Connection. This identity will be used to access the user's Azure Active Directory Application.", + "type": "string" + }, + "objectID": { + "description": "The object id of the Azure Active Directory Application.", + "type": "string" + }, + "redirectUri": { + "description": "The URL user will be redirected to after granting consent during connection setup.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "cloudResource": { + "properties": { + "serviceAccountID": { + "description": " The account ID of the service created for the purpose of this\n connection.\n\n The service account does not have any permissions associated with it\n when it is created. After creation, customers delegate permissions\n to the service account. When the connection is used in the context of an\n operation in BigQuery, the service account will be used to connect to the\n desired resources in GCP.\n\n The account ID is in the form of:\n @gcp-sa-bigquery-cloudresource.iam.gserviceaccount.com", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "cloudSQL": { + "properties": { + "serviceAccountID": { + "description": "The account ID of the service used for the purpose of this connection.\n\n When the connection is used in the context of an operation in\n BigQuery, this service account will serve as the identity being used for\n connecting to the CloudSQL instance specified in this connection.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "description": { + "description": "The description for the connection.", + "type": "string" + }, + "friendlyName": { + "description": "The display name for the connection.", + "type": "string" + }, + "hasCredential": { + "description": "Output only. True, if credential is configured for this connection.", + "type": "boolean" + }, + "spark": { + "properties": { + "serviceAccountID": { + "description": " The account ID of the service created for the purpose of this\n connection.\n\n The service account does not have any permissions associated with it when\n it is created. After creation, customers delegate permissions to the\n service account. When the connection is used in the context of a stored\n procedure for Apache Spark in BigQuery, the service account is used to\n connect to the desired resources in Google Cloud.\n\n The account ID is in the form of:\n bqcx--@gcp-sa-bigquery-consp.iam.gserviceaccount.com", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object" +} diff --git a/bigquerydatatransfer.cnrm.cloud.google.com/bigquerydatatransferconfig_v1alpha1.json b/bigquerydatatransfer.cnrm.cloud.google.com/bigquerydatatransferconfig_v1alpha1.json index 924261c6..abfd0633 100644 --- a/bigquerydatatransfer.cnrm.cloud.google.com/bigquerydatatransferconfig_v1alpha1.json +++ b/bigquerydatatransfer.cnrm.cloud.google.com/bigquerydatatransferconfig_v1alpha1.json @@ -1,68 +1,180 @@ { + "description": "BigQueryDataTransferConfig is the Schema for the BigQueryDataTransferConfig API", "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/api-conventions.md#resources", + "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/api-conventions.md#types-kinds", + "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": "BigQueryDataTransferConfigSpec defines the desired state of BigQueryDataTransferConfig", "properties": { "dataRefreshWindowDays": { - "description": "The number of days to look back to automatically refresh the data.\nFor example, if dataRefreshWindowDays = 10, then every day BigQuery\nreingests data for [today-10, today-1], rather than ingesting data for\njust [today-1]. Only valid if the data source supports the feature.\nSet the value to 0 to use the default value.", + "description": "The number of days to look back to automatically refresh the data. For example, if `data_refresh_window_days = 10`, then every day BigQuery reingests data for [today-10, today-1], rather than ingesting data for just [today-1]. Only valid if the data source supports the feature. Set the value to 0 to use the default value.", + "format": "int32", "type": "integer" }, - "dataSourceId": { - "description": "Immutable. The data source id. Cannot be changed once the transfer config is created.", - "type": "string" + "dataSourceID": { + "description": "Immutable. Data source ID. This cannot be changed once data transfer is created. The full list of available data source IDs can be returned through an API call: https://cloud.google.com/bigquery-transfer/docs/reference/datatransfer/rest/v1/projects.locations.dataSources/list", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "DataSourceID field is immutable", + "rule": "self == oldSelf" + } + ] }, - "destinationDatasetId": { + "datasetRef": { "description": "The BigQuery target dataset id.", - "type": "string" + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "If provided must be in the format `projects/[project_id]/datasets/[dataset_id]`.", + "type": "string" + }, + "name": { + "description": "The `metadata.name` field of a `BigQueryDataset` resource.", + "type": "string" + }, + "namespace": { + "description": "The `metadata.namespace` field of a `BigQueryDataset` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false }, "disabled": { - "description": "When set to true, no runs are scheduled for a given transfer.", + "description": "Is this config disabled. When set to true, no runs will be scheduled for this transfer config.", "type": "boolean" }, "displayName": { - "description": "The user specified display name for the transfer config.", + "description": "User specified display name for the data transfer.", "type": "string" }, "emailPreferences": { - "description": "Email notifications will be sent according to these preferences to the\nemail address of the user who owns this transfer config.", + "description": "Email notifications will be sent according to these preferences to the email address of the user who owns this transfer config.", "properties": { "enableFailureEmail": { "description": "If true, email notifications will be sent on transfer run failures.", "type": "boolean" } }, - "required": [ - "enableFailureEmail" - ], "type": "object", "additionalProperties": false }, - "location": { - "description": "Immutable. The geographic location where the transfer config should reside.\nExamples: US, EU, asia-northeast1. The default value is US.", - "type": "string" + "encryptionConfiguration": { + "description": "The encryption configuration part. Currently, it is only used for the optional KMS key name. The BigQuery service account of your project must be granted permissions to use the key. Read methods will return the key name applied in effect. Write methods will apply the key if it is present, or otherwise try to apply project default keys if it is absent.", + "properties": { + "kmsKeyRef": { + "description": "The KMS key used for encrypting BigQuery data.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "A reference to an externally managed KMSCryptoKey. Should be in the format `projects/[kms_project_id]/locations/[region]/keyRings/[key_ring_id]/cryptoKeys/[key]`.", + "type": "string" + }, + "name": { + "description": "The `name` of a `KMSCryptoKey` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` of a `KMSCryptoKey` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false }, - "notificationPubsubTopic": { - "description": "Pub/Sub topic where notifications will be sent after transfer runs\nassociated with this transfer config finish.", - "type": "string" + "location": { + "description": "Immutable.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "Location field is immutable", + "rule": "self == oldSelf" + } + ] }, "params": { "additionalProperties": { "type": "string" }, + "description": "Parameters specific to each data source. For more information see the bq tab in the 'Setting up a data transfer' section for each data source. For example the parameters for Cloud Storage transfers are listed here: https://cloud.google.com/bigquery-transfer/docs/cloud-storage-transfer#bq", "type": "object" }, "projectRef": { - "description": "The project that this resource belongs to.", + "description": "The Project that this resource belongs to.", "oneOf": [ { "not": { @@ -96,15 +208,69 @@ ], "properties": { "external": { - "description": "Allowed value: The `name` field of a `Project` resource.", + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `Project` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `Project` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "pubSubTopicRef": { + "description": "Pub/Sub topic where notifications will be sent after transfer runs associated with this transfer config finish.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "If provided must be in the format `projects/[project_id]/topics/[topic_id]`.", + "type": "string" + }, + "name": { + "description": "The `metadata.name` field of a `PubSubTopic` resource.", + "type": "string" + }, + "namespace": { + "description": "The `metadata.namespace` field of a `PubSubTopic` resource.", "type": "string" } }, @@ -112,109 +278,93 @@ "additionalProperties": false }, "resourceID": { - "description": "Immutable. Optional. The service-generated name of the resource. Used for acquisition only. Leave unset to create a new resource.", - "type": "string" + "description": "Immutable. The BigQueryDataTransferConfig name. If not given, the metadata.name will be used.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "ResourceID field is immutable", + "rule": "self == oldSelf" + } + ] }, "schedule": { - "description": "Data transfer schedule. If the data source does not support a custom\nschedule, this should be empty. If it is empty, the default value for\nthe data source will be used. The specified times are in UTC. Examples\nof valid format: 1st,3rd monday of month 15:30, every wed,fri of jan,\njun 13:15, and first sunday of quarter 00:00. See more explanation\nabout the format here:\nhttps://cloud.google.com/appengine/docs/flexible/python/scheduling-jobs-with-cron-yaml#the_schedule_format\nNOTE: the granularity should be at least 8 hours, or less frequent.", + "description": "Data transfer schedule.\n If the data source does not support a custom schedule, this should be\n empty. If it is empty, the default value for the data source will be used.\n The specified times are in UTC.\n Examples of valid format:\n `1st,3rd monday of month 15:30`,\n `every wed,fri of jan,jun 13:15`, and\n `first sunday of quarter 00:00`.\n See more explanation about the format here:\n https://cloud.google.com/appengine/docs/flexible/python/scheduling-jobs-with-cron-yaml#the_schedule_format\n\n NOTE: The minimum interval time between recurring transfers depends on the\n data source; refer to the documentation for your data source.", "type": "string" }, "scheduleOptions": { "description": "Options customizing the data transfer schedule.", "properties": { "disableAutoScheduling": { - "description": "If true, automatic scheduling of data transfer runs for this\nconfiguration will be disabled. The runs can be started on ad-hoc\nbasis using transferConfigs.startManualRuns API. When automatic\nscheduling is disabled, the TransferConfig.schedule field will\nbe ignored.", + "description": "If true, automatic scheduling of data transfer runs for this configuration will be disabled. The runs can be started on ad-hoc basis using StartManualTransferRuns API. When automatic scheduling is disabled, the TransferConfig.schedule field will be ignored.", "type": "boolean" }, "endTime": { - "description": "Defines time to stop scheduling transfer runs. A transfer run cannot be\nscheduled at or after the end time. The end time can be changed at any\nmoment. The time when a data transfer can be triggered manually is not\nlimited by this option.", + "description": "Defines time to stop scheduling transfer runs. A transfer run cannot be scheduled at or after the end time. The end time can be changed at any moment. The time when a data transfer can be triggered manually is not limited by this option.", "type": "string" }, "startTime": { - "description": "Specifies time to start scheduling transfer runs. The first run will be\nscheduled at or after the start time according to a recurrence pattern\ndefined in the schedule string. The start time can be changed at any\nmoment. The time when a data transfer can be triggered manually is not\nlimited by this option.", + "description": "Specifies time to start scheduling transfer runs. The first run will be scheduled at or after the start time according to a recurrence pattern defined in the schedule string. The start time can be changed at any moment. The time when a data transfer can be triggered manually is not limited by this option.", "type": "string" } }, "type": "object", "additionalProperties": false }, - "sensitiveParams": { - "description": "Different parameters are configured primarily using the the 'params' field on this\nresource. This block contains the parameters which contain secrets or passwords so that they can be marked\nsensitive and hidden from plan output. The name of the field, eg: secret_access_key, will be the key\nin the 'params' map in the api request.\n\nCredentials may not be specified in both locations and will cause an error. Changing from one location\nto a different credential configuration in the config will require an apply to update state.", - "properties": { - "secretAccessKey": { - "description": "The Secret Access Key of the AWS account transferring data from.", - "oneOf": [ - { - "not": { + "serviceAccountRef": { + "description": "Service account email. If this field is set, the transfer config will be created with this service account's credentials. It requires that the requesting user calling this API has permissions to act as this service account. Note that not all data sources support service account credentials when creating a transfer config. For the latest list of data sources, please refer to https://cloud.google.com/bigquery/docs/use-service-accounts.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { "required": [ - "valueFrom" + "name" ] }, - "required": [ - "value" - ] - }, - { - "not": { + { "required": [ - "value" + "namespace" ] - }, - "required": [ - "valueFrom" - ] - } - ], - "properties": { - "value": { - "description": "Value of the field. Cannot be used if 'valueFrom' is specified.", - "type": "string" - }, - "valueFrom": { - "description": "Source for the field's value. Cannot be used if 'value' is specified.", - "properties": { - "secretKeyRef": { - "description": "Reference to a value with the given key in the given Secret in the resource's namespace.", - "properties": { - "key": { - "description": "Key that identifies the value to be extracted.", - "type": "string" - }, - "name": { - "description": "Name of the Secret to extract a value from.", - "type": "string" - } - }, - "required": [ - "name", - "key" - ], - "type": "object", - "additionalProperties": false - } - }, - "type": "object", - "additionalProperties": false - } + } + ] }, - "type": "object", - "additionalProperties": false + "required": [ + "external" + ] } - }, - "required": [ - "secretAccessKey" ], + "properties": { + "external": { + "description": "The `email` field of an `IAMServiceAccount` resource.", + "type": "string" + }, + "name": { + "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "type": "string" + }, + "namespace": { + "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "type": "string" + } + }, "type": "object", "additionalProperties": false - }, - "serviceAccountName": { - "description": "Service account email. If this field is set, transfer config will\nbe created with this service account credentials. It requires that\nrequesting user calling this API has permissions to act as this service account.", - "type": "string" } }, "required": [ - "dataSourceId", - "displayName", + "dataSourceID", + "datasetRef", + "location", "params", "projectRef" ], @@ -222,9 +372,10 @@ "additionalProperties": false }, "status": { + "description": "BigQueryDataTransferConfigStatus defines the config connector machine state of BigQueryDataTransferConfig", "properties": { "conditions": { - "description": "Conditions represent the latest available observation of the resource's current state.", + "description": "Conditions represent the latest available observations of the object's current state.", "items": { "properties": { "lastTransitionTime": { @@ -253,13 +404,57 @@ }, "type": "array" }, - "name": { - "description": "The resource name of the transfer config. Transfer config names have the\nform projects/{projectId}/locations/{location}/transferConfigs/{configId}\nor projects/{projectId}/transferConfigs/{configId},\nwhere configId is usually a uuid, but this is not required.\nThe name is ignored when creating a transfer config.", + "externalRef": { + "description": "A unique specifier for the BigQueryDataTransferConfig resource in GCP.", "type": "string" }, "observedGeneration": { "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "datasetRegion": { + "description": "Output only. Region in which BigQuery dataset is located.", + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of the transfer config. Transfer config names have the form either `projects/{project_id}/locations/{region}/transferConfigs/{config_id}` or `projects/{project_id}/transferConfigs/{config_id}`, where `config_id` is usually a UUID, even though it is not guaranteed or required. The name is ignored when creating a transfer config.", + "type": "string" + }, + "nextRunTime": { + "description": "Output only. Next time when data transfer will run.", + "type": "string" + }, + "ownerInfo": { + "description": "Output only. Information about the user whose credentials are used to transfer data. Populated only for `transferConfigs.get` requests. In case the user information is not available, this field will not be populated.", + "properties": { + "email": { + "description": "E-mail address of the user.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "state": { + "description": "Output only. State of the most recently updated transfer run.", + "type": "string" + }, + "updateTime": { + "description": "Output only. Data transfer modification time. Ignored by server on input.", + "type": "string" + }, + "userID": { + "description": "Deprecated. Unique ID of the user on whose behalf transfer is done.", + "format": "int64", + "type": "integer" + } + }, + "type": "object", + "additionalProperties": false } }, "type": "object", diff --git a/bigquerydatatransfer.cnrm.cloud.google.com/bigquerydatatransferconfig_v1beta1.json b/bigquerydatatransfer.cnrm.cloud.google.com/bigquerydatatransferconfig_v1beta1.json new file mode 100644 index 00000000..abfd0633 --- /dev/null +++ b/bigquerydatatransfer.cnrm.cloud.google.com/bigquerydatatransferconfig_v1beta1.json @@ -0,0 +1,468 @@ +{ + "description": "BigQueryDataTransferConfig is the Schema for the BigQueryDataTransferConfig API", + "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": "BigQueryDataTransferConfigSpec defines the desired state of BigQueryDataTransferConfig", + "properties": { + "dataRefreshWindowDays": { + "description": "The number of days to look back to automatically refresh the data. For example, if `data_refresh_window_days = 10`, then every day BigQuery reingests data for [today-10, today-1], rather than ingesting data for just [today-1]. Only valid if the data source supports the feature. Set the value to 0 to use the default value.", + "format": "int32", + "type": "integer" + }, + "dataSourceID": { + "description": "Immutable. Data source ID. This cannot be changed once data transfer is created. The full list of available data source IDs can be returned through an API call: https://cloud.google.com/bigquery-transfer/docs/reference/datatransfer/rest/v1/projects.locations.dataSources/list", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "DataSourceID field is immutable", + "rule": "self == oldSelf" + } + ] + }, + "datasetRef": { + "description": "The BigQuery target dataset id.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "If provided must be in the format `projects/[project_id]/datasets/[dataset_id]`.", + "type": "string" + }, + "name": { + "description": "The `metadata.name` field of a `BigQueryDataset` resource.", + "type": "string" + }, + "namespace": { + "description": "The `metadata.namespace` field of a `BigQueryDataset` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "disabled": { + "description": "Is this config disabled. When set to true, no runs will be scheduled for this transfer config.", + "type": "boolean" + }, + "displayName": { + "description": "User specified display name for the data transfer.", + "type": "string" + }, + "emailPreferences": { + "description": "Email notifications will be sent according to these preferences to the email address of the user who owns this transfer config.", + "properties": { + "enableFailureEmail": { + "description": "If true, email notifications will be sent on transfer run failures.", + "type": "boolean" + } + }, + "type": "object", + "additionalProperties": false + }, + "encryptionConfiguration": { + "description": "The encryption configuration part. Currently, it is only used for the optional KMS key name. The BigQuery service account of your project must be granted permissions to use the key. Read methods will return the key name applied in effect. Write methods will apply the key if it is present, or otherwise try to apply project default keys if it is absent.", + "properties": { + "kmsKeyRef": { + "description": "The KMS key used for encrypting BigQuery data.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "A reference to an externally managed KMSCryptoKey. Should be in the format `projects/[kms_project_id]/locations/[region]/keyRings/[key_ring_id]/cryptoKeys/[key]`.", + "type": "string" + }, + "name": { + "description": "The `name` of a `KMSCryptoKey` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` of a `KMSCryptoKey` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + }, + "location": { + "description": "Immutable.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "Location field is immutable", + "rule": "self == oldSelf" + } + ] + }, + "params": { + "additionalProperties": { + "type": "string" + }, + "description": "Parameters specific to each data source. For more information see the bq tab in the 'Setting up a data transfer' section for each data source. For example the parameters for Cloud Storage transfers are listed here: https://cloud.google.com/bigquery-transfer/docs/cloud-storage-transfer#bq", + "type": "object" + }, + "projectRef": { + "description": "The Project that this resource belongs to.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `Project` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `Project` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "pubSubTopicRef": { + "description": "Pub/Sub topic where notifications will be sent after transfer runs associated with this transfer config finish.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "If provided must be in the format `projects/[project_id]/topics/[topic_id]`.", + "type": "string" + }, + "name": { + "description": "The `metadata.name` field of a `PubSubTopic` resource.", + "type": "string" + }, + "namespace": { + "description": "The `metadata.namespace` field of a `PubSubTopic` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "resourceID": { + "description": "Immutable. The BigQueryDataTransferConfig name. If not given, the metadata.name will be used.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "ResourceID field is immutable", + "rule": "self == oldSelf" + } + ] + }, + "schedule": { + "description": "Data transfer schedule.\n If the data source does not support a custom schedule, this should be\n empty. If it is empty, the default value for the data source will be used.\n The specified times are in UTC.\n Examples of valid format:\n `1st,3rd monday of month 15:30`,\n `every wed,fri of jan,jun 13:15`, and\n `first sunday of quarter 00:00`.\n See more explanation about the format here:\n https://cloud.google.com/appengine/docs/flexible/python/scheduling-jobs-with-cron-yaml#the_schedule_format\n\n NOTE: The minimum interval time between recurring transfers depends on the\n data source; refer to the documentation for your data source.", + "type": "string" + }, + "scheduleOptions": { + "description": "Options customizing the data transfer schedule.", + "properties": { + "disableAutoScheduling": { + "description": "If true, automatic scheduling of data transfer runs for this configuration will be disabled. The runs can be started on ad-hoc basis using StartManualTransferRuns API. When automatic scheduling is disabled, the TransferConfig.schedule field will be ignored.", + "type": "boolean" + }, + "endTime": { + "description": "Defines time to stop scheduling transfer runs. A transfer run cannot be scheduled at or after the end time. The end time can be changed at any moment. The time when a data transfer can be triggered manually is not limited by this option.", + "type": "string" + }, + "startTime": { + "description": "Specifies time to start scheduling transfer runs. The first run will be scheduled at or after the start time according to a recurrence pattern defined in the schedule string. The start time can be changed at any moment. The time when a data transfer can be triggered manually is not limited by this option.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "serviceAccountRef": { + "description": "Service account email. If this field is set, the transfer config will be created with this service account's credentials. It requires that the requesting user calling this API has permissions to act as this service account. Note that not all data sources support service account credentials when creating a transfer config. For the latest list of data sources, please refer to https://cloud.google.com/bigquery/docs/use-service-accounts.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `email` field of an `IAMServiceAccount` resource.", + "type": "string" + }, + "name": { + "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "type": "string" + }, + "namespace": { + "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "dataSourceID", + "datasetRef", + "location", + "params", + "projectRef" + ], + "type": "object", + "additionalProperties": false + }, + "status": { + "description": "BigQueryDataTransferConfigStatus defines the config connector machine state of BigQueryDataTransferConfig", + "properties": { + "conditions": { + "description": "Conditions represent the latest available observations of the object's current state.", + "items": { + "properties": { + "lastTransitionTime": { + "description": "Last time the condition transitioned from one status to another.", + "type": "string" + }, + "message": { + "description": "Human-readable message indicating details about last transition.", + "type": "string" + }, + "reason": { + "description": "Unique, one-word, CamelCase reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Status is the status of the condition. Can be True, False, Unknown.", + "type": "string" + }, + "type": { + "description": "Type is the type of the condition.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "externalRef": { + "description": "A unique specifier for the BigQueryDataTransferConfig resource in GCP.", + "type": "string" + }, + "observedGeneration": { + "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", + "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "datasetRegion": { + "description": "Output only. Region in which BigQuery dataset is located.", + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of the transfer config. Transfer config names have the form either `projects/{project_id}/locations/{region}/transferConfigs/{config_id}` or `projects/{project_id}/transferConfigs/{config_id}`, where `config_id` is usually a UUID, even though it is not guaranteed or required. The name is ignored when creating a transfer config.", + "type": "string" + }, + "nextRunTime": { + "description": "Output only. Next time when data transfer will run.", + "type": "string" + }, + "ownerInfo": { + "description": "Output only. Information about the user whose credentials are used to transfer data. Populated only for `transferConfigs.get` requests. In case the user information is not available, this field will not be populated.", + "properties": { + "email": { + "description": "E-mail address of the user.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "state": { + "description": "Output only. State of the most recently updated transfer run.", + "type": "string" + }, + "updateTime": { + "description": "Output only. Data transfer modification time. Ignored by server on input.", + "type": "string" + }, + "userID": { + "description": "Deprecated. Unique ID of the user on whose behalf transfer is done.", + "format": "int64", + "type": "integer" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "spec" + ], + "type": "object" +} diff --git a/bigtable.cnrm.cloud.google.com/bigtableinstance_v1beta1.json b/bigtable.cnrm.cloud.google.com/bigtableinstance_v1beta1.json index 61fa70be..102c8554 100644 --- a/bigtable.cnrm.cloud.google.com/bigtableinstance_v1beta1.json +++ b/bigtable.cnrm.cloud.google.com/bigtableinstance_v1beta1.json @@ -1,17 +1,19 @@ { + "description": "BigtableInstance is the Schema for the BigtableInstance API", "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/api-conventions.md#resources", + "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/api-conventions.md#types-kinds", + "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": "BigtableInstanceSpec defines the desired state of BigtableInstance", "properties": { "cluster": { "description": "A block of cluster configuration options. This can be specified at least once.", @@ -22,18 +24,22 @@ "properties": { "cpuTarget": { "description": "The target CPU utilization for autoscaling. Value must be between 10 and 80.", + "format": "int64", "type": "integer" }, "maxNodes": { "description": "The maximum number of nodes for autoscaling.", + "format": "int64", "type": "integer" }, "minNodes": { "description": "The minimum number of nodes for autoscaling.", + "format": "int64", "type": "integer" }, "storageTarget": { "description": "The target storage utilization for autoscaling, in GB, for each node in a cluster. This number is limited between 2560 (2.5TiB) and 5120 (5TiB) for a SSD cluster and between 8192 (8TiB) and 16384 (16 TiB) for an HDD cluster. If not set, whatever is already set for the cluster will not change, or if the cluster is just being created, it will use the default value of 2560 for SSD clusters and 8192 for HDD clusters.", + "format": "int64", "type": "integer" } }, @@ -50,7 +56,7 @@ "type": "string" }, "kmsKeyRef": { - "description": "Describes the Cloud KMS encryption key that will be used to protect the destination Bigtable\ncluster. The requirements for this key are: 1) The Cloud Bigtable service account associated with the project that contains\nthis cluster must be granted the cloudkms.cryptoKeyEncrypterDecrypter role on the CMEK key.\n2) Only regional keys can be used and the region of the CMEK key must match the region of the cluster.\n3) All clusters within an instance must use the same CMEK key access to this encryption key.", + "description": "Describes the Cloud KMS encryption key that will be used to protect the destination Bigtable\ncluster. The requirements for this key are:\n\n1) The Cloud Bigtable service account associated with the project that contains\nthis cluster must be granted the cloudkms.cryptoKeyEncrypterDecrypter role on the CMEK key.\n2) Only regional keys can be used and the region of the CMEK key must match the region of the cluster.\n3) All clusters within an instance must use the same CMEK key access to this encryption key.", "oneOf": [ { "not": { @@ -84,15 +90,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `KMSCryptoKey` resource.", + "description": "A reference to an externally managed KMSCryptoKey. Should be in the format `projects/[kms_project_id]/locations/[region]/keyRings/[key_ring_id]/cryptoKeys/[key]`.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` of a `KMSCryptoKey` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` of a `KMSCryptoKey` resource.", "type": "string" } }, @@ -101,6 +107,7 @@ }, "numNodes": { "description": "The number of nodes in the cluster. If no value is set, Cloud Bigtable automatically allocates nodes based on your data footprint and optimized for 50% storage utilization.", + "format": "int64", "type": "integer" }, "storageType": { @@ -126,7 +133,7 @@ "type": "boolean" }, "displayName": { - "description": "The human-readable display name of the Bigtable instance. Defaults to the instance name.", + "description": "Required. The descriptive name for this instance as it appears in UIs. Can be changed at any time, but should be kept globally unique to avoid confusion.", "type": "string" }, "instanceType": { @@ -134,7 +141,7 @@ "type": "string" }, "resourceID": { - "description": "Immutable. Optional. The name of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default.", + "description": "The Instance name. If not given, the metadata.name will be used.", "type": "string" } }, @@ -142,9 +149,10 @@ "additionalProperties": false }, "status": { + "description": "BigtableInstanceStatus defines the config connector machine state of BigtableInstance", "properties": { "conditions": { - "description": "Conditions represent the latest available observation of the resource's current state.", + "description": "Conditions represent the latest available observations of the object's current state.", "items": { "properties": { "lastTransitionTime": { @@ -175,6 +183,7 @@ }, "observedGeneration": { "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", "type": "integer" } }, diff --git a/certificatemanager.cnrm.cloud.google.com/certificatemanagerdnsauthorization_v1alpha1.json b/certificatemanager.cnrm.cloud.google.com/certificatemanagerdnsauthorization_v1alpha1.json index 2063979b..e07dff79 100644 --- a/certificatemanager.cnrm.cloud.google.com/certificatemanagerdnsauthorization_v1alpha1.json +++ b/certificatemanager.cnrm.cloud.google.com/certificatemanagerdnsauthorization_v1alpha1.json @@ -1,25 +1,33 @@ { + "description": "CertificateManagerDNSAuthorization is the Schema for the CertificateManagerDNSAuthorization API", "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/api-conventions.md#resources", + "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/api-conventions.md#types-kinds", + "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": "CertificateManagerDNSAuthorizationSpec defines the desired state of CertificateManagerDNSAuthorization", "properties": { "description": { "description": "A human-readable description of the resource.", "type": "string" }, "domain": { - "description": "Immutable. A domain which is being authorized. A DnsAuthorization resource covers a\nsingle domain and its wildcard, e.g. authorization for \"example.com\" can\nbe used to issue certificates for \"example.com\" and \"*.example.com\".", - "type": "string" + "description": "Immutable. A domain which is being authorized. A DnsAuthorization resource covers a single domain and its wildcard, e.g. authorization for \"example.com\" can be used to issue certificates for \"example.com\" and \"*.example.com\".", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "Domain field is immutable", + "rule": "self == oldSelf" + } + ] }, "projectRef": { "description": "The project that this resource belongs to.", @@ -56,15 +64,19 @@ ], "properties": { "external": { - "description": "Allowed value: The `name` field of a `Project` resource.", + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `Project` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `Project` resource.", "type": "string" } }, @@ -73,7 +85,13 @@ }, "resourceID": { "description": "Immutable. Optional. The name of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default.", - "type": "string" + "type": "string", + "x-kubernetes-validations": [ + { + "message": "ResourceID field is immutable", + "rule": "self == oldSelf" + } + ] } }, "required": [ @@ -84,9 +102,10 @@ "additionalProperties": false }, "status": { + "description": "CertificateManagerDNSAuthorizationStatus defines the config connector machine state of CertificateManagerDNSAuthorization", "properties": { "conditions": { - "description": "Conditions represent the latest available observation of the resource's current state.", + "description": "Conditions represent the latest available observations of the CertificateManagerDNSAuthorization's current state.", "items": { "properties": { "lastTransitionTime": { @@ -116,7 +135,7 @@ "type": "array" }, "dnsResourceRecord": { - "description": "The structure describing the DNS Resource Record that needs to be added\nto DNS configuration for the authorization to be usable by\ncertificate.", + "description": "The structure describing the DNS Resource Record that needs to be added to DNS configuration for the authorization to be usable by certificate.", "items": { "properties": { "data": { @@ -124,7 +143,7 @@ "type": "string" }, "name": { - "description": "Fully qualified name of the DNS Resource Record.\nE.g. '_acme-challenge.example.com'.", + "description": "Fully qualified name of the DNS Resource Record. E.g. '_acme-challenge.example.com'.", "type": "string" }, "type": { @@ -139,6 +158,7 @@ }, "observedGeneration": { "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", "type": "integer" } }, diff --git a/certificatemanager.cnrm.cloud.google.com/certificatemanagerdnsauthorization_v1beta1.json b/certificatemanager.cnrm.cloud.google.com/certificatemanagerdnsauthorization_v1beta1.json index 2063979b..627b9f8c 100644 --- a/certificatemanager.cnrm.cloud.google.com/certificatemanagerdnsauthorization_v1beta1.json +++ b/certificatemanager.cnrm.cloud.google.com/certificatemanagerdnsauthorization_v1beta1.json @@ -1,24 +1,36 @@ { + "description": "CertificateManagerDNSAuthorization is the Schema for the CertificateManagerDNSAuthorization API", "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/api-conventions.md#resources", + "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/api-conventions.md#types-kinds", + "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": "CertificateManagerDNSAuthorizationSpec defines the desired state of CertificateManagerDNSAuthorization", "properties": { "description": { "description": "A human-readable description of the resource.", "type": "string" }, "domain": { - "description": "Immutable. A domain which is being authorized. A DnsAuthorization resource covers a\nsingle domain and its wildcard, e.g. authorization for \"example.com\" can\nbe used to issue certificates for \"example.com\" and \"*.example.com\".", + "description": "Immutable. A domain which is being authorized. A DnsAuthorization resource covers a single domain and its wildcard, e.g. authorization for \"example.com\" can be used to issue certificates for \"example.com\" and \"*.example.com\".", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "Domain field is immutable", + "rule": "self == oldSelf" + } + ] + }, + "location": { + "description": "Immutable. Optional. Location represents the geographical location of the DnsAuthorization. If not specified, \"global\" is used.", "type": "string" }, "projectRef": { @@ -56,15 +68,19 @@ ], "properties": { "external": { - "description": "Allowed value: The `name` field of a `Project` resource.", + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `Project` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `Project` resource.", "type": "string" } }, @@ -73,7 +89,13 @@ }, "resourceID": { "description": "Immutable. Optional. The name of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default.", - "type": "string" + "type": "string", + "x-kubernetes-validations": [ + { + "message": "ResourceID field is immutable", + "rule": "self == oldSelf" + } + ] } }, "required": [ @@ -84,9 +106,10 @@ "additionalProperties": false }, "status": { + "description": "CertificateManagerDNSAuthorizationStatus defines the config connector machine state of CertificateManagerDNSAuthorization", "properties": { "conditions": { - "description": "Conditions represent the latest available observation of the resource's current state.", + "description": "Conditions represent the latest available observations of the CertificateManagerDNSAuthorization's current state.", "items": { "properties": { "lastTransitionTime": { @@ -116,19 +139,19 @@ "type": "array" }, "dnsResourceRecord": { - "description": "The structure describing the DNS Resource Record that needs to be added\nto DNS configuration for the authorization to be usable by\ncertificate.", + "description": "The structure describing the DNS Resource Record that needs to be added to DNS configuration for the authorization to be usable by certificate.", "items": { "properties": { "data": { - "description": "Data of the DNS Resource Record.", + "description": "Output only. Data of the DNS Resource Record.", "type": "string" }, "name": { - "description": "Fully qualified name of the DNS Resource Record.\nE.g. '_acme-challenge.example.com'.", + "description": "Output only. Fully qualified name of the DNS Resource Record. e.g. `_acme-challenge.example.com`", "type": "string" }, "type": { - "description": "Type of the DNS Resource Record.", + "description": "Output only. Type of the DNS Resource Record. Currently always set to \"CNAME\".", "type": "string" } }, @@ -137,8 +160,13 @@ }, "type": "array" }, + "externalRef": { + "description": "A unique specifier for the CertificateManagerDNSAuthorization resource in GCP.", + "type": "string" + }, "observedGeneration": { "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", "type": "integer" } }, diff --git a/cloudbuild.cnrm.cloud.google.com/cloudbuildworkerpool_v1alpha1.json b/cloudbuild.cnrm.cloud.google.com/cloudbuildworkerpool_v1alpha1.json new file mode 100644 index 00000000..c32fbed2 --- /dev/null +++ b/cloudbuild.cnrm.cloud.google.com/cloudbuildworkerpool_v1alpha1.json @@ -0,0 +1,268 @@ +{ + "description": "CloudBuildWorkerPool is the Schema for the CloudBuild WorkerPool API", + "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": "CloudBuildWorkerPoolSpec defines the desired state of Instance", + "properties": { + "displayName": { + "type": "string" + }, + "location": { + "type": "string" + }, + "name": { + "type": "string" + }, + "privatePoolV1Config": { + "properties": { + "networkConfig": { + "properties": { + "egressOption": { + "type": "string" + }, + "peeredNetworkIPRange": { + "type": "string" + }, + "peeredNetworkRef": { + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "A reference to an externally managed Compute Network resource. Should be in the format `projects//global/networks/`.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `ComputeNetwork` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `ComputeNetwork` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "peeredNetworkRef" + ], + "type": "object", + "additionalProperties": false + }, + "workerConfig": { + "properties": { + "diskSizeGb": { + "format": "int64", + "type": "integer" + }, + "machineType": { + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "workerConfig" + ], + "type": "object", + "additionalProperties": false + }, + "projectRef": { + "description": "The Project that this resource belongs to.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `Project` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `Project` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "resourceID": { + "type": "string" + } + }, + "required": [ + "location", + "privatePoolV1Config", + "projectRef" + ], + "type": "object", + "additionalProperties": false + }, + "status": { + "description": "CloudBuildWorkerPoolStatus defines the observed state of Instance", + "properties": { + "conditions": { + "description": "Conditions represent the latest available observations of the object's current state.", + "items": { + "properties": { + "lastTransitionTime": { + "description": "Last time the condition transitioned from one status to another.", + "type": "string" + }, + "message": { + "description": "Human-readable message indicating details about last transition.", + "type": "string" + }, + "reason": { + "description": "Unique, one-word, CamelCase reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Status is the status of the condition. Can be True, False, Unknown.", + "type": "string" + }, + "type": { + "description": "Type is the type of the condition.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "observedGeneration": { + "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", + "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "createTime": { + "description": "The creation timestamp of the workerpool.", + "format": "date-time", + "type": "string" + }, + "networkConfig": { + "properties": { + "egressOption": { + "type": "string" + }, + "peeredNetwork": { + "type": "string" + }, + "peeredNetworkIPRange": { + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "updateTime": { + "description": "The last update timestamp of the workerpool.", + "format": "date-time", + "type": "string" + }, + "workerConfig": { + "properties": { + "diskSizeGb": { + "format": "int64", + "type": "integer" + }, + "machineType": { + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object" +} diff --git a/cloudbuild.cnrm.cloud.google.com/cloudbuildworkerpool_v1beta1.json b/cloudbuild.cnrm.cloud.google.com/cloudbuildworkerpool_v1beta1.json index 3e30383e..336d3f81 100644 --- a/cloudbuild.cnrm.cloud.google.com/cloudbuildworkerpool_v1beta1.json +++ b/cloudbuild.cnrm.cloud.google.com/cloudbuildworkerpool_v1beta1.json @@ -34,7 +34,13 @@ }, "peeredNetworkIPRange": { "description": "Immutable. Subnet IP range within the peered network. This is specified in CIDR notation with a slash and the subnet prefix size. You can optionally specify an IP address before the subnet prefix value. e.g. `192.168.0.0/29` would specify an IP range starting at 192.168.0.0 with a prefix size of 29 bits. `/16` would specify a prefix size of 16 bits, with an automatically determined IP within the peered VPC. If unspecified, a value of `/24` will be used.", - "type": "string" + "type": "string", + "x-kubernetes-validations": [ + { + "message": "the field is immutable", + "rule": "self == oldSelf" + } + ] }, "peeredNetworkRef": { "description": "Immutable. The network definition that the workers are peered to. If this section is left empty, the workers will be peered to `WorkerPool.project_id` on the service producer network.", @@ -71,7 +77,7 @@ ], "properties": { "external": { - "description": "The compute network selflink of form \"projects//global/networks/\", when not managed by KCC.", + "description": "A reference to an externally managed Compute Network resource. Should be in the format `projects//global/networks/`.", "type": "string" }, "name": { @@ -84,6 +90,12 @@ } }, "type": "object", + "x-kubernetes-validations": [ + { + "message": "the field is immutable", + "rule": "self == oldSelf" + } + ], "additionalProperties": false } }, @@ -148,7 +160,7 @@ ], "properties": { "external": { - "description": "The `projectID` field of a project, when not managed by KCC.", + "description": "The `projectID` field of a project, when not managed by Config Connector.", "type": "string" }, "kind": { @@ -168,7 +180,7 @@ "additionalProperties": false }, "resourceID": { - "description": "The `WorkerPool` name. If not given, the metadata.name will be used.", + "description": "The GCP resource identifier. If not given, the metadata.name will be used.", "type": "string" } }, @@ -214,7 +226,7 @@ "type": "array" }, "externalRef": { - "description": "A unique specifier for the CloudBuild workerpool resource in GCP.", + "description": "A unique Config Connector specifier for the resource in GCP.", "type": "string" }, "observedGeneration": { diff --git a/cloudscheduler.cnrm.cloud.google.com/cloudschedulerjob_v1beta1.json b/cloudscheduler.cnrm.cloud.google.com/cloudschedulerjob_v1beta1.json index db36dcbc..12558348 100644 --- a/cloudscheduler.cnrm.cloud.google.com/cloudschedulerjob_v1beta1.json +++ b/cloudscheduler.cnrm.cloud.google.com/cloudschedulerjob_v1beta1.json @@ -301,7 +301,7 @@ "type": "string" }, "maxDoublings": { - "description": "The time between retries will double `max_doublings` times. A job's retry interval starts at min_backoff_duration, then doubles `max_doublings` times, then increases linearly, and finally retries at intervals of max_backoff_duration up to retry_count times. For example, if min_backoff_duration is 10s, max_backoff_duration is 300s, and `max_doublings` is 3, then the a job will first be retried in 10s. The retry interval will double three times, and then increase linearly by 2^3 * 10s. Finally, the job will retry at intervals of max_backoff_duration until the job has been attempted retry_count times. Thus, the requests will retry at 10s, 20s, 40s, 80s, 160s, 240s, 300s, 300s, .... The default value of this field is 5.", + "description": "The time between retries will double `max_doublings` times. A job's retry interval starts at min_backoff_duration, then doubles `max_doublings` times, then increases linearly, and finally retries at intervals of max_backoff_duration up to retry_count times. For example, if min_backoff_duration is 10s, max_backoff_duration is 300s, and `max_doublings` is 3, then the job will first be retried in 10s. The retry interval will double three times, and then increase linearly by 2^3 * 10s. Finally, the job will retry at intervals of max_backoff_duration until the job has been attempted retry_count times. Thus, the requests will retry at 10s, 20s, 40s, 80s, 160s, 240s, 300s, 300s, .... The default value of this field is 5.", "format": "int64", "type": "integer" }, @@ -344,7 +344,7 @@ "appEngineRouting": { "properties": { "host": { - "description": "Output only. The host that the job is sent to. For more information about how App Engine requests are routed, see [here](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed). The host is constructed as: * `host = [application_domain_name]` `| [service] + '.' + [application_domain_name]` `| [version] + '.' + [application_domain_name]` `| [version_dot_service]+ '.' + [application_domain_name]` `| [instance] + '.' + [application_domain_name]` `| [instance_dot_service] + '.' + [application_domain_name]` `| [instance_dot_version] + '.' + [application_domain_name]` `| [instance_dot_version_dot_service] + '.' + [application_domain_name]` * `application_domain_name` = The domain name of the app, for example .appspot.com, which is associated with the job's project ID. * `service =` service * `version =` version * `version_dot_service =` version `+ '.' +` service * `instance =` instance * `instance_dot_service =` instance `+ '.' +` service * `instance_dot_version =` instance `+ '.' +` version * `instance_dot_version_dot_service =` instance `+ '.' +` version `+ '.' +` service If service is empty, then the job will be sent to the service which is the default service when the job is attempted. If version is empty, then the job will be sent to the version which is the default version when the job is attempted. If instance is empty, then the job will be sent to an instance which is available when the job is attempted. If service, version, or instance is invalid, then the job will be sent to the default version of the default service when the job is attempted.", + "description": "Output only. The host that the job is sent to. Read information about [how App Engine requests are routed](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed). The host is constructed as: * `host = [application_domain_name]` `| [service] + '.' + [application_domain_name]` `| [version] + '.' + [application_domain_name]` `| [version_dot_service]+ '.' + [application_domain_name]` `| [instance] + '.' + [application_domain_name]` `| [instance_dot_service] + '.' + [application_domain_name]` `| [instance_dot_version] + '.' + [application_domain_name]` `| [instance_dot_version_dot_service] + '.' + [application_domain_name]` * `application_domain_name` = The domain name of the app, for example .appspot.com, which is associated with the job's project ID. * `service =` service * `version =` version * `version_dot_service =` version `+ '.' +` service * `instance =` instance * `instance_dot_service =` instance `+ '.' +` service * `instance_dot_version =` instance `+ '.' +` version * `instance_dot_version_dot_service =` instance `+ '.' +` version `+ '.' +` service If service is empty, then the job will be sent to the service which is the default service when the job is attempted. If version is empty, then the job will be sent to the version which is the default version when the job is attempted. If instance is empty, then the job will be sent to an instance which is available when the job is attempted. If service, version, or instance is invalid, then the job will be sent to the default version of the default service when the job is attempted.", "type": "string" } }, diff --git a/compute.cnrm.cloud.google.com/computebackendservice_v1beta1.json b/compute.cnrm.cloud.google.com/computebackendservice_v1beta1.json index a82141f2..af278f57 100644 --- a/compute.cnrm.cloud.google.com/computebackendservice_v1beta1.json +++ b/compute.cnrm.cloud.google.com/computebackendservice_v1beta1.json @@ -1081,7 +1081,7 @@ ], "properties": { "external": { - "description": "Allowed value: The `name` field of a `NetworkSecurityClientTLSPolicy` resource.", + "description": "Allowed value: string of the format `//networksecurity.googleapis.com/projects/{{project}}/locations/{{location}}/clientTlsPolicies/{{value}}`, where {{value}} is the `name` field of a `NetworkSecurityClientTLSPolicy` resource.", "type": "string" }, "name": { diff --git a/compute.cnrm.cloud.google.com/computefirewallpolicy_v1beta1.json b/compute.cnrm.cloud.google.com/computefirewallpolicy_v1beta1.json index b8432248..eda4ba5a 100644 --- a/compute.cnrm.cloud.google.com/computefirewallpolicy_v1beta1.json +++ b/compute.cnrm.cloud.google.com/computefirewallpolicy_v1beta1.json @@ -193,7 +193,7 @@ "type": "integer" }, "ruleTupleCount": { - "description": "Total count of all firewall policy rule tuples. A firewall policy can not exceed a set number of tuples.", + "description": "Total count of all firewall policy rule tuples. A firewall policy cannot exceed a set number of tuples.", "format": "int64", "type": "integer" }, diff --git a/compute.cnrm.cloud.google.com/computefirewallpolicyrule_v1beta1.json b/compute.cnrm.cloud.google.com/computefirewallpolicyrule_v1beta1.json index 9b537646..a1982f07 100644 --- a/compute.cnrm.cloud.google.com/computefirewallpolicyrule_v1beta1.json +++ b/compute.cnrm.cloud.google.com/computefirewallpolicyrule_v1beta1.json @@ -1,11 +1,12 @@ { + "description": "ComputeFirewallPolicyRule is the Schema for the compute API", "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/api-conventions.md#resources", + "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/api-conventions.md#types-kinds", + "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": { @@ -68,15 +69,15 @@ ], "properties": { "external": { - "description": "The firewall policy of the resource.\n\nAllowed value: The Google Cloud resource name of a `ComputeFirewallPolicy` resource (format: `locations/global/firewallPolicies/{{name}}`).", + "description": "A reference to an externally managed ComputeFirewallPolicy resource. Should be in the format `locations/global/firewallPolicies/`.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `ComputeFirewall olicy ` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `ComputeFirewallPolicy ` resource.", "type": "string" } }, @@ -227,15 +228,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `ComputeNetwork` resource.", + "description": "A reference to an externally managed Compute Network resource. Should be in the format `projects//global/networks/`.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `ComputeNetwork` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `ComputeNetwork` resource.", "type": "string" } }, @@ -279,7 +280,7 @@ ], "properties": { "external": { - "description": "Allowed value: The Google Cloud resource name of an `IAMServiceAccount` resource (format: `projects/{{project}}/serviceAccounts/{{name}}@{{project}}.iam.gserviceaccount.com`).", + "description": "The `email` field of an `IAMServiceAccount` resource.", "type": "string" }, "name": { @@ -310,7 +311,7 @@ "status": { "properties": { "conditions": { - "description": "Conditions represent the latest available observation of the resource's current state.", + "description": "Conditions represent the latest available observations of the object's current state.", "items": { "properties": { "lastTransitionTime": { @@ -339,12 +340,17 @@ }, "type": "array" }, + "externalRef": { + "description": "A unique Config Connector specifier for the resource in GCP.", + "type": "string" + }, "kind": { "description": "Type of the resource. Always `compute#firewallPolicyRule` for firewall policy rules", "type": "string" }, "observedGeneration": { "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", "type": "integer" }, "ruleTupleCount": { @@ -357,8 +363,5 @@ "additionalProperties": false } }, - "required": [ - "spec" - ], "type": "object" } diff --git a/compute.cnrm.cloud.google.com/computeforwardingrule_v1beta1.json b/compute.cnrm.cloud.google.com/computeforwardingrule_v1beta1.json index 534d6bfe..d50aeae0 100644 --- a/compute.cnrm.cloud.google.com/computeforwardingrule_v1beta1.json +++ b/compute.cnrm.cloud.google.com/computeforwardingrule_v1beta1.json @@ -1,11 +1,12 @@ { + "description": "ComputeForwardingRule is the Schema for the compute API", "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/api-conventions.md#resources", + "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/api-conventions.md#types-kinds", + "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": { @@ -26,7 +27,7 @@ "type": "boolean" }, "backendServiceRef": { - "description": "A ComputeBackendService to receive the matched traffic. This is\nused only for internal load balancing.", + "description": "A ComputeBackendService to receive the matched traffic. This is used only for internal load balancing.", "oneOf": [ { "not": { @@ -60,15 +61,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `ComputeBackendService` resource.", + "description": "The ComputeBackendService selflink in the form \"projects/{{project}}/global/backendServices/{{name}}\" or \"projects/{{project}}/regions/{{region}}/backendServices/{{name}}\" when not managed by Config Connector.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `ComputeBackendService` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `ComputeBackendService` resource.", "type": "string" } }, @@ -76,23 +77,11 @@ "additionalProperties": false }, "description": { - "description": "Immutable. An optional description of this resource. Provide this property when\nyou create the resource.", + "description": "Immutable. An optional description of this resource. Provide this property when you create the resource.", "type": "string" }, "ipAddress": { "description": "The IP address that this forwarding rule is serving on behalf of.\n\nAddresses are restricted based on the forwarding rule's load\nbalancing scheme (EXTERNAL or INTERNAL) and scope (global or\nregional).\n\nWhen the load balancing scheme is EXTERNAL, for global forwarding\nrules, the address must be a global IP, and for regional forwarding\nrules, the address must live in the same region as the forwarding\nrule. If this field is empty, an ephemeral IPv4 address from the\nsame scope (global or regional) will be assigned. A regional\nforwarding rule supports IPv4 only. A global forwarding rule\nsupports either IPv4 or IPv6.\n\nWhen the load balancing scheme is INTERNAL, this can only be an RFC\n1918 IP address belonging to the network/subnet configured for the\nforwarding rule. By default, if this field is empty, an ephemeral\ninternal IP address will be automatically allocated from the IP\nrange of the subnet or network configured for this forwarding rule.", - "oneOf": [ - { - "required": [ - "addressRef" - ] - }, - { - "required": [ - "ip" - ] - } - ], "properties": { "addressRef": { "oneOf": [ @@ -128,15 +117,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `address` field of a `ComputeAddress` resource.", + "description": "The ComputeAddress selflink in the form \"projects/{{project}}/regions/{{region}}/addresses/{{name}}\" when not managed by Config Connector.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `ComputeAddress` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `ComputeAddress` resource.", "type": "string" } }, @@ -179,11 +168,11 @@ "items": { "properties": { "name": { - "description": "Immutable. Name of the metadata label. The length must be between\n1 and 1024 characters, inclusive.", + "description": "Immutable. Name of the metadata label. The length must be between 1 and 1024 characters, inclusive.", "type": "string" }, "value": { - "description": "Immutable. The value that the label must match. The value has a maximum\nlength of 1024 characters.", + "description": "Immutable. The value that the label must match. The value has a maximum length of 1024 characters.", "type": "string" } }, @@ -211,7 +200,7 @@ "type": "array" }, "networkRef": { - "description": "This field is not used for external load balancing. For internal\nload balancing, this field identifies the network that the load\nbalanced IP should belong to for this forwarding rule. If this\nfield is not specified, the default network will be used.", + "description": "This field is not used for external load balancing. For internal load balancing, this field identifies the network that the load balanced IP should belong to for this forwarding rule. If this field is not specified, the default network will be used.", "oneOf": [ { "not": { @@ -245,15 +234,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `ComputeNetwork` resource.", + "description": "A reference to an externally managed Compute Network resource. Should be in the format `projects//global/networks/`.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `ComputeNetwork` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `ComputeNetwork` resource.", "type": "string" } }, @@ -269,11 +258,11 @@ "type": "boolean" }, "portRange": { - "description": "Immutable. This field can only be used:\n\n* If 'IPProtocol' is one of TCP, UDP, or SCTP.\n* By backend service-based network load balancers, target pool-based\nnetwork load balancers, internal proxy load balancers, external proxy load\nbalancers, Traffic Director, external protocol forwarding, and Classic VPN.\nSome products have restrictions on what ports can be used. See\n[port specifications](https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#port_specifications)\nfor details.\n\n\nOnly packets addressed to ports in the specified range will be forwarded to\nthe backends configured with this forwarding rule.\n\nThe 'ports' and 'port_range' fields are mutually exclusive.\n\nFor external forwarding rules, two or more forwarding rules cannot use the\nsame '[IPAddress, IPProtocol]' pair, and cannot have\noverlapping 'portRange's.\n\nFor internal forwarding rules within the same VPC network, two or more\nforwarding rules cannot use the same '[IPAddress, IPProtocol]'\npair, and cannot have overlapping 'portRange's.", + "description": "Immutable. This field can only be used:\n\n* If 'IPProtocol' is one of TCP, UDP, or SCTP.\n* By backend service-based network load balancers, target pool-based\nnetwork load balancers, internal proxy load balancers, external proxy load\nbalancers, Traffic Director, external protocol forwarding, and Classic VPN.\nSome products have restrictions on what ports can be used. See\n[port specifications](https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#port_specifications)\nfor details.\n\nOnly packets addressed to ports in the specified range will be forwarded to\nthe backends configured with this forwarding rule.\n\nThe 'ports' and 'port_range' fields are mutually exclusive.\n\nFor external forwarding rules, two or more forwarding rules cannot use the\nsame '[IPAddress, IPProtocol]' pair, and cannot have\noverlapping 'portRange's.\n\nFor internal forwarding rules within the same VPC network, two or more\nforwarding rules cannot use the same '[IPAddress, IPProtocol]'\npair, and cannot have overlapping 'portRange's.", "type": "string" }, "ports": { - "description": "Immutable. This field can only be used:\n\n* If 'IPProtocol' is one of TCP, UDP, or SCTP.\n* By internal TCP/UDP load balancers, backend service-based network load\nbalancers, internal protocol forwarding and when protocol is not L3_DEFAULT.\n\n\nYou can specify a list of up to five ports by number, separated by commas.\nThe ports can be contiguous or discontiguous. Only packets addressed to\nthese ports will be forwarded to the backends configured with this\nforwarding rule.\n\nFor external forwarding rules, two or more forwarding rules cannot use the\nsame '[IPAddress, IPProtocol]' pair, and cannot share any values\ndefined in 'ports'.\n\nFor internal forwarding rules within the same VPC network, two or more\nforwarding rules cannot use the same '[IPAddress, IPProtocol]'\npair, and cannot share any values defined in 'ports'.\n\nThe 'ports' and 'port_range' fields are mutually exclusive.", + "description": "Immutable. This field can only be used:\n\n* If 'IPProtocol' is one of TCP, UDP, or SCTP.\n* By internal TCP/UDP load balancers, backend service-based network load\nbalancers, internal protocol forwarding and when protocol is not L3_DEFAULT.\n\nYou can specify a list of up to five ports by number, separated by commas.\nThe ports can be contiguous or discontiguous. Only packets addressed to\nthese ports will be forwarded to the backends configured with this\nforwarding rule.\n\nFor external forwarding rules, two or more forwarding rules cannot use the\nsame '[IPAddress, IPProtocol]' pair, and cannot share any values\ndefined in 'ports'.\n\nFor internal forwarding rules within the same VPC network, two or more\nforwarding rules cannot use the same '[IPAddress, IPProtocol]'\npair, and cannot share any values defined in 'ports'.\n\nThe 'ports' and 'port_range' fields are mutually exclusive.", "items": { "type": "string" }, @@ -347,15 +336,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `ComputeSubnetwork` resource.", + "description": "The ComputeSubnetwork selflink of form \"projects/{{project}}/regions/{{region}}/subnetworks/{{name}}\", when not managed by Config Connector.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `ComputeSubnetwork` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `ComputeSubnetwork` resource.", "type": "string" } }, @@ -363,45 +352,11 @@ "additionalProperties": false }, "target": { - "description": "The target resource to receive the matched traffic. The forwarded\ntraffic must be of a type appropriate to the target object. For\nINTERNAL_SELF_MANAGED load balancing, only HTTP and HTTPS targets\nare valid.", - "oneOf": [ - { - "required": [ - "serviceAttachmentRef" - ] - }, - { - "required": [ - "targetGRPCProxyRef" - ] - }, - { - "required": [ - "targetHTTPProxyRef" - ] - }, - { - "required": [ - "targetHTTPSProxyRef" - ] - }, - { - "required": [ - "targetSSLProxyRef" - ] - }, - { - "required": [ - "targetTCPProxyRef" - ] - }, - { - "required": [ - "targetVPNGatewayRef" - ] - } - ], + "description": "The target resource to receive the matched traffic. The forwarded traffic must be of a type appropriate to the target object. For INTERNAL_SELF_MANAGED load balancing, only HTTP and HTTPS targets are valid.", "properties": { + "googleAPIsBundle": { + "type": "string" + }, "serviceAttachmentRef": { "oneOf": [ { @@ -436,15 +391,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `ComputeServiceAttachment` resource.", + "description": "The ComputeServiceAttachment selflink in the form \"projects/{{project}}/regions/{{region}}/serviceAttachments/{{name}}\" when not managed by Config Connector.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `ComputeServiceAttachment` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `ComputeServiceAttachment` resource.", "type": "string" } }, @@ -485,15 +440,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `ComputeTargetGRPCProxy` resource.", + "description": "The ComputeTargetGrpcProxy selflink in the form \"projects/{{project}}/global/targetGrpcProxies/{{name}}\" when not managed by Config Connector.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `ComputeTargetGrpcProxy` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `ComputeTargetGrpcProxy` resource.", "type": "string" } }, @@ -534,15 +489,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `ComputeTargetHTTPProxy` resource.", + "description": "The ComputeTargetHTTPProxy selflink in the form \"projects/{{project}}/global/targetHttpProxies/{{name}}\" or \"projects/{{project}}/regions/{{region}}/targetHttpProxies/{{name}}\" when not managed by Config Connector.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `ComputeTargetHTTPProxy` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `ComputeTargetHTTPProxy` resource.", "type": "string" } }, @@ -583,15 +538,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `ComputeTargetHTTPSProxy` resource.", + "description": "The ComputeTargetHTTPSProxy selflink in the form \"projects/{{project}}/global/targetHttpProxies/{{name}}\" or \"projects/{{project}}/regions/{{region}}/targetHttpProxies/{{name}}\" when not managed by Config Connector.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `ComputeTargetHTTPSProxy` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `ComputeTargetHTTPSProxy` resource.", "type": "string" } }, @@ -632,15 +587,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `ComputeTargetSSLProxy` resource.", + "description": "The ComputeTargetSSLProxy selflink in the form \"projects/{{project}}/global/targetSslProxies/{{name}}\" when not managed by Config Connector.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `ComputeTargetSSLProxy` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `ComputeTargetSSLProxy` resource.", "type": "string" } }, @@ -681,15 +636,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `ComputeTargetTCPProxy` resource.", + "description": "The ComputeTargetTCPProxy selflink in the form \"projects/{{project}}/global/targetTcpProxies/{{name}}\" or \"projects/{{project}}/regions/{{region}}/targetTcpProxies/{{name}}\" when not managed by Config Connector.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `ComputeTargetTCPProxy` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `ComputeTargetTCPProxy` resource.", "type": "string" } }, @@ -730,15 +685,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `ComputeTargetVPNGateway` resource.", + "description": "The ComputeTargetVPNGateway selflink in the form \"projects/{{project}}/regions/{{region}}/targetVpnGateways/{{name}}\" when not managed by Config Connector.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `ComputeTargetVPNGateway` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `ComputeTargetVPNGateway` resource.", "type": "string" } }, @@ -763,7 +718,7 @@ "type": "string" }, "conditions": { - "description": "Conditions represent the latest available observation of the resource's current state.", + "description": "Conditions represent the latest available observations of the object's current state.", "items": { "properties": { "lastTransitionTime": { @@ -796,12 +751,17 @@ "description": "Creation timestamp in RFC3339 text format.", "type": "string" }, + "externalRef": { + "description": "A unique Config Connector specifier for the resource in GCP.", + "type": "string" + }, "labelFingerprint": { - "description": "The fingerprint used for optimistic locking of this resource. Used\ninternally during updates.", + "description": "The fingerprint used for optimistic locking of this resource. Used internally during updates.", "type": "string" }, "observedGeneration": { "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", "type": "integer" }, "pscConnectionId": { @@ -824,8 +784,5 @@ "additionalProperties": false } }, - "required": [ - "spec" - ], "type": "object" } diff --git a/compute.cnrm.cloud.google.com/computenetworkfirewallpolicy_v1beta1.json b/compute.cnrm.cloud.google.com/computenetworkfirewallpolicy_v1beta1.json index 8fa5321a..e3036794 100644 --- a/compute.cnrm.cloud.google.com/computenetworkfirewallpolicy_v1beta1.json +++ b/compute.cnrm.cloud.google.com/computenetworkfirewallpolicy_v1beta1.json @@ -127,7 +127,7 @@ "type": "integer" }, "ruleTupleCount": { - "description": "Total count of all firewall policy rule tuples. A firewall policy can not exceed a set number of tuples.", + "description": "Total count of all firewall policy rule tuples. A firewall policy cannot exceed a set number of tuples.", "type": "integer" }, "selfLink": { diff --git a/compute.cnrm.cloud.google.com/computetargethttpsproxy_v1beta1.json b/compute.cnrm.cloud.google.com/computetargethttpsproxy_v1beta1.json index 6b3c7bd6..070dc3a6 100644 --- a/compute.cnrm.cloud.google.com/computetargethttpsproxy_v1beta1.json +++ b/compute.cnrm.cloud.google.com/computetargethttpsproxy_v1beta1.json @@ -15,7 +15,7 @@ "properties": { "certificateManagerCertificates": { "items": { - "description": "URLs to certificate manager certificate resources that are used to authenticate connections between users and the load balancer.\nCurrently, you may specify up to 15 certificates. Certificate manager certificates do not apply when the load balancing scheme is set to INTERNAL_SELF_MANAGED.\nsslCertificates and certificateManagerCertificates fields can not be defined together.", + "description": "URLs to certificate manager certificate resources that are used to authenticate connections between users and the load balancer.\nCurrently, you may specify up to 15 certificates. Certificate manager certificates do not apply when the load balancing scheme is set to INTERNAL_SELF_MANAGED.\nsslCertificates and certificateManagerCertificates fields cannot be defined together.", "oneOf": [ { "not": { @@ -67,7 +67,7 @@ "type": "array" }, "certificateMapRef": { - "description": "A reference to the CertificateMap resource uri that identifies a\ncertificate map associated with the given target proxy. This field\ncan only be set for global target proxies. This field is only supported\nfor EXTERNAL and EXTERNAL_MANAGED load balancing schemes.\nFor INTERNAL_MANAGED, use certificateManagerCertificates instead.\nsslCertificates and certificateMap fields can not be defined together.", + "description": "A reference to the CertificateMap resource uri that identifies a\ncertificate map associated with the given target proxy. This field\ncan only be set for global target proxies. This field is only supported\nfor EXTERNAL and EXTERNAL_MANAGED load balancing schemes.\nFor INTERNAL_MANAGED, use certificateManagerCertificates instead.\nsslCertificates and certificateMap fields cannot be defined together.", "oneOf": [ { "not": { diff --git a/compute.cnrm.cloud.google.com/computetargettcpproxy_v1beta1.json b/compute.cnrm.cloud.google.com/computetargettcpproxy_v1beta1.json index 519e2372..d707278d 100644 --- a/compute.cnrm.cloud.google.com/computetargettcpproxy_v1beta1.json +++ b/compute.cnrm.cloud.google.com/computetargettcpproxy_v1beta1.json @@ -1,17 +1,19 @@ { + "description": "ComputeTargetTCPProxy is the Schema for the ComputeTargetTCPProxy API", "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/api-conventions.md#resources", + "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/api-conventions.md#types-kinds", + "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": "ComputeTargetTCPProxySpec defines the desired state of ComputeTargetTCPProxy", "properties": { "backendServiceRef": { "description": "A reference to the ComputeBackendService resource.", @@ -48,15 +50,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `ComputeBackendService` resource.", + "description": "The ComputeBackendService selflink in the form \"projects/{{project}}/global/backendServices/{{name}}\" or \"projects/{{project}}/regions/{{region}}/backendServices/{{name}}\" when not managed by Config Connector.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `ComputeBackendService` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `ComputeBackendService` resource.", "type": "string" } }, @@ -65,19 +67,41 @@ }, "description": { "description": "Immutable. An optional description of this resource.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "Description is immutable", + "rule": "self == oldSelf" + } + ] + }, + "location": { + "description": "The geographical location of the ComputeTargetTCPProxy. Reference: GCP definition of regions/zones (https://cloud.google.com/compute/docs/regions-zones/)", "type": "string" }, "proxyBind": { - "description": "Immutable. This field only applies when the forwarding rule that references\nthis target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED.", - "type": "boolean" + "description": "Immutable. This field only applies when the forwarding rule that references this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED.", + "type": "boolean", + "x-kubernetes-validations": [ + { + "message": "ProxyBind is immutable", + "rule": "self == oldSelf" + } + ] }, "proxyHeader": { - "description": "Specifies the type of proxy header to append before sending data to\nthe backend. Default value: \"NONE\" Possible values: [\"NONE\", \"PROXY_V1\"].", + "description": "Specifies the type of proxy header to append before sending data to the backend. Default value: \"NONE\" Possible values: [\"NONE\", \"PROXY_V1\"].", "type": "string" }, "resourceID": { - "description": "Immutable. Optional. The name of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default.", - "type": "string" + "description": "Immutable. The ComputeTargetTCPProxy name. If not given, the metadata.name will be used.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "ResourceID is immutable", + "rule": "self == oldSelf" + } + ] } }, "required": [ @@ -87,9 +111,10 @@ "additionalProperties": false }, "status": { + "description": "ComputeTargetTCPProxyStatus defines the config connector machine state of ComputeTargetTCPProxy", "properties": { "conditions": { - "description": "Conditions represent the latest available observation of the resource's current state.", + "description": "Conditions represent the latest available observations of the object's current state.", "items": { "properties": { "lastTransitionTime": { @@ -122,15 +147,22 @@ "description": "Creation timestamp in RFC3339 text format.", "type": "string" }, + "externalRef": { + "description": "A unique specifier for the ComputeTargetTCPProxy resource in GCP.", + "type": "string" + }, "observedGeneration": { "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", "type": "integer" }, "proxyId": { "description": "The unique identifier for the resource.", + "format": "int64", "type": "integer" }, "selfLink": { + "description": "The SelfLink for the resource.", "type": "string" } }, diff --git a/compute.cnrm.cloud.google.com/computeurlmap_v1beta1.json b/compute.cnrm.cloud.google.com/computeurlmap_v1beta1.json index 14349440..3c5d06ad 100644 --- a/compute.cnrm.cloud.google.com/computeurlmap_v1beta1.json +++ b/compute.cnrm.cloud.google.com/computeurlmap_v1beta1.json @@ -1947,7 +1947,7 @@ "type": "array" }, "ignoreCase": { - "description": "Specifies that prefixMatch and fullPathMatch matches are case sensitive.\nDefaults to false.", + "description": "Specifies that prefixMatch and fullPathMatch matches are case-sensitive.\nDefaults to false.", "type": "boolean" }, "metadataFilters": { diff --git a/container.cnrm.cloud.google.com/containercluster_v1beta1.json b/container.cnrm.cloud.google.com/containercluster_v1beta1.json index ad221a2a..21600326 100644 --- a/container.cnrm.cloud.google.com/containercluster_v1beta1.json +++ b/container.cnrm.cloud.google.com/containercluster_v1beta1.json @@ -1654,19 +1654,19 @@ "type": "array" }, "taint": { - "description": "Immutable. List of Kubernetes taints to be applied to each node.", + "description": "List of Kubernetes taints to be applied to each node.", "items": { "properties": { "effect": { - "description": "Immutable. Effect for taint.", + "description": "Effect for taint.", "type": "string" }, "key": { - "description": "Immutable. Key for taint.", + "description": "Key for taint.", "type": "string" }, "value": { - "description": "Immutable. Value for taint.", + "description": "Value for taint.", "type": "string" } }, @@ -1776,7 +1776,7 @@ "description": "Allows filtering to one or more specific event types. If event types are present, those and only those event types will be transmitted to the cluster. Other types will be skipped. If no filter is specified, or no event types are present, all event types will be sent.", "properties": { "eventType": { - "description": "Can be used to filter what notifications are sent. Valid values include include UPGRADE_AVAILABLE_EVENT, UPGRADE_EVENT and SECURITY_BULLETIN_EVENT.", + "description": "Can be used to filter what notifications are sent. Valid values include UPGRADE_AVAILABLE_EVENT, UPGRADE_EVENT and SECURITY_BULLETIN_EVENT.", "items": { "type": "string" }, @@ -2060,7 +2060,7 @@ "description": "If set, and enabled=true, services with external ips field will not be blocked.", "properties": { "enabled": { - "description": "When enabled, services with exterenal ips specified will be allowed.", + "description": "When enabled, services with external ips specified will be allowed.", "type": "boolean" } }, diff --git a/container.cnrm.cloud.google.com/containernodepool_v1beta1.json b/container.cnrm.cloud.google.com/containernodepool_v1beta1.json index 199b4623..27133093 100644 --- a/container.cnrm.cloud.google.com/containernodepool_v1beta1.json +++ b/container.cnrm.cloud.google.com/containernodepool_v1beta1.json @@ -880,19 +880,19 @@ "type": "array" }, "taint": { - "description": "Immutable. List of Kubernetes taints to be applied to each node.", + "description": "List of Kubernetes taints to be applied to each node.", "items": { "properties": { "effect": { - "description": "Immutable. Effect for taint.", + "description": "Effect for taint.", "type": "string" }, "key": { - "description": "Immutable. Key for taint.", + "description": "Key for taint.", "type": "string" }, "value": { - "description": "Immutable. Value for taint.", + "description": "Value for taint.", "type": "string" } }, diff --git a/containerattached.cnrm.cloud.google.com/containerattachedcluster_v1beta1.json b/containerattached.cnrm.cloud.google.com/containerattachedcluster_v1beta1.json index 2a79ade4..1eaa1e79 100644 --- a/containerattached.cnrm.cloud.google.com/containerattachedcluster_v1beta1.json +++ b/containerattached.cnrm.cloud.google.com/containerattachedcluster_v1beta1.json @@ -1,30 +1,32 @@ { + "description": "ContainerAttachedCluster is the Schema for the ContainerAttachedCluster API", "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/api-conventions.md#resources", + "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/api-conventions.md#types-kinds", + "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": "ContainerAttachedClusterSpec defines the desired state of ContainerAttachedCluster", "properties": { "annotations": { "additionalProperties": { "type": "string" }, - "description": "Optional. Annotations on the cluster. This field has the same\nrestrictions as Kubernetes annotations. The total size of all keys and\nvalues combined is limited to 256k. Key can have 2 segments: prefix (optional)\nand name (required), separated by a slash (/). Prefix must be a DNS subdomain.\nName must be 63 characters or less, begin and end with alphanumerics,\nwith dashes (-), underscores (_), dots (.), and alphanumerics between.", + "description": "Optional. Annotations on the cluster.\n\n This field has the same restrictions as Kubernetes annotations.\n The total size of all keys and values combined is limited to 256k.\n Key can have 2 segments: prefix (optional) and name (required),\n separated by a slash (/).\n Prefix must be a DNS subdomain.\n Name must be 63 characters or less, begin and end with alphanumerics,\n with dashes (-), underscores (_), dots (.), and alphanumerics between.", "type": "object" }, "authorization": { - "description": "Configuration related to the cluster RBAC settings.", + "description": "Optional. Configuration related to the cluster RBAC settings.", "properties": { "adminUsers": { - "description": "Users that can perform operations as a cluster admin. A managed\nClusterRoleBinding will be created to grant the 'cluster-admin' ClusterRole\nto the users. Up to ten admin users can be provided.\n\nFor more info on RBAC, see\nhttps://kubernetes.io/docs/reference/access-authn-authz/rbac/#user-facing-roles.", + "description": "Optional. Users that can perform operations as a cluster admin. A managed\n ClusterRoleBinding will be created to grant the `cluster-admin` ClusterRole\n to the users. Up to ten admin users can be provided.\n\n For more info on RBAC, see\n https://kubernetes.io/docs/reference/access-authn-authz/rbac/#user-facing-roles", "items": { "type": "string" }, @@ -35,10 +37,10 @@ "additionalProperties": false }, "binaryAuthorization": { - "description": "Binary Authorization configuration.", + "description": "Optional. Binary Authorization configuration for this cluster.", "properties": { "evaluationMode": { - "description": "Configure Binary Authorization evaluation mode. Possible values: [\"DISABLED\", \"PROJECT_SINGLETON_POLICY_ENFORCE\"].", + "description": "Mode of operation for binauthz policy evaluation. If unspecified, defaults to DISABLED. Possible values: [\"DISABLED\", \"PROJECT_SINGLETON_POLICY_ENFORCE\"].", "type": "string" } }, @@ -46,26 +48,32 @@ "additionalProperties": false }, "deletionPolicy": { - "description": "Policy to determine what flags to send on delete.", + "description": "Optional. Policy to determine what flags to send on delete.", "type": "string" }, "description": { - "description": "A human readable description of this attached cluster. Cannot be longer\nthan 255 UTF-8 encoded bytes.", + "description": "Optional. A human readable description of this Attached cluster. Cannot be longer than 255 UTF-8 encoded bytes.", "type": "string" }, "distribution": { - "description": "Immutable. The Kubernetes distribution of the underlying attached cluster. Supported values:\n\"eks\", \"aks\".", - "type": "string" + "description": "Immutable. The Kubernetes distribution of the underlying attached cluster.\n\n Supported values: [\"eks\", \"aks\", \"generic\"].", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "Distribution field is immutable", + "rule": "self == oldSelf" + } + ] }, "fleet": { - "description": "Fleet configuration.", + "description": "Required. Fleet configuration.", "properties": { "membership": { - "description": "The name of the managed Hub Membership resource associated to this\ncluster. Membership names are formatted as\nprojects//locations/global/membership/.", + "description": "Output only. The name of the managed Hub Membership resource associated to\n this cluster.\n\n Membership names are formatted as\n `projects//locations/global/membership/`.", "type": "string" }, "projectRef": { - "description": "The number of the Fleet host project where this cluster will be registered.", + "description": "The id of the Fleet host project where this cluster will be registered.", "oneOf": [ { "not": { @@ -99,15 +107,15 @@ ], "properties": { "external": { - "description": "Allowed value: string of the format `projects/{{value}}`, where {{value}} is the `number` field of a `Project` resource.", + "description": "The project of the fleet. Allowed value: The Google Cloud resource name of a `Project` resource (format: `projects/{{name}}`).", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "Name of the project resource. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "Namespace of the project resource. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", "type": "string" } }, @@ -123,13 +131,19 @@ }, "location": { "description": "Immutable. The location for the resource.", - "type": "string" + "type": "string", + "x-kubernetes-validations": [ + { + "message": "Location field is immutable", + "rule": "self == oldSelf" + } + ] }, "loggingConfig": { - "description": "Logging configuration.", + "description": "Optional. Logging configuration for this cluster.", "properties": { "componentConfig": { - "description": "The configuration of the logging components.", + "description": "The configuration of the logging components;", "properties": { "enableComponents": { "description": "The components to be enabled. Possible values: [\"SYSTEM_COMPONENTS\", \"WORKLOADS\"].", @@ -147,7 +161,7 @@ "additionalProperties": false }, "monitoringConfig": { - "description": "Monitoring configuration.", + "description": "Optional. Monitoring configuration for this cluster.", "properties": { "managedPrometheusConfig": { "description": "Enable Google Cloud Managed Service for Prometheus in the cluster.", @@ -165,29 +179,48 @@ "additionalProperties": false }, "oidcConfig": { - "description": "OIDC discovery information of the target cluster.\n\nKubernetes Service Account (KSA) tokens are JWT tokens signed by the cluster\nAPI server. This fields indicates how GCP services\nvalidate KSA tokens in order to allow system workloads (such as GKE Connect\nand telemetry agents) to authenticate back to GCP.\n\nBoth clusters with public and private issuer URLs are supported.\nClusters with public issuers only need to specify the 'issuer_url' field\nwhile clusters with private issuers need to provide both\n'issuer_url' and 'jwks'.", + "description": "Required. OpenID Connect (OIDC) discovery information of the target cluster.\n\nKubernetes Service Account (KSA) tokens are JWT tokens signed by the cluster\nAPI server. This field indicates how GCP services\tvalidate KSA tokens in order\nto allow system workloads (such as GKE Connect and telemetry agents) to\nauthenticate back to GCP.\n\nBoth clusters with public and private issuer URLs are supported.\nClusters with public issuers only need to specify the 'issuerUrl' field\nwhile clusters with private issuers need to provide both 'issuerUrl' and 'jwks'.", "properties": { "issuerUrl": { - "description": "Immutable. A JSON Web Token (JWT) issuer URI. 'issuer' must start with 'https://'.", - "type": "string" + "description": "Immutable. A JSON Web Token (JWT) issuer URI. `issuer` must start with `https://`.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "IssuerURL field is immutable", + "rule": "self == oldSelf" + } + ] }, "jwks": { - "description": "Immutable. OIDC verification keys in JWKS format (RFC 7517).", - "type": "string" + "description": "Immutable, Optional. OIDC verification keys in JWKS format (RFC 7517).\n It contains a list of OIDC verification keys that can be used to verify\n OIDC JWTs.\n\n This field is required for cluster that doesn't have a publicly available\n discovery endpoint. When provided, it will be directly used\n to verify the OIDC JWT asserted by the IDP.", + "format": "byte", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "Jwks field is immutable", + "rule": "self == oldSelf" + } + ] } }, "required": [ "issuerUrl" ], "type": "object", + "x-kubernetes-validations": [ + { + "message": "OidcConfig field is immutable", + "rule": "self == oldSelf" + } + ], "additionalProperties": false }, "platformVersion": { - "description": "The platform version for the cluster (e.g. '1.23.0-gke.1').", + "description": "Required. The platform version for the cluster (e.g. `1.30.0-gke.1`).", "type": "string" }, "projectRef": { - "description": "The ID of the project in which the resource belongs. If it is not provided, the provider project is used.", + "description": "The ID of the project in which the resource belongs.", "oneOf": [ { "not": { @@ -221,15 +254,19 @@ ], "properties": { "external": { - "description": "Allowed value: The `name` field of a `Project` resource.", + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `Project` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `Project` resource.", "type": "string" } }, @@ -237,8 +274,14 @@ "additionalProperties": false }, "resourceID": { - "description": "Immutable. Optional. The name of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default.", - "type": "string" + "description": "Immutable, Optional. The ContainerAttachedCluster name. If not given, the metadata.name will be used.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "ResourceID field is immutable", + "rule": "self == oldSelf" + } + ] } }, "required": [ @@ -253,13 +296,14 @@ "additionalProperties": false }, "status": { + "description": "ContainerAttachedClusterStatus defines the config connector machine state of ContainerAttachedCluster", "properties": { "clusterRegion": { - "description": "Output only. The region where this cluster runs.\n\nFor EKS clusters, this is an AWS region. For AKS clusters,\nthis is an Azure region.", + "description": "The region where this cluster runs.\n\n For EKS clusters, this is an AWS region. For AKS clusters,\n this is an Azure region.", "type": "string" }, "conditions": { - "description": "Conditions represent the latest available observation of the resource's current state.", + "description": "Conditions represent the latest available observations of the object's current state.", "items": { "properties": { "lastTransitionTime": { @@ -289,7 +333,7 @@ "type": "array" }, "createTime": { - "description": "Output only. The time at which this cluster was created.", + "description": "The time at which this cluster was registered.", "type": "string" }, "errors": { @@ -312,14 +356,26 @@ }, "observedGeneration": { "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", "type": "integer" }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "fleetMembership": { + "description": "Output only. The name of the managed Hub Membership resource associated to\n this cluster.\n\n Membership names are formatted as\n `projects//locations/global/membership/`.\n This field mirrors the Spec.Fleet.Membership field.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, "reconciling": { "description": "If set, there are currently changes in flight to the cluster.", "type": "boolean" }, "state": { - "description": "The current state of the cluster. Possible values:\nSTATE_UNSPECIFIED, PROVISIONING, RUNNING, RECONCILING, STOPPING, ERROR,\nDEGRADED.", + "description": "The current state of the cluster. Possible values:\tSTATE_UNSPECIFIED, PROVISIONING, RUNNING, RECONCILING, STOPPING, ERROR,\tDEGRADED.", "type": "string" }, "uid": { @@ -335,7 +391,7 @@ "items": { "properties": { "identityProvider": { - "description": "The ID of the OIDC Identity Provider (IdP) associated to\nthe Workload Identity Pool.", + "description": "The ID of the OIDC Identity Provider (IdP) associated to the Workload Identity Pool.", "type": "string" }, "issuerUri": { diff --git a/datacatalog.cnrm.cloud.google.com/datacatalogentry_v1alpha1.json b/datacatalog.cnrm.cloud.google.com/datacatalogentry_v1alpha1.json index 1600dae8..b35f9acd 100644 --- a/datacatalog.cnrm.cloud.google.com/datacatalogentry_v1alpha1.json +++ b/datacatalog.cnrm.cloud.google.com/datacatalogentry_v1alpha1.json @@ -81,11 +81,11 @@ "type": "string" }, "userSpecifiedSystem": { - "description": "This field indicates the entry's source system that Data Catalog does not integrate with.\nuserSpecifiedSystem strings must begin with a letter or underscore and can only contain letters, numbers,\nand underscores; are case insensitive; must be at least 1 character and at most 64 characters long.", + "description": "This field indicates the entry's source system that Data Catalog does not integrate with.\nuserSpecifiedSystem strings must begin with a letter or underscore and can only contain letters, numbers,\nand underscores; are case-insensitive; must be at least 1 character and at most 64 characters long.", "type": "string" }, "userSpecifiedType": { - "description": "Entry type if it does not fit any of the input-allowed values listed in EntryType enum above.\nWhen creating an entry, users should check the enum values first, if nothing matches the entry\nto be created, then provide a custom value, for example \"my_special_type\".\nuserSpecifiedType strings must begin with a letter or underscore and can only contain letters,\nnumbers, and underscores; are case insensitive; must be at least 1 character and at most 64 characters long.", + "description": "Entry type if it does not fit any of the input-allowed values listed in EntryType enum above.\nWhen creating an entry, users should check the enum values first, if nothing matches the entry\nto be created, then provide a custom value, for example \"my_special_type\".\nuserSpecifiedType strings must begin with a letter or underscore and can only contain letters,\nnumbers, and underscores; are case-insensitive; must be at least 1 character and at most 64 characters long.", "type": "string" } }, diff --git a/dataflow.cnrm.cloud.google.com/dataflowflextemplatejob_v1beta1.json b/dataflow.cnrm.cloud.google.com/dataflowflextemplatejob_v1beta1.json index 53345695..54df9498 100644 --- a/dataflow.cnrm.cloud.google.com/dataflowflextemplatejob_v1beta1.json +++ b/dataflow.cnrm.cloud.google.com/dataflowflextemplatejob_v1beta1.json @@ -1,42 +1,45 @@ { + "description": "DataflowFlexTemplateJob is the Schema for the DataflowFlexTemplateJob API", "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/api-conventions.md#resources", + "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/api-conventions.md#types-kinds", + "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": "DataflowFlexTemplateJobSpec defines the desired state of DataflowFlexTemplateJob", "properties": { "additionalExperiments": { - "description": "List of experiments that should be used by the job. An example value is [\"enable_stackdriver_agent_metrics\"].", + "description": "Additional experiment flags for the job.", "items": { "type": "string" }, "type": "array" }, "autoscalingAlgorithm": { - "description": "The algorithm to use for autoscaling.", + "description": "The algorithm to use for autoscaling", "type": "string" }, "containerSpecGcsPath": { + "description": "Cloud Storage path to a file with json serialized ContainerSpec as content.", "type": "string" }, "enableStreamingEngine": { - "description": "Immutable. Indicates if the job should use the streaming engine feature.", + "description": "Whether to enable Streaming Engine for the job.", "type": "boolean" }, "ipConfiguration": { - "description": "The configuration for VM IPs. Options are \"WORKER_IP_PUBLIC\" or \"WORKER_IP_PRIVATE\".", + "description": "Configuration for VM IPs.", "type": "string" }, "kmsKeyNameRef": { - "description": "The name for the Cloud KMS key for the job.", + "description": "The Cloud KMS key for the job.", "oneOf": [ { "not": { @@ -70,15 +73,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `KMSCryptoKey` resource.", + "description": "A reference to an externally managed KMSCryptoKey. Should be in the format `projects/[kms_project_id]/locations/[region]/keyRings/[key_ring_id]/cryptoKeys/[key]`.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` of a `KMSCryptoKey` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` of a `KMSCryptoKey` resource.", "type": "string" } }, @@ -90,14 +93,16 @@ "type": "string" }, "machineType": { - "description": "The machine type to use for the job.", + "description": "The machine type to use for the job. Defaults to the value from the template if not specified.", "type": "string" }, "maxWorkers": { - "description": "Immutable. The maximum number of Google Compute Engine instances to be made available to your pipeline during execution, from 1 to 1000.", + "description": "The maximum number of Google Compute Engine instances to be made available to your pipeline during execution, from 1 to 1000.", + "format": "int32", "type": "integer" }, "networkRef": { + "description": "Network to which VMs will be assigned. If empty or unspecified, the service will use the network \"default\".", "oneOf": [ { "not": { @@ -131,15 +136,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `ComputeNetwork` resource.", + "description": "A reference to an externally managed Compute Network resource. Should be in the format `projects//global/networks/`.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `ComputeNetwork` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `ComputeNetwork` resource.", "type": "string" } }, @@ -147,10 +152,12 @@ "additionalProperties": false }, "numWorkers": { - "description": "Immutable. The initial number of Google Compute Engine instances for the job.", + "description": "The initial number of Google Compute Engine instances for the job.", + "format": "int32", "type": "integer" }, "parameters": { + "description": "The parameters for FlexTemplate. Ex. {\"num_workers\":\"5\"}", "type": "object", "x-kubernetes-preserve-unknown-fields": true }, @@ -163,6 +170,7 @@ "type": "string" }, "serviceAccountEmailRef": { + "description": "The email address of the service account to run the job as.", "oneOf": [ { "not": { @@ -196,7 +204,7 @@ ], "properties": { "external": { - "description": "Allowed value: The `email` field of an `IAMServiceAccount` resource.", + "description": "The `email` field of an `IAMServiceAccount` resource.", "type": "string" }, "name": { @@ -212,10 +220,11 @@ "additionalProperties": false }, "stagingLocation": { - "description": "The Cloud Storage path to use for staging files. Must be a valid Cloud Storage URL, beginning with gs://.", + "description": "The Cloud Storage path for staging local files. Must be a valid Cloud Storage URL, beginning with `gs://`.", "type": "string" }, "subnetworkRef": { + "description": "Subnetwork to which VMs will be assigned, if desired. You can specify a subnetwork using either a complete URL or an abbreviated path. Expected to be of the form \"https://www.googleapis.com/compute/v1/projects/HOST_PROJECT_ID/regions/REGION/subnetworks/SUBNETWORK\" or \"regions/REGION/subnetworks/SUBNETWORK\". If the subnetwork is located in a Shared VPC network, you must use the complete URL.", "oneOf": [ { "not": { @@ -249,15 +258,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `ComputeSubnetwork` resource.", + "description": "The ComputeSubnetwork selflink of form \"projects/{{project}}/regions/{{region}}/subnetworks/{{name}}\", when not managed by Config Connector.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `ComputeSubnetwork` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `ComputeSubnetwork` resource.", "type": "string" } }, @@ -265,11 +274,11 @@ "additionalProperties": false }, "tempLocation": { - "description": "The Cloud Storage path to use for temporary files. Must be a valid Cloud Storage URL, beginning with gs://.", + "description": "The Cloud Storage path to use for temporary files. Must be a valid Cloud Storage URL, beginning with `gs://`.", "type": "string" }, "transformNameMapping": { - "description": "Only applicable when updating a pipeline. Map of transform name prefixes of the job to be replaced with the corresponding name prefixes of the new job.", + "description": "Map of transform name prefixes of the job to be replaced with the corresponding name prefixes of the new job. Only applicable when updating a pipeline.", "type": "object", "x-kubernetes-preserve-unknown-fields": true } @@ -281,9 +290,10 @@ "additionalProperties": false }, "status": { + "description": "DataflowFlexTemplateJobStatus defines the config connector machine state of DataflowFlexTemplateJob", "properties": { "conditions": { - "description": "Conditions represent the latest available observation of the resource's current state.", + "description": "Conditions represent the latest available observations of the object's current state.", "items": { "properties": { "lastTransitionTime": { @@ -317,13 +327,15 @@ }, "observedGeneration": { "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", "type": "integer" }, "state": { + "description": "The current state of the job.\n\n Jobs are created in the `JOB_STATE_STOPPED` state unless otherwise\n specified.\n\n A job in the `JOB_STATE_RUNNING` state may asynchronously enter a\n terminal state. After a job has reached a terminal state, no\n further state updates may be made.\n\n This field may be mutated by the Cloud Dataflow service;\n callers cannot mutate it.", "type": "string" }, "type": { - "description": "The type of this job, selected from the JobType enum.", + "description": "The type of Cloud Dataflow job.", "type": "string" } }, diff --git a/dataform.cnrm.cloud.google.com/dataformrepository_v1alpha1.json b/dataform.cnrm.cloud.google.com/dataformrepository_v1alpha1.json index 01ab5bd3..d84bc890 100644 --- a/dataform.cnrm.cloud.google.com/dataformrepository_v1alpha1.json +++ b/dataform.cnrm.cloud.google.com/dataformrepository_v1alpha1.json @@ -1,11 +1,12 @@ { + "description": "DataformRepository is the Schema for the dataform API", "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/api-conventions.md#resources", + "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/api-conventions.md#types-kinds", + "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": { @@ -13,20 +14,131 @@ }, "spec": { "properties": { + "displayName": { + "description": "Optional. The repository's user-friendly name.", + "type": "string" + }, "gitRemoteSettings": { "description": "Optional. If set, configures this repository to be linked to a Git remote.", "properties": { - "authenticationTokenSecretVersion": { - "description": "The name of the Secret Manager secret version to use as an authentication token for Git operations. Must be in the format projects/*/secrets/*/versions/*.", - "type": "string" + "authenticationTokenSecretVersionRef": { + "description": "The name of the Secret Manager secret version to use as an authentication token for Git operations. Must be in the format projects/* /secrets/* /versions/*.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": " If provided must be in the format `projects/*/secrets/*/versions/*`.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `SecretManagerSecretVersion` resource.", + "type": "string" + }, + "namespace": { + "description": "The `metadata.namespace` field of a `SecretManagerSecretVersion` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false }, "defaultBranch": { "description": "The Git remote's default branch name.", "type": "string" }, - "tokenStatus": { - "description": "Indicates the status of the Git access token. https://cloud.google.com/dataform/reference/rest/v1beta1/projects.locations.repositories#TokenStatus.", - "type": "string" + "sshAuthenticationConfig": { + "description": "Authentication fields for remote uris using SSH protocol.", + "properties": { + "hostPublicKey": { + "description": "Content of a public SSH key to verify an identity of a remote Git host.", + "type": "string" + }, + "userPrivateKeySecretVersionRef": { + "description": "The name of the Secret Manager secret version to use as a ssh private key for Git operations. Must be in the format projects/*/secrets/*/versions/* .", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": " If provided must be in the format `projects/*/secrets/*/versions/*`.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `SecretManagerSecretVersion` resource.", + "type": "string" + }, + "namespace": { + "description": "The `metadata.namespace` field of a `SecretManagerSecretVersion` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "hostPublicKey", + "userPrivateKeySecretVersionRef" + ], + "type": "object", + "additionalProperties": false }, "url": { "description": "The Git remote's URL.", @@ -34,13 +146,62 @@ } }, "required": [ - "authenticationTokenSecretVersion", "defaultBranch", "url" ], "type": "object", "additionalProperties": false }, + "npmrcEnvironmentVariablesSecretVersionRef": { + "description": "Optional. The name of the Secret Manager secret version to be used to interpolate variables into the .npmrc file for package installation operations.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": " If provided must be in the format `projects/*/secrets/*/versions/*`.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `SecretManagerSecretVersion` resource.", + "type": "string" + }, + "namespace": { + "description": "The `metadata.namespace` field of a `SecretManagerSecretVersion` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, "projectRef": { "description": "The project that this resource belongs to.", "oneOf": [ @@ -76,15 +237,19 @@ ], "properties": { "external": { - "description": "Allowed value: The `name` field of a `Project` resource.", + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `Project` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `Project` resource.", "type": "string" } }, @@ -99,6 +264,60 @@ "description": "Immutable. Optional. The name of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default.", "type": "string" }, + "serviceAccountRef": { + "description": "Optional. The service account reference to run workflow invocations under.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `email` field of an `IAMServiceAccount` resource.", + "type": "string" + }, + "name": { + "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "type": "string" + }, + "namespace": { + "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "setAuthenticatedUserAdmin": { + "description": "Optional. Input only. If set to true, the authenticated user will be granted the roles/dataform.admin role on the created repository.", + "type": "boolean" + }, "workspaceCompilationOverrides": { "description": "Optional. If set, fields of workspaceCompilationOverrides override the default compilation settings that are specified in dataform.json when creating workspace-scoped compilation results.", "properties": { @@ -129,7 +348,7 @@ "status": { "properties": { "conditions": { - "description": "Conditions represent the latest available observation of the resource's current state.", + "description": "Conditions represent the latest available observations of the DataformRepository's current state.", "items": { "properties": { "lastTransitionTime": { @@ -158,9 +377,18 @@ }, "type": "array" }, + "externalRef": { + "description": "A unique specifier for the DataformReposity resource in GCP.", + "type": "string" + }, "observedGeneration": { "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "type": "object" } }, "type": "object", diff --git a/dataform.cnrm.cloud.google.com/dataformrepository_v1beta1.json b/dataform.cnrm.cloud.google.com/dataformrepository_v1beta1.json new file mode 100644 index 00000000..d84bc890 --- /dev/null +++ b/dataform.cnrm.cloud.google.com/dataformrepository_v1beta1.json @@ -0,0 +1,402 @@ +{ + "description": "DataformRepository is the Schema for the dataform API", + "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": { + "properties": { + "displayName": { + "description": "Optional. The repository's user-friendly name.", + "type": "string" + }, + "gitRemoteSettings": { + "description": "Optional. If set, configures this repository to be linked to a Git remote.", + "properties": { + "authenticationTokenSecretVersionRef": { + "description": "The name of the Secret Manager secret version to use as an authentication token for Git operations. Must be in the format projects/* /secrets/* /versions/*.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": " If provided must be in the format `projects/*/secrets/*/versions/*`.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `SecretManagerSecretVersion` resource.", + "type": "string" + }, + "namespace": { + "description": "The `metadata.namespace` field of a `SecretManagerSecretVersion` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "defaultBranch": { + "description": "The Git remote's default branch name.", + "type": "string" + }, + "sshAuthenticationConfig": { + "description": "Authentication fields for remote uris using SSH protocol.", + "properties": { + "hostPublicKey": { + "description": "Content of a public SSH key to verify an identity of a remote Git host.", + "type": "string" + }, + "userPrivateKeySecretVersionRef": { + "description": "The name of the Secret Manager secret version to use as a ssh private key for Git operations. Must be in the format projects/*/secrets/*/versions/* .", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": " If provided must be in the format `projects/*/secrets/*/versions/*`.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `SecretManagerSecretVersion` resource.", + "type": "string" + }, + "namespace": { + "description": "The `metadata.namespace` field of a `SecretManagerSecretVersion` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "hostPublicKey", + "userPrivateKeySecretVersionRef" + ], + "type": "object", + "additionalProperties": false + }, + "url": { + "description": "The Git remote's URL.", + "type": "string" + } + }, + "required": [ + "defaultBranch", + "url" + ], + "type": "object", + "additionalProperties": false + }, + "npmrcEnvironmentVariablesSecretVersionRef": { + "description": "Optional. The name of the Secret Manager secret version to be used to interpolate variables into the .npmrc file for package installation operations.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": " If provided must be in the format `projects/*/secrets/*/versions/*`.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `SecretManagerSecretVersion` resource.", + "type": "string" + }, + "namespace": { + "description": "The `metadata.namespace` field of a `SecretManagerSecretVersion` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "projectRef": { + "description": "The project that this resource belongs to.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `Project` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `Project` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "region": { + "description": "Immutable. A reference to the region.", + "type": "string" + }, + "resourceID": { + "description": "Immutable. Optional. The name of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default.", + "type": "string" + }, + "serviceAccountRef": { + "description": "Optional. The service account reference to run workflow invocations under.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `email` field of an `IAMServiceAccount` resource.", + "type": "string" + }, + "name": { + "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "type": "string" + }, + "namespace": { + "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "setAuthenticatedUserAdmin": { + "description": "Optional. Input only. If set to true, the authenticated user will be granted the roles/dataform.admin role on the created repository.", + "type": "boolean" + }, + "workspaceCompilationOverrides": { + "description": "Optional. If set, fields of workspaceCompilationOverrides override the default compilation settings that are specified in dataform.json when creating workspace-scoped compilation results.", + "properties": { + "defaultDatabase": { + "description": "Optional. The default database (Google Cloud project ID).", + "type": "string" + }, + "schemaSuffix": { + "description": "Optional. The suffix that should be appended to all schema (BigQuery dataset ID) names.", + "type": "string" + }, + "tablePrefix": { + "description": "Optional. The prefix that should be prepended to all table names.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "projectRef", + "region" + ], + "type": "object", + "additionalProperties": false + }, + "status": { + "properties": { + "conditions": { + "description": "Conditions represent the latest available observations of the DataformRepository's current state.", + "items": { + "properties": { + "lastTransitionTime": { + "description": "Last time the condition transitioned from one status to another.", + "type": "string" + }, + "message": { + "description": "Human-readable message indicating details about last transition.", + "type": "string" + }, + "reason": { + "description": "Unique, one-word, CamelCase reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Status is the status of the condition. Can be True, False, Unknown.", + "type": "string" + }, + "type": { + "description": "Type is the type of the condition.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "externalRef": { + "description": "A unique specifier for the DataformReposity resource in GCP.", + "type": "string" + }, + "observedGeneration": { + "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", + "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "type": "object" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "spec" + ], + "type": "object" +} diff --git a/dialogflowcx.cnrm.cloud.google.com/dialogflowcxflow_v1alpha1.json b/dialogflowcx.cnrm.cloud.google.com/dialogflowcxflow_v1alpha1.json index e501922f..1ed2f0ec 100644 --- a/dialogflowcx.cnrm.cloud.google.com/dialogflowcxflow_v1alpha1.json +++ b/dialogflowcx.cnrm.cloud.google.com/dialogflowcxflow_v1alpha1.json @@ -246,7 +246,7 @@ "type": "array" }, "transitionRoutes": { - "description": "A flow's transition routes serve two purposes:\nThey are responsible for matching the user's first utterances in the flow.\nThey are inherited by every page's [transition routes][Page.transition_routes] and can support use cases such as the user saying \"help\" or \"can I talk to a human?\", which can be handled in a common way regardless of the current page. Transition routes defined in the page have higher priority than those defined in the flow.\n\nTransitionRoutes are evalauted in the following order:\n TransitionRoutes with intent specified.\n TransitionRoutes with only condition specified.\n TransitionRoutes with intent specified are inherited by pages in the flow.", + "description": "A flow's transition routes serve two purposes:\nThey are responsible for matching the user's first utterances in the flow.\nThey are inherited by every page's [transition routes][Page.transition_routes] and can support use cases such as the user saying \"help\" or \"can I talk to a human?\", which can be handled in a common way regardless of the current page. Transition routes defined in the page have higher priority than those defined in the flow.\n\nTransitionRoutes are evaluated in the following order:\n TransitionRoutes with intent specified.\n TransitionRoutes with only condition specified.\n TransitionRoutes with intent specified are inherited by pages in the flow.", "items": { "properties": { "condition": { diff --git a/dialogflowcx.cnrm.cloud.google.com/dialogflowcxpage_v1alpha1.json b/dialogflowcx.cnrm.cloud.google.com/dialogflowcxpage_v1alpha1.json index 3972260a..eff5bbad 100644 --- a/dialogflowcx.cnrm.cloud.google.com/dialogflowcxpage_v1alpha1.json +++ b/dialogflowcx.cnrm.cloud.google.com/dialogflowcxpage_v1alpha1.json @@ -777,7 +777,7 @@ "type": "array" }, "transitionRoutes": { - "description": "A list of transitions for the transition rules of this page. They route the conversation to another page in the same flow, or another flow.\nWhen we are in a certain page, the TransitionRoutes are evalauted in the following order:\nTransitionRoutes defined in the page with intent specified.\nTransitionRoutes defined in the transition route groups with intent specified.\nTransitionRoutes defined in flow with intent specified.\nTransitionRoutes defined in the transition route groups with intent specified.\nTransitionRoutes defined in the page with only condition specified.\nTransitionRoutes defined in the transition route groups with only condition specified.", + "description": "A list of transitions for the transition rules of this page. They route the conversation to another page in the same flow, or another flow.\nWhen we are in a certain page, the TransitionRoutes are evaluated in the following order:\nTransitionRoutes defined in the page with intent specified.\nTransitionRoutes defined in the transition route groups with intent specified.\nTransitionRoutes defined in flow with intent specified.\nTransitionRoutes defined in the transition route groups with intent specified.\nTransitionRoutes defined in the page with only condition specified.\nTransitionRoutes defined in the transition route groups with only condition specified.", "items": { "properties": { "condition": { diff --git a/discoveryengine.cnrm.cloud.google.com/discoveryenginedatastore_v1alpha1.json b/discoveryengine.cnrm.cloud.google.com/discoveryenginedatastore_v1alpha1.json new file mode 100644 index 00000000..fbbd947e --- /dev/null +++ b/discoveryengine.cnrm.cloud.google.com/discoveryenginedatastore_v1alpha1.json @@ -0,0 +1,253 @@ +{ + "description": "DiscoveryEngineDataStore is the Schema for the DiscoveryEngineDataStore API", + "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": "DiscoveryEngineDataStoreSpec defines the desired state of DiscoveryEngineDataStore", + "properties": { + "collection": { + "description": "Immutable. The collection for the DataStore.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "Collection field is immutable", + "rule": "self == oldSelf" + } + ] + }, + "contentConfig": { + "description": "Immutable. The content config of the data store. If this field is unset, the server behavior defaults to [ContentConfig.NO_CONTENT][google.cloud.discoveryengine.v1.DataStore.ContentConfig.NO_CONTENT].", + "type": "string" + }, + "displayName": { + "description": "Required. The data store display name.\n\nThis field must be a UTF-8 encoded string with a length limit of 128\ncharacters. Otherwise, an INVALID_ARGUMENT error is returned.", + "type": "string" + }, + "industryVertical": { + "description": "Immutable. The industry vertical that the data store registers.", + "type": "string" + }, + "location": { + "description": "Immutable. The location for the resource.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "Location field is immutable", + "rule": "self == oldSelf" + } + ] + }, + "projectRef": { + "description": "The ID of the project in which the resource belongs.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `Project` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `Project` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "resourceID": { + "description": "Immutable. The DiscoveryEngineDataStore name. If not given, the metadata.name will be used.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "ResourceID field is immutable", + "rule": "self == oldSelf" + } + ] + }, + "solutionTypes": { + "description": "The solutions that the data store enrolls. Available solutions for each\n[industry_vertical][google.cloud.discoveryengine.v1.DataStore.industry_vertical]:\n\n* `MEDIA`: `SOLUTION_TYPE_RECOMMENDATION` and `SOLUTION_TYPE_SEARCH`.\n* `SITE_SEARCH`: `SOLUTION_TYPE_SEARCH` is automatically enrolled. Other\n solutions cannot be enrolled.", + "items": { + "type": "string" + }, + "type": "array" + }, + "workspaceConfig": { + "description": "Config to store data store type configuration for workspace data. This must be set when [DataStore.content_config][google.cloud.discoveryengine.v1.DataStore.content_config] is set as [DataStore.ContentConfig.GOOGLE_WORKSPACE][google.cloud.discoveryengine.v1.DataStore.ContentConfig.GOOGLE_WORKSPACE].", + "properties": { + "dasherCustomerID": { + "description": "Obfuscated Dasher customer ID.", + "type": "string" + }, + "superAdminEmailAddress": { + "description": "Optional. The super admin email address for the workspace that will be used for access token generation. For now we only use it for Native Google Drive connector data ingestion.", + "type": "string" + }, + "superAdminServiceAccount": { + "description": "Optional. The super admin service account for the workspace that will be used for access token generation. For now we only use it for Native Google Drive connector data ingestion.", + "type": "string" + }, + "type": { + "description": "The Google Workspace data source.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "collection", + "location", + "projectRef" + ], + "type": "object", + "additionalProperties": false + }, + "status": { + "description": "DiscoveryEngineDataStoreStatus defines the config connector machine state of DiscoveryEngineDataStore", + "properties": { + "conditions": { + "description": "Conditions represent the latest available observations of the object's current state.", + "items": { + "properties": { + "lastTransitionTime": { + "description": "Last time the condition transitioned from one status to another.", + "type": "string" + }, + "message": { + "description": "Human-readable message indicating details about last transition.", + "type": "string" + }, + "reason": { + "description": "Unique, one-word, CamelCase reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Status is the status of the condition. Can be True, False, Unknown.", + "type": "string" + }, + "type": { + "description": "Type is the type of the condition.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "externalRef": { + "description": "A unique specifier for the DiscoveryEngineDataStore resource in GCP.", + "type": "string" + }, + "observedGeneration": { + "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", + "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "billingEstimation": { + "description": "Output only. Data size estimation for billing.", + "properties": { + "structuredDataSize": { + "description": "Data size for structured data in terms of bytes.", + "format": "int64", + "type": "integer" + }, + "structuredDataUpdateTime": { + "description": "Last updated timestamp for structured data.", + "type": "string" + }, + "unstructuredDataSize": { + "description": "Data size for unstructured data in terms of bytes.", + "format": "int64", + "type": "integer" + }, + "unstructuredDataUpdateTime": { + "description": "Last updated timestamp for unstructured data.", + "type": "string" + }, + "websiteDataSize": { + "description": "Data size for websites in terms of bytes.", + "format": "int64", + "type": "integer" + }, + "websiteDataUpdateTime": { + "description": "Last updated timestamp for websites.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "createTime": { + "description": "Output only. Timestamp the [DataStore][google.cloud.discoveryengine.v1.DataStore] was created at.", + "type": "string" + }, + "defaultSchemaID": { + "description": "Output only. The id of the default [Schema][google.cloud.discoveryengine.v1.Schema] asscociated to this data store.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "spec" + ], + "type": "object" +} diff --git a/dns.cnrm.cloud.google.com/dnsrecordset_v1beta1.json b/dns.cnrm.cloud.google.com/dnsrecordset_v1beta1.json index d38e8f9d..1bf3a492 100644 --- a/dns.cnrm.cloud.google.com/dnsrecordset_v1beta1.json +++ b/dns.cnrm.cloud.google.com/dnsrecordset_v1beta1.json @@ -84,7 +84,7 @@ "type": "string" }, "routingPolicy": { - "description": "The configuration for steering traffic based on query. You can specify either Weighted Round Robin(WRR) type or Geolocation(GEO) type.", + "description": "The configuration for steering traffic based on query. You can specify either Weighted Round Robin(WRR) type or Geolocation (GEO) type.", "properties": { "enableGeoFencing": { "description": "Specifies whether to enable fencing for geo queries.", diff --git a/eventarc.cnrm.cloud.google.com/eventarctrigger_v1beta1.json b/eventarc.cnrm.cloud.google.com/eventarctrigger_v1beta1.json index a5d32c4e..f447153f 100644 --- a/eventarc.cnrm.cloud.google.com/eventarctrigger_v1beta1.json +++ b/eventarc.cnrm.cloud.google.com/eventarctrigger_v1beta1.json @@ -265,7 +265,7 @@ "description": "An HTTP endpoint destination described by an URI.", "properties": { "uri": { - "description": "Required. The URI of the HTTP enpdoint. The value must be a RFC2396 URI string. Examples: `http://10.10.10.8:80/route`, `http://svc.us-central1.p.local:8080/`. Only HTTP and HTTPS protocols are supported. The host can be either a static IP addressable from the VPC specified by the network config, or an internal DNS hostname of the service resolvable via Cloud DNS.", + "description": "Required. The URI of the HTTP endpoint. The value must be a RFC2396 URI string. Examples: `http://10.10.10.8:80/route`, `http://svc.us-central1.p.local:8080/`. Only HTTP and HTTPS protocols are supported. The host can be either a static IP addressable from the VPC specified by the network config, or an internal DNS hostname of the service resolvable via Cloud DNS.", "type": "string" } }, diff --git a/firestore.cnrm.cloud.google.com/firestoredatabase_v1alpha1.json b/firestore.cnrm.cloud.google.com/firestoredatabase_v1alpha1.json new file mode 100644 index 00000000..66e80fc2 --- /dev/null +++ b/firestore.cnrm.cloud.google.com/firestoredatabase_v1alpha1.json @@ -0,0 +1,178 @@ +{ + "description": "FirestoreDatabase is the Schema for the FirestoreDatabase API", + "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": "FirestoreDatabaseSpec defines the desired state of FirestoreDatabase", + "properties": { + "concurrencyMode": { + "description": "The concurrency control mode to use for this database. See https://cloud.google.com/firestore/docs/reference/rest/v1/projects.databases#concurrencymode for more info.", + "type": "string" + }, + "locationID": { + "description": "The location of the database. Available locations are listed at https://cloud.google.com/firestore/docs/locations.", + "type": "string" + }, + "pointInTimeRecoveryEnablement": { + "description": "Whether to enable the PITR feature on this database. See https://cloud.google.com/firestore/docs/reference/rest/v1/projects.databases#pointintimerecoveryenablement for more info.", + "type": "string" + }, + "projectRef": { + "description": "Immutable. The Project that this resource belongs to.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `Project` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `Project` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "resourceID": { + "description": "The FirestoreDatabase name. If not given, the metadata.name will be used.", + "type": "string" + } + }, + "required": [ + "projectRef" + ], + "type": "object", + "additionalProperties": false + }, + "status": { + "description": "FirestoreDatabaseStatus defines the config connector machine state of FirestoreDatabase", + "properties": { + "conditions": { + "description": "Conditions represent the latest available observations of the object's current state.", + "items": { + "properties": { + "lastTransitionTime": { + "description": "Last time the condition transitioned from one status to another.", + "type": "string" + }, + "message": { + "description": "Human-readable message indicating details about last transition.", + "type": "string" + }, + "reason": { + "description": "Unique, one-word, CamelCase reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Status is the status of the condition. Can be True, False, Unknown.", + "type": "string" + }, + "type": { + "description": "Type is the type of the condition.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "externalRef": { + "description": "A unique specifier for the FirestoreDatabase resource in GCP.", + "type": "string" + }, + "observedGeneration": { + "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", + "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "createTime": { + "description": "Output only. The timestamp at which this database was created. Databases created before 2016 do not populate create_time.", + "type": "string" + }, + "earliestVersionTime": { + "description": "Output only. The earliest timestamp at which older versions of the data can\n be read from the database. See [version_retention_period] above; this field\n is populated with `now - version_retention_period`.\n\n This value is continuously updated, and becomes stale the moment it is\n queried. If you are using this value to recover data, make sure to account\n for the time from the moment when the value is queried to the moment when\n you initiate the recovery.", + "type": "string" + }, + "etag": { + "description": "This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.", + "type": "string" + }, + "keyPrefix": { + "description": "Output only. The key_prefix for this database. This key_prefix is used, in\n combination with the project id (\"~\") to construct\n the application id that is returned from the Cloud Datastore APIs in Google\n App Engine first generation runtimes.\n\n This value may be empty in which case the appid to use for URL-encoded keys\n is the project_id (eg: foo instead of v~foo).", + "type": "string" + }, + "uid": { + "description": "Output only. The system-generated UUID4 for this Database.", + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp at which this database was most recently updated. Note this only includes updates to the database resource and not data contained by the database.", + "type": "string" + }, + "versionRetentionPeriod": { + "description": "Output only. The period during which past versions of data are retained in\n the database.\n\n Any [read][google.firestore.v1.GetDocumentRequest.read_time]\n or [query][google.firestore.v1.ListDocumentsRequest.read_time] can specify\n a `read_time` within this window, and will read the state of the database\n at that time.\n\n If the PITR feature is enabled, the retention period is 7 days. Otherwise,\n the retention period is 1 hour.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object" +} diff --git a/gkehub.cnrm.cloud.google.com/gkehubfeaturemembership_v1beta1.json b/gkehub.cnrm.cloud.google.com/gkehubfeaturemembership_v1beta1.json index 8e1e011d..ea61dc4c 100644 --- a/gkehub.cnrm.cloud.google.com/gkehubfeaturemembership_v1beta1.json +++ b/gkehub.cnrm.cloud.google.com/gkehubfeaturemembership_v1beta1.json @@ -67,7 +67,7 @@ ], "properties": { "external": { - "description": "The GCP Service Account Email used for auth when secretType is gcpServiceAccount. Allowed value: The `email` field of an `IAMServiceAccount` resource.", + "description": "The `email` field of an `IAMServiceAccount` resource.", "type": "string" }, "name": { @@ -199,7 +199,7 @@ ], "properties": { "external": { - "description": "The GCP Service Account Email used for auth when secretType is gcpServiceAccount. Allowed value: The `email` field of an `IAMServiceAccount` resource.", + "description": "The `email` field of an `IAMServiceAccount` resource.", "type": "string" }, "name": { @@ -247,7 +247,7 @@ "additionalProperties": false }, "hierarchyController": { - "description": "Hierarchy Controller configuration for the cluster.", + "description": "Hierarchy Controller is no longer available. Use https://github.com/kubernetes-sigs/hierarchical-namespaces instead.", "properties": { "enableHierarchicalResourceQuota": { "description": "Whether hierarchical resource quota is enabled in this cluster.", @@ -266,7 +266,7 @@ "additionalProperties": false }, "policyController": { - "description": "Policy Controller configuration for the cluster.", + "description": "**DEPRECATED** Configuring Policy Controller through the configmanagement feature is no longer recommended. Use the policycontroller feature instead.", "properties": { "auditIntervalSeconds": { "description": "Sets the interval for Policy Controller Audit Scans (in seconds). When set to 0, this disables audit functionality altogether.", diff --git a/healthcare.cnrm.cloud.google.com/healthcarefhirstore_v1alpha1.json b/healthcare.cnrm.cloud.google.com/healthcarefhirstore_v1alpha1.json index 188c4932..8209b478 100644 --- a/healthcare.cnrm.cloud.google.com/healthcarefhirstore_v1alpha1.json +++ b/healthcare.cnrm.cloud.google.com/healthcarefhirstore_v1alpha1.json @@ -30,7 +30,7 @@ "type": "boolean" }, "disableResourceVersioning": { - "description": "Immutable. Whether to disable resource versioning for this FHIR store. This field can not be changed after the creation\nof FHIR store. If set to false, which is the default behavior, all write operations will cause historical\nversions to be recorded automatically. The historical versions can be fetched through the history APIs, but\ncannot be updated. If set to true, no historical versions will be kept. The server will send back errors for\nattempts to read the historical versions.\n\n** Changing this property may recreate the FHIR store (removing all data) **.", + "description": "Immutable. Whether to disable resource versioning for this FHIR store. This field cannot be changed after the creation\nof FHIR store. If set to false, which is the default behavior, all write operations will cause historical\nversions to be recorded automatically. The historical versions can be fetched through the history APIs, but\ncannot be updated. If set to true, no historical versions will be kept. The server will send back errors for\nattempts to read the historical versions.\n\n** Changing this property may recreate the FHIR store (removing all data) **.", "type": "boolean" }, "enableHistoryImport": { diff --git a/iam.cnrm.cloud.google.com/iamauditconfig_v1beta1.json b/iam.cnrm.cloud.google.com/iamauditconfig_v1beta1.json index 2c1cb8fb..f9d17efc 100644 --- a/iam.cnrm.cloud.google.com/iamauditconfig_v1beta1.json +++ b/iam.cnrm.cloud.google.com/iamauditconfig_v1beta1.json @@ -66,7 +66,7 @@ "additionalProperties": false }, "service": { - "description": "Immutable. Required. The service for which to enable Data Access audit logs. The special value 'allServices' covers all services. Note that if there are audit configs covering both 'allServices' and a specific service, then the union of the two audit configs is used for that service: the 'logTypes' specified in each 'auditLogConfig' are enabled, and the 'exemptedMembers' in each 'auditLogConfg' are exempted.", + "description": "Immutable. Required. The service for which to enable Data Access audit logs. The special value 'allServices' covers all services. Note that if there are audit configs covering both 'allServices' and a specific service, then the union of the two audit configs is used for that service: the 'logTypes' specified in each 'auditLogConfig' are enabled, and the 'exemptedMembers' in each 'auditLogConfig' are exempted.", "type": "string" } }, diff --git a/iam.cnrm.cloud.google.com/iampolicy_v1beta1.json b/iam.cnrm.cloud.google.com/iampolicy_v1beta1.json index a4a2520d..d22317bf 100644 --- a/iam.cnrm.cloud.google.com/iampolicy_v1beta1.json +++ b/iam.cnrm.cloud.google.com/iampolicy_v1beta1.json @@ -46,7 +46,7 @@ "type": "array" }, "service": { - "description": "Required. The service for which to enable Data Access audit logs. The special value 'allServices' covers all services. Note that if there are audit configs covering both 'allServices' and a specific service, then the union of the two audit configs is used for that service: the 'logTypes' specified in each 'auditLogConfig' are enabled, and the 'exemptedMembers' in each 'auditLogConfg' are exempted.", + "description": "Required. The service for which to enable Data Access audit logs. The special value 'allServices' covers all services. Note that if there are audit configs covering both 'allServices' and a specific service, then the union of the two audit configs is used for that service: the 'logTypes' specified in each 'auditLogConfig' are enabled, and the 'exemptedMembers' in each 'auditLogConfig' are exempted.", "type": "string" } }, diff --git a/kms.cnrm.cloud.google.com/kmsautokeyconfig_v1alpha1.json b/kms.cnrm.cloud.google.com/kmsautokeyconfig_v1alpha1.json new file mode 100644 index 00000000..67485c35 --- /dev/null +++ b/kms.cnrm.cloud.google.com/kmsautokeyconfig_v1alpha1.json @@ -0,0 +1,194 @@ +{ + "description": "KMSAutokeyConfig is the Schema for the KMSAutokeyConfig API", + "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": "KMSAutokeyConfigSpec defines the desired state of KMSAutokeyConfig", + "properties": { + "folderRef": { + "description": "Immutable. The folder that this resource belongs to.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The 'name' field of a folder, when not managed by Config Connector. This field must be set when 'name' field is not set.", + "type": "string" + }, + "name": { + "description": "The 'name' field of a 'Folder' resource. This field must be set when 'external' field is not set.", + "type": "string" + }, + "namespace": { + "description": "The 'namespace' field of a 'Folder' resource. If unset, the namespace is defaulted to the namespace of the referencer resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "keyProject": { + "description": "The Project that this resource belongs to.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name", + "kind" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + }, + { + "required": [ + "kind" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `Project` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `Project` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "folderRef" + ], + "type": "object", + "additionalProperties": false + }, + "status": { + "description": "KMSAutokeyConfigStatus defines the config connector machine state of KMSAutokeyConfig", + "properties": { + "conditions": { + "description": "Conditions represent the latest available observations of the object's current state.", + "items": { + "properties": { + "lastTransitionTime": { + "description": "Last time the condition transitioned from one status to another.", + "type": "string" + }, + "message": { + "description": "Human-readable message indicating details about last transition.", + "type": "string" + }, + "reason": { + "description": "Unique, one-word, CamelCase reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Status is the status of the condition. Can be True, False, Unknown.", + "type": "string" + }, + "type": { + "description": "Type is the type of the condition.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "externalRef": { + "description": "A unique specifier for the KMSAutokeyConfig resource in GCP.", + "type": "string" + }, + "observedGeneration": { + "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", + "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "state": { + "description": "Output only. Current state of this AutokeyConfig.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object" +} diff --git a/kms.cnrm.cloud.google.com/kmskeyhandle_v1alpha1.json b/kms.cnrm.cloud.google.com/kmskeyhandle_v1alpha1.json new file mode 100644 index 00000000..42488b61 --- /dev/null +++ b/kms.cnrm.cloud.google.com/kmskeyhandle_v1alpha1.json @@ -0,0 +1,155 @@ +{ + "description": "KMSKeyHandle is the Schema for the KMSKeyHandle API", + "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": "KMSKeyHandleSpec defines the desired state of KMSKeyHandle", + "properties": { + "location": { + "description": "Location name to create KeyHandle", + "type": "string" + }, + "projectRef": { + "description": "Project hosting KMSKeyHandle", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `Project` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `Project` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "resourceID": { + "description": "Immutable. The KMSKeyHandle name. If not given, the metadata.name will be used.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "ResourceID field is immutable", + "rule": "self == oldSelf" + } + ] + }, + "resourceTypeSelector": { + "description": "Indicates the resource type that the resulting [CryptoKey][] is meant to protect, e.g. `{SERVICE}.googleapis.com/{TYPE}`. See documentation for supported resource types https://cloud.google.com/kms/docs/autokey-overview#compatible-services.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "status": { + "description": "KMSKeyHandleStatus defines the config connector machine state of KMSKeyHandle", + "properties": { + "conditions": { + "description": "Conditions represent the latest available observations of the object's current state.", + "items": { + "properties": { + "lastTransitionTime": { + "description": "Last time the condition transitioned from one status to another.", + "type": "string" + }, + "message": { + "description": "Human-readable message indicating details about last transition.", + "type": "string" + }, + "reason": { + "description": "Unique, one-word, CamelCase reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Status is the status of the condition. Can be True, False, Unknown.", + "type": "string" + }, + "type": { + "description": "Type is the type of the condition.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "externalRef": { + "description": "A unique specifier for the KMSKeyHandle resource in GCP.", + "type": "string" + }, + "observedGeneration": { + "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", + "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "kmsKey": { + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "spec" + ], + "type": "object" +} diff --git a/kms.cnrm.cloud.google.com/kmskeyring_v1beta1.json b/kms.cnrm.cloud.google.com/kmskeyring_v1beta1.json index 3d74e4e0..bdb683ac 100644 --- a/kms.cnrm.cloud.google.com/kmskeyring_v1beta1.json +++ b/kms.cnrm.cloud.google.com/kmskeyring_v1beta1.json @@ -1,11 +1,12 @@ { + "description": "KMSKeyRing represents a KMS KeyRing.", "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/api-conventions.md#resources", + "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/api-conventions.md#types-kinds", + "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": { @@ -14,7 +15,7 @@ "spec": { "properties": { "location": { - "description": "Immutable. The location for the KeyRing.\nA full list of valid locations can be found by running 'gcloud kms locations list'.", + "description": "Immutable. The location for the KeyRing. A full list of valid locations can be found by running 'gcloud kms locations list'.", "type": "string" }, "resourceID": { @@ -31,7 +32,7 @@ "status": { "properties": { "conditions": { - "description": "Conditions represent the latest available observation of the resource's current state.", + "description": "Conditions represent the latest available observations of the KMSKeyRing's current state.", "items": { "properties": { "lastTransitionTime": { @@ -62,6 +63,7 @@ }, "observedGeneration": { "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", "type": "integer" }, "selfLink": { diff --git a/logging.cnrm.cloud.google.com/logginglogmetric_v1beta1.json b/logging.cnrm.cloud.google.com/logginglogmetric_v1beta1.json index c766ce4e..771c007f 100644 --- a/logging.cnrm.cloud.google.com/logginglogmetric_v1beta1.json +++ b/logging.cnrm.cloud.google.com/logginglogmetric_v1beta1.json @@ -258,7 +258,7 @@ ], "properties": { "external": { - "description": "The `projectID` field of a project, when not managed by KCC.", + "description": "The `projectID` field of a project, when not managed by Config Connector.", "type": "string" }, "kind": { diff --git a/memcache.cnrm.cloud.google.com/memcacheinstance_v1beta1.json b/memcache.cnrm.cloud.google.com/memcacheinstance_v1beta1.json index 926a5b2f..a61a64a5 100644 --- a/memcache.cnrm.cloud.google.com/memcacheinstance_v1beta1.json +++ b/memcache.cnrm.cloud.google.com/memcacheinstance_v1beta1.json @@ -253,7 +253,7 @@ "type": "string" }, "scheduleDeadlineTime": { - "description": "Output only. The deadline that the maintenance schedule start time\ncan not go beyond, including reschedule.\nA timestamp in RFC3339 UTC \"Zulu\" format, with nanosecond\nresolution and up to nine fractional digits.", + "description": "Output only. The deadline that the maintenance schedule start time\ncannot go beyond, including reschedule.\nA timestamp in RFC3339 UTC \"Zulu\" format, with nanosecond\nresolution and up to nine fractional digits.", "type": "string" }, "startTime": { diff --git a/monitoring.cnrm.cloud.google.com/monitoringdashboard_v1beta1.json b/monitoring.cnrm.cloud.google.com/monitoringdashboard_v1beta1.json index cdce0341..90130aac 100644 --- a/monitoring.cnrm.cloud.google.com/monitoringdashboard_v1beta1.json +++ b/monitoring.cnrm.cloud.google.com/monitoringdashboard_v1beta1.json @@ -68,7 +68,7 @@ ], "properties": { "external": { - "description": "The MonitoringAlertPolicy link in the form \"projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]\", when not managed by KCC.", + "description": "The MonitoringAlertPolicy link in the form \"projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]\", when not managed by Config Connector.", "type": "string" }, "name": { @@ -151,7 +151,7 @@ ], "properties": { "external": { - "description": "The `projectID` field of a project, when not managed by KCC.", + "description": "The `projectID` field of a project, when not managed by Config Connector.", "type": "string" }, "kind": { @@ -254,7 +254,7 @@ ], "properties": { "external": { - "description": "The MonitoringAlertPolicy link in the form \"projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]\", when not managed by KCC.", + "description": "The MonitoringAlertPolicy link in the form \"projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]\", when not managed by Config Connector.", "type": "string" }, "name": { @@ -1807,7 +1807,7 @@ ], "properties": { "external": { - "description": "The MonitoringAlertPolicy link in the form \"projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]\", when not managed by KCC.", + "description": "The MonitoringAlertPolicy link in the form \"projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]\", when not managed by Config Connector.", "type": "string" }, "name": { @@ -1890,7 +1890,7 @@ ], "properties": { "external": { - "description": "The `projectID` field of a project, when not managed by KCC.", + "description": "The `projectID` field of a project, when not managed by Config Connector.", "type": "string" }, "kind": { @@ -1993,7 +1993,7 @@ ], "properties": { "external": { - "description": "The MonitoringAlertPolicy link in the form \"projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]\", when not managed by KCC.", + "description": "The MonitoringAlertPolicy link in the form \"projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]\", when not managed by Config Connector.", "type": "string" }, "name": { @@ -3515,7 +3515,7 @@ ], "properties": { "external": { - "description": "The MonitoringAlertPolicy link in the form \"projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]\", when not managed by KCC.", + "description": "The MonitoringAlertPolicy link in the form \"projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]\", when not managed by Config Connector.", "type": "string" }, "name": { @@ -3598,7 +3598,7 @@ ], "properties": { "external": { - "description": "The `projectID` field of a project, when not managed by KCC.", + "description": "The `projectID` field of a project, when not managed by Config Connector.", "type": "string" }, "kind": { @@ -3701,7 +3701,7 @@ ], "properties": { "external": { - "description": "The MonitoringAlertPolicy link in the form \"projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]\", when not managed by KCC.", + "description": "The MonitoringAlertPolicy link in the form \"projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]\", when not managed by Config Connector.", "type": "string" }, "name": { @@ -5219,7 +5219,7 @@ ], "properties": { "external": { - "description": "The `projectID` field of a project, when not managed by KCC.", + "description": "The `projectID` field of a project, when not managed by Config Connector.", "type": "string" }, "kind": { @@ -5296,7 +5296,7 @@ ], "properties": { "external": { - "description": "The MonitoringAlertPolicy link in the form \"projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]\", when not managed by KCC.", + "description": "The MonitoringAlertPolicy link in the form \"projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]\", when not managed by Config Connector.", "type": "string" }, "name": { @@ -5379,7 +5379,7 @@ ], "properties": { "external": { - "description": "The `projectID` field of a project, when not managed by KCC.", + "description": "The `projectID` field of a project, when not managed by Config Connector.", "type": "string" }, "kind": { @@ -5482,7 +5482,7 @@ ], "properties": { "external": { - "description": "The MonitoringAlertPolicy link in the form \"projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]\", when not managed by KCC.", + "description": "The MonitoringAlertPolicy link in the form \"projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]\", when not managed by Config Connector.", "type": "string" }, "name": { diff --git a/monitoring.cnrm.cloud.google.com/monitoringnotificationchannel_v1beta1.json b/monitoring.cnrm.cloud.google.com/monitoringnotificationchannel_v1beta1.json index d77f0eba..037ebcd2 100644 --- a/monitoring.cnrm.cloud.google.com/monitoringnotificationchannel_v1beta1.json +++ b/monitoring.cnrm.cloud.google.com/monitoringnotificationchannel_v1beta1.json @@ -36,7 +36,7 @@ "type": "string" }, "sensitiveLabels": { - "description": "Different notification type behaviors are configured primarily using the the 'labels' field on this\nresource. This block contains the labels which contain secrets or passwords so that they can be marked\nsensitive and hidden from plan output. The name of the field, eg: password, will be the key\nin the 'labels' map in the api request.\n\nCredentials may not be specified in both locations and will cause an error. Changing from one location\nto a different credential configuration in the config will require an apply to update state.", + "description": "Different notification type behaviors are configured primarily using the 'labels' field on this\nresource. This block contains the labels which contain secrets or passwords so that they can be marked\nsensitive and hidden from plan output. The name of the field, eg: password, will be the key\nin the 'labels' map in the api request.\n\nCredentials may not be specified in both locations and will cause an error. Changing from one location\nto a different credential configuration in the config will require an apply to update state.", "properties": { "authToken": { "description": "An authorization token for a notification channel. Channel types that support this field include: slack.", diff --git a/networkconnectivity.cnrm.cloud.google.com/networkconnectivityserviceconnectionpolicy_v1alpha1.json b/networkconnectivity.cnrm.cloud.google.com/networkconnectivityserviceconnectionpolicy_v1alpha1.json new file mode 100644 index 00000000..7566539d --- /dev/null +++ b/networkconnectivity.cnrm.cloud.google.com/networkconnectivityserviceconnectionpolicy_v1alpha1.json @@ -0,0 +1,370 @@ +{ + "description": "NetworkConnectivityServiceConnectionPolicy is the Schema for the NetworkConnectivityServiceConnectionPolicy API", + "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": "NetworkConnectivityServiceConnectionPolicySpec defines the desired state of NetworkConnectivityServiceConnectionPolicy", + "properties": { + "description": { + "description": "A description of this resource.", + "type": "string" + }, + "location": { + "description": "Immutable. Location of the resource.", + "type": "string" + }, + "networkRef": { + "description": "The resource path of the consumer network. Example: - projects/{projectNumOrId}/global/networks/{resourceId}.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "A reference to an externally managed Compute Network resource. Should be in the format `projects//global/networks/`.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `ComputeNetwork` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `ComputeNetwork` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "projectRef": { + "description": "Immutable. The Project that this resource belongs to.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `Project` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `Project` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "pscConfig": { + "description": "Configuration used for Private Service Connect connections. Used when Infrastructure is PSC.", + "properties": { + "limit": { + "description": "Optional. Max number of PSC connections for this policy.", + "format": "int64", + "type": "integer" + }, + "producerInstanceLocation": { + "description": "Required. ProducerInstanceLocation is used to specify which authorization mechanism to use to determine which projects the Producer instance can be within.", + "type": "string" + }, + "subnetworkRefs": { + "description": "The resource paths of subnetworks to use for IP address management. Example: projects/{projectNumOrId}/regions/{region}/subnetworks/{resourceId}.", + "items": { + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The ComputeSubnetwork selflink of form \"projects/{{project}}/regions/{{region}}/subnetworks/{{name}}\", when not managed by Config Connector.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `ComputeSubnetwork` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `ComputeSubnetwork` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + } + }, + "type": "object", + "additionalProperties": false + }, + "resourceID": { + "description": "The NetworkConnectivityServiceConnectionPolicy name. If not given, the metadata.name will be used.", + "type": "string" + }, + "serviceClass": { + "description": "The service class identifier for which this ServiceConnectionPolicy is for. The service class identifier is a unique, symbolic representation of a ServiceClass. It is provided by the Service Producer. Google services have a prefix of gcp. For example, gcp-cloud-sql. 3rd party services do not. For example, test-service-a3dfcx.", + "type": "string" + } + }, + "required": [ + "location", + "projectRef" + ], + "type": "object", + "additionalProperties": false + }, + "status": { + "description": "NetworkConnectivityServiceConnectionPolicyStatus defines the config connector machine state of NetworkConnectivityServiceConnectionPolicy", + "properties": { + "conditions": { + "description": "Conditions represent the latest available observations of the object's current state.", + "items": { + "properties": { + "lastTransitionTime": { + "description": "Last time the condition transitioned from one status to another.", + "type": "string" + }, + "message": { + "description": "Human-readable message indicating details about last transition.", + "type": "string" + }, + "reason": { + "description": "Unique, one-word, CamelCase reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Status is the status of the condition. Can be True, False, Unknown.", + "type": "string" + }, + "type": { + "description": "Type is the type of the condition.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "externalRef": { + "description": "A unique specifier for the NetworkConnectivityServiceConnectionPolicy resource in GCP.", + "type": "string" + }, + "observedGeneration": { + "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", + "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "createTime": { + "description": "Output only. Time when the ServiceConnectionMap was created.", + "type": "string" + }, + "etag": { + "description": "Optional. The etag is computed by the server, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.", + "type": "string" + }, + "infrastructure": { + "description": "Output only. The type of underlying resources used to create the connection.", + "type": "string" + }, + "pscConnections": { + "description": "Output only. [Output only] Information about each Private Service Connect connection.", + "items": { + "properties": { + "consumerAddress": { + "description": "The resource reference of the consumer address.", + "type": "string" + }, + "consumerForwardingRule": { + "description": "The resource reference of the PSC Forwarding Rule within the consumer VPC.", + "type": "string" + }, + "consumerTargetProject": { + "description": "The project where the PSC connection is created.", + "type": "string" + }, + "error": { + "description": "The most recent error during operating this connection.", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "errorInfo": { + "description": "Output only. The error info for the latest error during operating this connection.", + "properties": { + "domain": { + "description": "The logical grouping to which the \"reason\" belongs. The error domain is typically the registered service name of the tool or product that generates the error. Example: \"pubsub.googleapis.com\". If the error is generated by some common infrastructure, the error domain must be a globally unique value that identifies the infrastructure. For Google API infrastructure, the error domain is \"googleapis.com\".", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "type": "string" + }, + "description": "Additional structured details about this error. Keys must match /a-z+/ but should ideally be lowerCamelCase. Also they must be limited to 64 characters in length. When identifying the current value of an exceeded limit, the units should be contained in the key, not the value. For example, rather than {\"instanceLimit\": \"100/request\"}, should be returned as, {\"instanceLimitPerRequest\": \"100\"}, if the client exceeds the number of instances that can be created in a single (batch) request.", + "type": "object" + }, + "reason": { + "description": "The reason of the error. This is a constant value that identifies the proximate cause of the error. Error reasons are unique within a particular domain of errors. This should be at most 63 characters and match a regular expression of `A-Z+[A-Z0-9]`, which represents UPPER_SNAKE_CASE.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "errorType": { + "description": "The error type indicates whether the error is consumer facing, producer facing or system internal.", + "type": "string" + }, + "gceOperation": { + "description": "The last Compute Engine operation to setup PSC connection.", + "type": "string" + }, + "producerInstanceID": { + "description": "Immutable. An immutable identifier for the producer instance.", + "type": "string" + }, + "pscConnectionID": { + "description": "The PSC connection id of the PSC forwarding rule.", + "type": "string" + }, + "selectedSubnetwork": { + "description": "Output only. The URI of the subnetwork selected to allocate IP address for this connection.", + "type": "string" + }, + "state": { + "description": "State of the PSC Connection", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "updateTime": { + "description": "Output only. Time when the ServiceConnectionMap was updated.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object" +} diff --git a/networkservices.cnrm.cloud.google.com/networkservicesedgecacheservice_v1alpha1.json b/networkservices.cnrm.cloud.google.com/networkservicesedgecacheservice_v1alpha1.json index 0f2cdb28..0804e50e 100644 --- a/networkservices.cnrm.cloud.google.com/networkservicesedgecacheservice_v1alpha1.json +++ b/networkservices.cnrm.cloud.google.com/networkservicesedgecacheservice_v1alpha1.json @@ -300,7 +300,7 @@ "type": "array" }, "ignoreCase": { - "description": "Specifies that prefixMatch and fullPathMatch matches are case sensitive.", + "description": "Specifies that prefixMatch and fullPathMatch matches are case-sensitive.", "type": "boolean" }, "pathTemplateMatch": { @@ -415,14 +415,14 @@ "type": "boolean" }, "includedCookieNames": { - "description": "Names of Cookies to include in cache keys. The cookie name and cookie value of each cookie named will be used as part of the cache key.\n\nCookie names:\n - must be valid RFC 6265 \"cookie-name\" tokens\n - are case sensitive\n - cannot start with \"Edge-Cache-\" (case insensitive)\n\n Note that specifying several cookies, and/or cookies that have a large range of values (e.g., per-user) will dramatically impact the cache hit rate, and may result in a higher eviction rate and reduced performance.\n\n You may specify up to three cookie names.", + "description": "Names of Cookies to include in cache keys. The cookie name and cookie value of each cookie named will be used as part of the cache key.\n\nCookie names:\n - must be valid RFC 6265 \"cookie-name\" tokens\n - are case-sensitive\n - cannot start with \"Edge-Cache-\" (case-insensitive)\n\n Note that specifying several cookies, and/or cookies that have a large range of values (e.g., per-user) will dramatically impact the cache hit rate, and may result in a higher eviction rate and reduced performance.\n\n You may specify up to three cookie names.", "items": { "type": "string" }, "type": "array" }, "includedHeaderNames": { - "description": "Names of HTTP request headers to include in cache keys. The value of the header field will be used as part of the cache key.\n\n- Header names must be valid HTTP RFC 7230 header field values.\n- Header field names are case insensitive\n- To include the HTTP method, use \":method\"\n\nNote that specifying several headers, and/or headers that have a large range of values (e.g. per-user) will dramatically impact the cache hit rate, and may result in a higher eviction rate and reduced performance.", + "description": "Names of HTTP request headers to include in cache keys. The value of the header field will be used as part of the cache key.\n\n- Header names must be valid HTTP RFC 7230 header field values.\n- Header field names are case-insensitive\n- To include the HTTP method, use \":method\"\n\nNote that specifying several headers, and/or headers that have a large range of values (e.g. per-user) will dramatically impact the cache hit rate, and may result in a higher eviction rate and reduced performance.", "items": { "type": "string" }, @@ -452,7 +452,7 @@ "type": "string" }, "maxTtl": { - "description": "Specifies the maximum allowed TTL for cached content served by this origin.\n\nDefaults to 86400s (1 day).\n\nCache directives that attempt to set a max-age or s-maxage higher than this, or an Expires header more than maxTtl seconds in the future will be capped at the value of maxTTL, as if it were the value of an s-maxage Cache-Control directive.\n\n- The TTL must be >= 0 and <= 31,536,000 seconds (1 year)\n- Setting a TTL of \"0\" means \"always revalidate\"\n- The value of maxTtl must be equal to or greater than defaultTtl.\n- Fractions of a second are not allowed.\n\nWhen the cache mode is set to \"USE_ORIGIN_HEADERS\", \"FORCE_CACHE_ALL\", or \"BYPASS_CACHE\", you must omit this field.\n\nA duration in seconds terminated by 's'. Example: \"3s\".", + "description": "Specifies the maximum allowed TTL for cached content served by this origin.\n\nDefaults to 86400s (1 day).\n\nCache directives that attempt to set a max-age or s-maxage greater than this, or an Expires header more than maxTtl seconds in the future will be capped at the value of maxTTL, as if it were the value of an s-maxage Cache-Control directive.\n\n- The TTL must be >= 0 and <= 31,536,000 seconds (1 year)\n- Setting a TTL of \"0\" means \"always revalidate\"\n- The value of maxTtl must be equal to or greater than defaultTtl.\n- Fractions of a second are not allowed.\n\nWhen the cache mode is set to \"USE_ORIGIN_HEADERS\", \"FORCE_CACHE_ALL\", or \"BYPASS_CACHE\", you must omit this field.\n\nA duration in seconds terminated by 's'. Example: \"3s\".", "type": "string" }, "negativeCaching": { diff --git a/networkservices.cnrm.cloud.google.com/networkservicesendpointpolicy_v1beta1.json b/networkservices.cnrm.cloud.google.com/networkservicesendpointpolicy_v1beta1.json index 911e9256..c8c2f2e8 100644 --- a/networkservices.cnrm.cloud.google.com/networkservicesendpointpolicy_v1beta1.json +++ b/networkservices.cnrm.cloud.google.com/networkservicesendpointpolicy_v1beta1.json @@ -122,7 +122,7 @@ "description": "The matcher is based on node metadata presented by xDS clients.", "properties": { "metadataLabelMatchCriteria": { - "description": "Specifies how matching should be done. Supported values are: MATCH_ANY: At least one of the Labels specified in the matcher should match the metadata presented by xDS client. MATCH_ALL: The metadata presented by the xDS client should contain all of the labels specified here. The selection is determined based on the best match. For example, suppose there are three EndpointPolicy resources P1, P2 and P3 and if P1 has a the matcher as MATCH_ANY , P2 has MATCH_ALL , and P3 has MATCH_ALL . If a client with label connects, the config from P1 will be selected. If a client with label connects, the config from P2 will be selected. If a client with label connects, the config from P3 will be selected. If there is more than one best match, (for example, if a config P4 with selector exists and if a client with label connects), an error will be thrown. Possible values: METADATA_LABEL_MATCH_CRITERIA_UNSPECIFIED, MATCH_ANY, MATCH_ALL", + "description": "Specifies how matching should be done. Supported values are: MATCH_ANY: At least one of the Labels specified in the matcher should match the metadata presented by xDS client. MATCH_ALL: The metadata presented by the xDS client should contain all of the labels specified here. The selection is determined based on the best match. For example, suppose there are three EndpointPolicy resources P1, P2 and P3 and if P1 has the matcher as MATCH_ANY , P2 has MATCH_ALL , and P3 has MATCH_ALL . If a client with label connects, the config from P1 will be selected. If a client with label connects, the config from P2 will be selected. If a client with label connects, the config from P3 will be selected. If there is more than one best match, (for example, if a config P4 with selector exists and if a client with label connects), an error will be thrown. Possible values: METADATA_LABEL_MATCH_CRITERIA_UNSPECIFIED, MATCH_ANY, MATCH_ALL", "type": "string" }, "metadataLabels": { diff --git a/networkservices.cnrm.cloud.google.com/networkservicesgateway_v1beta1.json b/networkservices.cnrm.cloud.google.com/networkservicesgateway_v1beta1.json index 85fa465e..35651c04 100644 --- a/networkservices.cnrm.cloud.google.com/networkservicesgateway_v1beta1.json +++ b/networkservices.cnrm.cloud.google.com/networkservicesgateway_v1beta1.json @@ -91,7 +91,7 @@ "type": "string" }, "scope": { - "description": "Immutable. Required. Immutable. Scope determines how configuration across multiple Gateway instances are merged. The configuration for multiple Gateway instances with the same scope will be merged as presented as a single coniguration to the proxy/load balancer. Max length 64 characters. Scope should start with a letter and can only have letters, numbers, hyphens.", + "description": "Immutable. Required. Immutable. Scope determines how configuration across multiple Gateway instances are merged. The configuration for multiple Gateway instances with the same scope will be merged as presented as a single configuration to the proxy/load balancer. Max length 64 characters. Scope should start with a letter and can only have letters, numbers, hyphens.", "type": "string" }, "serverTlsPolicyRef": { diff --git a/networkservices.cnrm.cloud.google.com/networkservicesgrpcroute_v1beta1.json b/networkservices.cnrm.cloud.google.com/networkservicesgrpcroute_v1beta1.json index 3d651c30..e1d85b2b 100644 --- a/networkservices.cnrm.cloud.google.com/networkservicesgrpcroute_v1beta1.json +++ b/networkservices.cnrm.cloud.google.com/networkservicesgrpcroute_v1beta1.json @@ -361,7 +361,7 @@ "description": "Optional. A gRPC method to match against. If this field is empty or omitted, will match all methods.", "properties": { "caseSensitive": { - "description": "Optional. Specifies that matches are case sensitive. The default value is true. case_sensitive must not be used with a type of REGULAR_EXPRESSION.", + "description": "Optional. Specifies that matches are case-sensitive. The default value is true. case_sensitive must not be used with a type of REGULAR_EXPRESSION.", "type": "boolean" }, "grpcMethod": { diff --git a/networkservices.cnrm.cloud.google.com/networkserviceshttproute_v1beta1.json b/networkservices.cnrm.cloud.google.com/networkserviceshttproute_v1beta1.json index 61693d1c..d0f41878 100644 --- a/networkservices.cnrm.cloud.google.com/networkserviceshttproute_v1beta1.json +++ b/networkservices.cnrm.cloud.google.com/networkserviceshttproute_v1beta1.json @@ -363,7 +363,7 @@ "type": "boolean" }, "pathRedirect": { - "description": "The path that will be used in the redirect response instead of the one that was supplied in the request. path_redirect can not be supplied together with prefix_redirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect.", + "description": "The path that will be used in the redirect response instead of the one that was supplied in the request. path_redirect cannot be supplied together with prefix_redirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect.", "type": "string" }, "portRedirect": { @@ -621,7 +621,7 @@ "type": "array" }, "ignoreCase": { - "description": "Specifies if prefix_match and full_path_match matches are case sensitive. The default value is false.", + "description": "Specifies if prefix_match and full_path_match matches are case-sensitive. The default value is false.", "type": "boolean" }, "prefixMatch": { diff --git a/networkservices.cnrm.cloud.google.com/networkservicestlsroute_v1beta1.json b/networkservices.cnrm.cloud.google.com/networkservicestlsroute_v1beta1.json index ce3983bd..c8524211 100644 --- a/networkservices.cnrm.cloud.google.com/networkservicestlsroute_v1beta1.json +++ b/networkservices.cnrm.cloud.google.com/networkservicestlsroute_v1beta1.json @@ -240,7 +240,7 @@ "additionalProperties": false }, "weight": { - "description": "Optional. Specifies the proportion of requests forwareded to the backend referenced by the service_name field. This is computed as: weight/Sum(weights in destinations) Weights in all destinations does not need to sum up to 100.", + "description": "Optional. Specifies the proportion of requests forwarded to the backend referenced by the service_name field. This is computed as: weight/Sum(weights in destinations) Weights in all destinations does not need to sum up to 100.", "format": "int64", "type": "integer" } diff --git a/osconfig.cnrm.cloud.google.com/osconfigguestpolicy_v1beta1.json b/osconfig.cnrm.cloud.google.com/osconfigguestpolicy_v1beta1.json index 392c6964..e852fa1f 100644 --- a/osconfig.cnrm.cloud.google.com/osconfigguestpolicy_v1beta1.json +++ b/osconfig.cnrm.cloud.google.com/osconfigguestpolicy_v1beta1.json @@ -105,7 +105,7 @@ "type": "string" }, "osVersion": { - "description": "Targets VM instances with OS Inventory enabled and having the following following OS version.", + "description": "Targets VM instances with OS Inventory enabled and having the following OS version.", "type": "string" } }, @@ -352,7 +352,7 @@ "additionalProperties": false }, "id": { - "description": "Required. Id of the artifact, which the installation and update steps of this recipe can reference. Artifacts in a recipe cannot have the same id.", + "description": "Required. ID of the artifact, which the installation and update steps of this recipe can reference. Artifacts in a recipe cannot have the same id.", "type": "string" }, "remote": { diff --git a/privateca.cnrm.cloud.google.com/privatecacertificate_v1beta1.json b/privateca.cnrm.cloud.google.com/privatecacertificate_v1beta1.json index 3035757d..012314fe 100644 --- a/privateca.cnrm.cloud.google.com/privatecacertificate_v1beta1.json +++ b/privateca.cnrm.cloud.google.com/privatecacertificate_v1beta1.json @@ -747,7 +747,7 @@ "additionalProperties": false }, "subjectKeyId": { - "description": "Provides a means of identifiying certificates that contain a particular public key, per https://tools.ietf.org/html/rfc5280#section-4.2.1.2.", + "description": "Provides a means of identifying certificates that contain a particular public key, per https://tools.ietf.org/html/rfc5280#section-4.2.1.2.", "properties": { "keyId": { "description": "Optional. The value of this KeyId encoded in lowercase hexadecimal. This is most likely the 160 bit SHA-1 hash of the public key.", diff --git a/privateca.cnrm.cloud.google.com/privatecacertificateauthority_v1beta1.json b/privateca.cnrm.cloud.google.com/privatecacertificateauthority_v1beta1.json index fb0de7ff..5816df3a 100644 --- a/privateca.cnrm.cloud.google.com/privatecacertificateauthority_v1beta1.json +++ b/privateca.cnrm.cloud.google.com/privatecacertificateauthority_v1beta1.json @@ -786,7 +786,7 @@ "additionalProperties": false }, "subjectKeyId": { - "description": "Provides a means of identifiying certificates that contain a particular public key, per https://tools.ietf.org/html/rfc5280#section-4.2.1.2.", + "description": "Provides a means of identifying certificates that contain a particular public key, per https://tools.ietf.org/html/rfc5280#section-4.2.1.2.", "properties": { "keyId": { "description": "Optional. The value of this KeyId encoded in lowercase hexadecimal. This is most likely the 160 bit SHA-1 hash of the public key.", diff --git a/privilegedaccessmanager.cnrm.cloud.google.com/privilegedaccessmanagerentitlement_v1alpha1.json b/privilegedaccessmanager.cnrm.cloud.google.com/privilegedaccessmanagerentitlement_v1alpha1.json new file mode 100644 index 00000000..6250aa56 --- /dev/null +++ b/privilegedaccessmanager.cnrm.cloud.google.com/privilegedaccessmanagerentitlement_v1alpha1.json @@ -0,0 +1,405 @@ +{ + "description": "PrivilegedAccessManagerEntitlement is the Schema for the PrivilegedAccessManagerEntitlement API.", + "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": "PrivilegedAccessManagerEntitlementSpec defines the desired state of PrivilegedAccessManagerEntitlement.", + "properties": { + "additionalNotificationTargets": { + "description": "Optional. Additional email addresses to be notified based on actions taken.", + "properties": { + "adminEmailRecipients": { + "description": "Optional. Additional email addresses to be notified when a principal (requester) is granted access.", + "items": { + "type": "string" + }, + "type": "array" + }, + "requesterEmailRecipients": { + "description": "Optional. Additional email address to be notified about an eligible entitlement.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object", + "additionalProperties": false + }, + "approvalWorkflow": { + "description": "Optional. The approvals needed before access are granted to a requester. No approvals are needed if this field is null.", + "properties": { + "manualApprovals": { + "description": "An approval workflow where users designated as approvers review and act on the grants.", + "properties": { + "requireApproverJustification": { + "description": "Optional. Whether the approvers need to provide a justification for their actions.", + "type": "boolean" + }, + "steps": { + "description": "Optional. List of approval steps in this workflow. These steps are followed in the specified order sequentially. Only 1 step is supported.", + "items": { + "description": "Step represents a logical step in a manual approval workflow.", + "properties": { + "approvalsNeeded": { + "description": "Required. How many users from the above list need to approve. If there aren't enough distinct users in the list, then the workflow indefinitely blocks. Should always be greater than 0. 1 is the only supported value.", + "format": "int32", + "type": "integer" + }, + "approverEmailRecipients": { + "description": "Optional. Additional email addresses to be notified when a grant is pending approval.", + "items": { + "type": "string" + }, + "type": "array" + }, + "approvers": { + "description": "Optional. The potential set of approvers in this step. This list must contain at most one entry.", + "items": { + "description": "AccessControlEntry is used to control who can do some operation.", + "properties": { + "principals": { + "description": "Optional. Users who are allowed for the operation. Each entry should be a valid v1 IAM principal identifier. The format for these is documented at: https://cloud.google.com/iam/docs/principal-identifiers#v1", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "principals" + ], + "type": "object", + "additionalProperties": false + }, + "type": "array" + } + }, + "required": [ + "approvalsNeeded" + ], + "type": "object", + "additionalProperties": false + }, + "type": "array" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "manualApprovals" + ], + "type": "object", + "additionalProperties": false + }, + "eligibleUsers": { + "description": "Who can create grants using this entitlement. This list should contain at most one entry.", + "items": { + "description": "AccessControlEntry is used to control who can do some operation.", + "properties": { + "principals": { + "description": "Optional. Users who are allowed for the operation. Each entry should be a valid v1 IAM principal identifier. The format for these is documented at: https://cloud.google.com/iam/docs/principal-identifiers#v1", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "principals" + ], + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "folderRef": { + "description": "Immutable. The Folder that this resource belongs to. One and only one of 'projectRef', 'folderRef', or 'organizationRef' must be set.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The 'name' field of a folder, when not managed by Config Connector. This field must be set when 'name' field is not set.", + "type": "string" + }, + "name": { + "description": "The 'name' field of a 'Folder' resource. This field must be set when 'external' field is not set.", + "type": "string" + }, + "namespace": { + "description": "The 'namespace' field of a 'Folder' resource. If unset, the namespace is defaulted to the namespace of the referencer resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "location": { + "description": "Immutable. Location of the resource.", + "type": "string" + }, + "maxRequestDuration": { + "description": "Required. The maximum amount of time that access is granted for a request. A requester can ask for a duration less than this, but never more.", + "type": "string" + }, + "organizationRef": { + "description": "Immutable. The Organization that this resource belongs to. One and only one of 'projectRef', 'folderRef', or 'organizationRef' must be set.", + "properties": { + "external": { + "description": "The 'name' field of an organization, when not managed by Config Connector.", + "type": "string" + } + }, + "required": [ + "external" + ], + "type": "object", + "additionalProperties": false + }, + "privilegedAccess": { + "description": "The access granted to a requester on successful approval.", + "properties": { + "gcpIAMAccess": { + "description": "Access to a Google Cloud resource through IAM.", + "properties": { + "roleBindings": { + "description": "Required. Role bindings that are created on successful grant.", + "items": { + "description": "RoleBinding represents IAM role bindings that are created after a successful grant.", + "properties": { + "conditionExpression": { + "description": "Optional. The expression field of the IAM condition to be associated\nwith the role. If specified, a user with an active grant for this\nentitlement is able to access the resource only if this condition\nevaluates to true for their request.\n\nThis field uses the same CEL format as IAM and supports all attributes\nthat IAM supports, except tags. More details can be found at\nhttps://cloud.google.com/iam/docs/conditions-overview#attributes.", + "type": "string" + }, + "role": { + "description": "Required. IAM role to be granted. More details can be found at https://cloud.google.com/iam/docs/roles-overview.", + "type": "string" + } + }, + "required": [ + "role" + ], + "type": "object", + "additionalProperties": false + }, + "type": "array" + } + }, + "required": [ + "roleBindings" + ], + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "gcpIAMAccess" + ], + "type": "object", + "additionalProperties": false + }, + "projectRef": { + "description": "Immutable. The Project that this resource belongs to. One and only one of 'projectRef', 'folderRef', or 'organizationRef' must be set.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `Project` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `Project` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "requesterJustificationConfig": { + "description": "Required. The manner in which the requester should provide a justification for requesting access.", + "properties": { + "notMandatory": { + "description": "NotMandatory justification type means the justification isn't required and can be provided in any of the supported formats. The user must explicitly opt out using this field if a justification from the requester isn't mandatory. The only accepted value is `{}` (empty struct). Either 'notMandatory' or 'unstructured' field must be set.", + "type": "object", + "x-kubernetes-preserve-unknown-fields": true + }, + "unstructured": { + "description": "Unstructured justification type means the justification is in the format of a string. If this is set, the server allows the requester to provide a justification but doesn't validate it. The only accepted value is `{}` (empty struct). Either 'notMandatory' or 'unstructured' field must be set.", + "type": "object", + "x-kubernetes-preserve-unknown-fields": true + } + }, + "type": "object", + "additionalProperties": false + }, + "resourceID": { + "description": "Immutable. The PrivilegedAccessManagerEntitlement name. If not given, the 'metadata.name' will be used.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "ResourceID field is immutable", + "rule": "self == oldSelf" + } + ] + } + }, + "required": [ + "eligibleUsers", + "location", + "maxRequestDuration", + "privilegedAccess", + "requesterJustificationConfig" + ], + "type": "object", + "additionalProperties": false + }, + "status": { + "description": "PrivilegedAccessManagerEntitlementStatus defines the config connector machine state of PrivilegedAccessManagerEntitlement.", + "properties": { + "conditions": { + "description": "Conditions represent the latest available observations of the object's current state.", + "items": { + "properties": { + "lastTransitionTime": { + "description": "Last time the condition transitioned from one status to another.", + "type": "string" + }, + "message": { + "description": "Human-readable message indicating details about last transition.", + "type": "string" + }, + "reason": { + "description": "Unique, one-word, CamelCase reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Status is the status of the condition. Can be True, False, Unknown.", + "type": "string" + }, + "type": { + "description": "Type is the type of the condition.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "externalRef": { + "description": "A unique specifier for the PrivilegedAccessManagerEntitlement resource in GCP.", + "type": "string" + }, + "observedGeneration": { + "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to 'metadata.generation', then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", + "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "createTime": { + "description": "Output only. Create time stamp.", + "type": "string" + }, + "etag": { + "description": "An 'etag' is used for optimistic concurrency control as a way to prevent simultaneous updates to the same entitlement. An 'etag' is returned in the response to 'GetEntitlement' and the caller should put the 'etag' in the request to 'UpdateEntitlement' so that their change is applied on the same version. If this field is omitted or if there is a mismatch while updating an entitlement, then the server rejects the request.", + "type": "string" + }, + "state": { + "description": "Output only. Current state of this entitlement.", + "type": "string" + }, + "updateTime": { + "description": "Output only. Update time stamp.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object" +} diff --git a/privilegedaccessmanager.cnrm.cloud.google.com/privilegedaccessmanagerentitlement_v1beta1.json b/privilegedaccessmanager.cnrm.cloud.google.com/privilegedaccessmanagerentitlement_v1beta1.json new file mode 100644 index 00000000..6250aa56 --- /dev/null +++ b/privilegedaccessmanager.cnrm.cloud.google.com/privilegedaccessmanagerentitlement_v1beta1.json @@ -0,0 +1,405 @@ +{ + "description": "PrivilegedAccessManagerEntitlement is the Schema for the PrivilegedAccessManagerEntitlement API.", + "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": "PrivilegedAccessManagerEntitlementSpec defines the desired state of PrivilegedAccessManagerEntitlement.", + "properties": { + "additionalNotificationTargets": { + "description": "Optional. Additional email addresses to be notified based on actions taken.", + "properties": { + "adminEmailRecipients": { + "description": "Optional. Additional email addresses to be notified when a principal (requester) is granted access.", + "items": { + "type": "string" + }, + "type": "array" + }, + "requesterEmailRecipients": { + "description": "Optional. Additional email address to be notified about an eligible entitlement.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object", + "additionalProperties": false + }, + "approvalWorkflow": { + "description": "Optional. The approvals needed before access are granted to a requester. No approvals are needed if this field is null.", + "properties": { + "manualApprovals": { + "description": "An approval workflow where users designated as approvers review and act on the grants.", + "properties": { + "requireApproverJustification": { + "description": "Optional. Whether the approvers need to provide a justification for their actions.", + "type": "boolean" + }, + "steps": { + "description": "Optional. List of approval steps in this workflow. These steps are followed in the specified order sequentially. Only 1 step is supported.", + "items": { + "description": "Step represents a logical step in a manual approval workflow.", + "properties": { + "approvalsNeeded": { + "description": "Required. How many users from the above list need to approve. If there aren't enough distinct users in the list, then the workflow indefinitely blocks. Should always be greater than 0. 1 is the only supported value.", + "format": "int32", + "type": "integer" + }, + "approverEmailRecipients": { + "description": "Optional. Additional email addresses to be notified when a grant is pending approval.", + "items": { + "type": "string" + }, + "type": "array" + }, + "approvers": { + "description": "Optional. The potential set of approvers in this step. This list must contain at most one entry.", + "items": { + "description": "AccessControlEntry is used to control who can do some operation.", + "properties": { + "principals": { + "description": "Optional. Users who are allowed for the operation. Each entry should be a valid v1 IAM principal identifier. The format for these is documented at: https://cloud.google.com/iam/docs/principal-identifiers#v1", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "principals" + ], + "type": "object", + "additionalProperties": false + }, + "type": "array" + } + }, + "required": [ + "approvalsNeeded" + ], + "type": "object", + "additionalProperties": false + }, + "type": "array" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "manualApprovals" + ], + "type": "object", + "additionalProperties": false + }, + "eligibleUsers": { + "description": "Who can create grants using this entitlement. This list should contain at most one entry.", + "items": { + "description": "AccessControlEntry is used to control who can do some operation.", + "properties": { + "principals": { + "description": "Optional. Users who are allowed for the operation. Each entry should be a valid v1 IAM principal identifier. The format for these is documented at: https://cloud.google.com/iam/docs/principal-identifiers#v1", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "principals" + ], + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "folderRef": { + "description": "Immutable. The Folder that this resource belongs to. One and only one of 'projectRef', 'folderRef', or 'organizationRef' must be set.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The 'name' field of a folder, when not managed by Config Connector. This field must be set when 'name' field is not set.", + "type": "string" + }, + "name": { + "description": "The 'name' field of a 'Folder' resource. This field must be set when 'external' field is not set.", + "type": "string" + }, + "namespace": { + "description": "The 'namespace' field of a 'Folder' resource. If unset, the namespace is defaulted to the namespace of the referencer resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "location": { + "description": "Immutable. Location of the resource.", + "type": "string" + }, + "maxRequestDuration": { + "description": "Required. The maximum amount of time that access is granted for a request. A requester can ask for a duration less than this, but never more.", + "type": "string" + }, + "organizationRef": { + "description": "Immutable. The Organization that this resource belongs to. One and only one of 'projectRef', 'folderRef', or 'organizationRef' must be set.", + "properties": { + "external": { + "description": "The 'name' field of an organization, when not managed by Config Connector.", + "type": "string" + } + }, + "required": [ + "external" + ], + "type": "object", + "additionalProperties": false + }, + "privilegedAccess": { + "description": "The access granted to a requester on successful approval.", + "properties": { + "gcpIAMAccess": { + "description": "Access to a Google Cloud resource through IAM.", + "properties": { + "roleBindings": { + "description": "Required. Role bindings that are created on successful grant.", + "items": { + "description": "RoleBinding represents IAM role bindings that are created after a successful grant.", + "properties": { + "conditionExpression": { + "description": "Optional. The expression field of the IAM condition to be associated\nwith the role. If specified, a user with an active grant for this\nentitlement is able to access the resource only if this condition\nevaluates to true for their request.\n\nThis field uses the same CEL format as IAM and supports all attributes\nthat IAM supports, except tags. More details can be found at\nhttps://cloud.google.com/iam/docs/conditions-overview#attributes.", + "type": "string" + }, + "role": { + "description": "Required. IAM role to be granted. More details can be found at https://cloud.google.com/iam/docs/roles-overview.", + "type": "string" + } + }, + "required": [ + "role" + ], + "type": "object", + "additionalProperties": false + }, + "type": "array" + } + }, + "required": [ + "roleBindings" + ], + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "gcpIAMAccess" + ], + "type": "object", + "additionalProperties": false + }, + "projectRef": { + "description": "Immutable. The Project that this resource belongs to. One and only one of 'projectRef', 'folderRef', or 'organizationRef' must be set.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `Project` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `Project` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "requesterJustificationConfig": { + "description": "Required. The manner in which the requester should provide a justification for requesting access.", + "properties": { + "notMandatory": { + "description": "NotMandatory justification type means the justification isn't required and can be provided in any of the supported formats. The user must explicitly opt out using this field if a justification from the requester isn't mandatory. The only accepted value is `{}` (empty struct). Either 'notMandatory' or 'unstructured' field must be set.", + "type": "object", + "x-kubernetes-preserve-unknown-fields": true + }, + "unstructured": { + "description": "Unstructured justification type means the justification is in the format of a string. If this is set, the server allows the requester to provide a justification but doesn't validate it. The only accepted value is `{}` (empty struct). Either 'notMandatory' or 'unstructured' field must be set.", + "type": "object", + "x-kubernetes-preserve-unknown-fields": true + } + }, + "type": "object", + "additionalProperties": false + }, + "resourceID": { + "description": "Immutable. The PrivilegedAccessManagerEntitlement name. If not given, the 'metadata.name' will be used.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "ResourceID field is immutable", + "rule": "self == oldSelf" + } + ] + } + }, + "required": [ + "eligibleUsers", + "location", + "maxRequestDuration", + "privilegedAccess", + "requesterJustificationConfig" + ], + "type": "object", + "additionalProperties": false + }, + "status": { + "description": "PrivilegedAccessManagerEntitlementStatus defines the config connector machine state of PrivilegedAccessManagerEntitlement.", + "properties": { + "conditions": { + "description": "Conditions represent the latest available observations of the object's current state.", + "items": { + "properties": { + "lastTransitionTime": { + "description": "Last time the condition transitioned from one status to another.", + "type": "string" + }, + "message": { + "description": "Human-readable message indicating details about last transition.", + "type": "string" + }, + "reason": { + "description": "Unique, one-word, CamelCase reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Status is the status of the condition. Can be True, False, Unknown.", + "type": "string" + }, + "type": { + "description": "Type is the type of the condition.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "externalRef": { + "description": "A unique specifier for the PrivilegedAccessManagerEntitlement resource in GCP.", + "type": "string" + }, + "observedGeneration": { + "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to 'metadata.generation', then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", + "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "createTime": { + "description": "Output only. Create time stamp.", + "type": "string" + }, + "etag": { + "description": "An 'etag' is used for optimistic concurrency control as a way to prevent simultaneous updates to the same entitlement. An 'etag' is returned in the response to 'GetEntitlement' and the caller should put the 'etag' in the request to 'UpdateEntitlement' so that their change is applied on the same version. If this field is omitted or if there is a mismatch while updating an entitlement, then the server rejects the request.", + "type": "string" + }, + "state": { + "description": "Output only. Current state of this entitlement.", + "type": "string" + }, + "updateTime": { + "description": "Output only. Update time stamp.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object" +} diff --git a/redis.cnrm.cloud.google.com/rediscluster_v1alpha1.json b/redis.cnrm.cloud.google.com/rediscluster_v1alpha1.json new file mode 100644 index 00000000..f52ab145 --- /dev/null +++ b/redis.cnrm.cloud.google.com/rediscluster_v1alpha1.json @@ -0,0 +1,396 @@ +{ + "description": "RedisCluster is the Schema for the RedisCluster API", + "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": "RedisClusterSpec defines the desired state of RedisCluster", + "properties": { + "authorizationMode": { + "description": "Optional. The authorization mode of the Redis cluster. If not provided, auth feature is disabled for the cluster.", + "type": "string" + }, + "deletionProtectionEnabled": { + "description": "Optional. The delete operation will fail when the value is set to true.", + "type": "boolean" + }, + "location": { + "description": "Immutable. Location of the resource.", + "type": "string" + }, + "nodeType": { + "description": "Optional. The type of a redis node in the cluster. NodeType determines the underlying machine-type of a redis node.", + "type": "string" + }, + "persistenceConfig": { + "description": "Optional. Persistence config (RDB, AOF) for the cluster.", + "properties": { + "aofConfig": { + "description": "Optional. AOF configuration. This field will be ignored if mode is not AOF.", + "properties": { + "appendFsync": { + "description": "Optional. fsync configuration.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "mode": { + "description": "Optional. The mode of persistence.", + "type": "string" + }, + "rdbConfig": { + "description": "Optional. RDB configuration. This field will be ignored if mode is not RDB.", + "properties": { + "rdbSnapshotPeriod": { + "description": "Optional. Period between RDB snapshots.", + "type": "string" + }, + "rdbSnapshotStartTime": { + "description": "Optional. The time that the first snapshot was/will be attempted, and to which future snapshots will be aligned. If not provided, the current time will be used.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + }, + "projectRef": { + "description": "Immutable. The Project that this resource belongs to.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `Project` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `Project` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "pscConfigs": { + "description": "Required. Each PscConfig configures the consumer network where IPs will be designated to the cluster for client access through Private Service Connect Automation. Currently, only one PscConfig is supported.", + "items": { + "properties": { + "networkRef": { + "description": "Required. The network where the IP address of the discovery endpoint will be reserved, in the form of projects/{network_project}/global/networks/{network_id}.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "A reference to an externally managed Compute Network resource. Should be in the format `projects//global/networks/`.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `ComputeNetwork` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `ComputeNetwork` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "networkRef" + ], + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "redisConfigs": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Key/Value pairs of customer overrides for mutable Redis Configs", + "type": "object" + }, + "replicaCount": { + "description": "Optional. The number of replica nodes per shard.", + "format": "int32", + "type": "integer" + }, + "resourceID": { + "description": "The RedisCluster name. If not given, the metadata.name will be used.", + "type": "string" + }, + "shardCount": { + "description": "Required. Number of shards for the Redis cluster.", + "format": "int32", + "type": "integer" + }, + "transitEncryptionMode": { + "description": "Optional. The in-transit encryption for the Redis cluster. If not provided, encryption is disabled for the cluster.", + "type": "string" + }, + "zoneDistributionConfig": { + "description": "Optional. This config will be used to determine how the customer wants us to distribute cluster resources within the region.", + "properties": { + "mode": { + "description": "Optional. The mode of zone distribution. Defaults to MULTI_ZONE, when not specified.", + "type": "string" + }, + "zone": { + "description": "Optional. When SINGLE ZONE distribution is selected, zone field would be used to allocate all resources in that zone. This is not applicable to MULTI_ZONE, and would be ignored for MULTI_ZONE clusters.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "location", + "projectRef" + ], + "type": "object", + "additionalProperties": false + }, + "status": { + "description": "RedisClusterStatus defines the config connector machine state of RedisCluster", + "properties": { + "conditions": { + "description": "Conditions represent the latest available observations of the object's current state.", + "items": { + "properties": { + "lastTransitionTime": { + "description": "Last time the condition transitioned from one status to another.", + "type": "string" + }, + "message": { + "description": "Human-readable message indicating details about last transition.", + "type": "string" + }, + "reason": { + "description": "Unique, one-word, CamelCase reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Status is the status of the condition. Can be True, False, Unknown.", + "type": "string" + }, + "type": { + "description": "Type is the type of the condition.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "externalRef": { + "description": "A unique specifier for the RedisCluster resource in GCP.", + "type": "string" + }, + "observedGeneration": { + "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", + "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "createTime": { + "description": "Output only. The timestamp associated with the cluster creation request.", + "type": "string" + }, + "discoveryEndpoints": { + "description": "Output only. Endpoints created on each given network, for Redis clients to connect to the cluster. Currently only one discovery endpoint is supported.", + "items": { + "properties": { + "address": { + "description": "Output only. Address of the exposed Redis endpoint used by clients to connect to the service. The address could be either IP or hostname.", + "type": "string" + }, + "port": { + "description": "Output only. The port number of the exposed Redis endpoint.", + "format": "int32", + "type": "integer" + }, + "pscConfig": { + "description": "Output only. Customer configuration for where the endpoint is created and accessed from.", + "properties": { + "network": { + "description": "Required. The network where the IP address of the discovery endpoint will be reserved, in the form of projects/{network_project}/global/networks/{network_id}.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "preciseSizeGb": { + "description": "Output only. Precise value of redis memory size in GB for the entire cluster.", + "type": "number" + }, + "pscConnections": { + "description": "Output only. PSC connections for discovery of the cluster topology and accessing the cluster.", + "items": { + "properties": { + "address": { + "description": "Output only. The IP allocated on the consumer network for the PSC forwarding rule.", + "type": "string" + }, + "forwardingRule": { + "description": "Output only. The URI of the consumer side forwarding rule. Example: projects/{projectNumOrId}/regions/us-east1/forwardingRules/{resourceId}.", + "type": "string" + }, + "network": { + "description": "The consumer network where the IP address resides, in the form of projects/{project_id}/global/networks/{network_id}.", + "type": "string" + }, + "projectID": { + "description": "Output only. The consumer project_id where the forwarding rule is created from.", + "type": "string" + }, + "pscConnectionID": { + "description": "Output only. The PSC connection id of the forwarding rule connected to the service attachment.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "sizeGb": { + "description": "Output only. Redis memory size in GB for the entire cluster rounded up to the next integer.", + "format": "int32", + "type": "integer" + }, + "state": { + "description": "Output only. The current state of this cluster. Can be CREATING, READY, UPDATING, DELETING and SUSPENDED", + "type": "string" + }, + "stateInfo": { + "description": "Output only. Additional information about the current state of the cluster.", + "properties": { + "updateInfo": { + "description": "Describes ongoing update on the cluster when cluster state is UPDATING.", + "properties": { + "targetReplicaCount": { + "description": "Target number of replica nodes per shard.", + "format": "int32", + "type": "integer" + }, + "targetShardCount": { + "description": "Target number of shards for redis cluster", + "format": "int32", + "type": "integer" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + }, + "uid": { + "description": "Output only. System assigned, unique identifier for the cluster.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object" +} diff --git a/redis.cnrm.cloud.google.com/rediscluster_v1beta1.json b/redis.cnrm.cloud.google.com/rediscluster_v1beta1.json new file mode 100644 index 00000000..f52ab145 --- /dev/null +++ b/redis.cnrm.cloud.google.com/rediscluster_v1beta1.json @@ -0,0 +1,396 @@ +{ + "description": "RedisCluster is the Schema for the RedisCluster API", + "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": "RedisClusterSpec defines the desired state of RedisCluster", + "properties": { + "authorizationMode": { + "description": "Optional. The authorization mode of the Redis cluster. If not provided, auth feature is disabled for the cluster.", + "type": "string" + }, + "deletionProtectionEnabled": { + "description": "Optional. The delete operation will fail when the value is set to true.", + "type": "boolean" + }, + "location": { + "description": "Immutable. Location of the resource.", + "type": "string" + }, + "nodeType": { + "description": "Optional. The type of a redis node in the cluster. NodeType determines the underlying machine-type of a redis node.", + "type": "string" + }, + "persistenceConfig": { + "description": "Optional. Persistence config (RDB, AOF) for the cluster.", + "properties": { + "aofConfig": { + "description": "Optional. AOF configuration. This field will be ignored if mode is not AOF.", + "properties": { + "appendFsync": { + "description": "Optional. fsync configuration.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "mode": { + "description": "Optional. The mode of persistence.", + "type": "string" + }, + "rdbConfig": { + "description": "Optional. RDB configuration. This field will be ignored if mode is not RDB.", + "properties": { + "rdbSnapshotPeriod": { + "description": "Optional. Period between RDB snapshots.", + "type": "string" + }, + "rdbSnapshotStartTime": { + "description": "Optional. The time that the first snapshot was/will be attempted, and to which future snapshots will be aligned. If not provided, the current time will be used.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + }, + "projectRef": { + "description": "Immutable. The Project that this resource belongs to.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `Project` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `Project` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "pscConfigs": { + "description": "Required. Each PscConfig configures the consumer network where IPs will be designated to the cluster for client access through Private Service Connect Automation. Currently, only one PscConfig is supported.", + "items": { + "properties": { + "networkRef": { + "description": "Required. The network where the IP address of the discovery endpoint will be reserved, in the form of projects/{network_project}/global/networks/{network_id}.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "A reference to an externally managed Compute Network resource. Should be in the format `projects//global/networks/`.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `ComputeNetwork` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `ComputeNetwork` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "networkRef" + ], + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "redisConfigs": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Key/Value pairs of customer overrides for mutable Redis Configs", + "type": "object" + }, + "replicaCount": { + "description": "Optional. The number of replica nodes per shard.", + "format": "int32", + "type": "integer" + }, + "resourceID": { + "description": "The RedisCluster name. If not given, the metadata.name will be used.", + "type": "string" + }, + "shardCount": { + "description": "Required. Number of shards for the Redis cluster.", + "format": "int32", + "type": "integer" + }, + "transitEncryptionMode": { + "description": "Optional. The in-transit encryption for the Redis cluster. If not provided, encryption is disabled for the cluster.", + "type": "string" + }, + "zoneDistributionConfig": { + "description": "Optional. This config will be used to determine how the customer wants us to distribute cluster resources within the region.", + "properties": { + "mode": { + "description": "Optional. The mode of zone distribution. Defaults to MULTI_ZONE, when not specified.", + "type": "string" + }, + "zone": { + "description": "Optional. When SINGLE ZONE distribution is selected, zone field would be used to allocate all resources in that zone. This is not applicable to MULTI_ZONE, and would be ignored for MULTI_ZONE clusters.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "location", + "projectRef" + ], + "type": "object", + "additionalProperties": false + }, + "status": { + "description": "RedisClusterStatus defines the config connector machine state of RedisCluster", + "properties": { + "conditions": { + "description": "Conditions represent the latest available observations of the object's current state.", + "items": { + "properties": { + "lastTransitionTime": { + "description": "Last time the condition transitioned from one status to another.", + "type": "string" + }, + "message": { + "description": "Human-readable message indicating details about last transition.", + "type": "string" + }, + "reason": { + "description": "Unique, one-word, CamelCase reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Status is the status of the condition. Can be True, False, Unknown.", + "type": "string" + }, + "type": { + "description": "Type is the type of the condition.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "externalRef": { + "description": "A unique specifier for the RedisCluster resource in GCP.", + "type": "string" + }, + "observedGeneration": { + "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", + "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "createTime": { + "description": "Output only. The timestamp associated with the cluster creation request.", + "type": "string" + }, + "discoveryEndpoints": { + "description": "Output only. Endpoints created on each given network, for Redis clients to connect to the cluster. Currently only one discovery endpoint is supported.", + "items": { + "properties": { + "address": { + "description": "Output only. Address of the exposed Redis endpoint used by clients to connect to the service. The address could be either IP or hostname.", + "type": "string" + }, + "port": { + "description": "Output only. The port number of the exposed Redis endpoint.", + "format": "int32", + "type": "integer" + }, + "pscConfig": { + "description": "Output only. Customer configuration for where the endpoint is created and accessed from.", + "properties": { + "network": { + "description": "Required. The network where the IP address of the discovery endpoint will be reserved, in the form of projects/{network_project}/global/networks/{network_id}.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "preciseSizeGb": { + "description": "Output only. Precise value of redis memory size in GB for the entire cluster.", + "type": "number" + }, + "pscConnections": { + "description": "Output only. PSC connections for discovery of the cluster topology and accessing the cluster.", + "items": { + "properties": { + "address": { + "description": "Output only. The IP allocated on the consumer network for the PSC forwarding rule.", + "type": "string" + }, + "forwardingRule": { + "description": "Output only. The URI of the consumer side forwarding rule. Example: projects/{projectNumOrId}/regions/us-east1/forwardingRules/{resourceId}.", + "type": "string" + }, + "network": { + "description": "The consumer network where the IP address resides, in the form of projects/{project_id}/global/networks/{network_id}.", + "type": "string" + }, + "projectID": { + "description": "Output only. The consumer project_id where the forwarding rule is created from.", + "type": "string" + }, + "pscConnectionID": { + "description": "Output only. The PSC connection id of the forwarding rule connected to the service attachment.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "sizeGb": { + "description": "Output only. Redis memory size in GB for the entire cluster rounded up to the next integer.", + "format": "int32", + "type": "integer" + }, + "state": { + "description": "Output only. The current state of this cluster. Can be CREATING, READY, UPDATING, DELETING and SUSPENDED", + "type": "string" + }, + "stateInfo": { + "description": "Output only. Additional information about the current state of the cluster.", + "properties": { + "updateInfo": { + "description": "Describes ongoing update on the cluster when cluster state is UPDATING.", + "properties": { + "targetReplicaCount": { + "description": "Target number of replica nodes per shard.", + "format": "int32", + "type": "integer" + }, + "targetShardCount": { + "description": "Target number of shards for redis cluster", + "format": "int32", + "type": "integer" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + }, + "uid": { + "description": "Output only. System assigned, unique identifier for the cluster.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object" +} diff --git a/redis.cnrm.cloud.google.com/redisinstance_v1beta1.json b/redis.cnrm.cloud.google.com/redisinstance_v1beta1.json index fe141b95..6da68862 100644 --- a/redis.cnrm.cloud.google.com/redisinstance_v1beta1.json +++ b/redis.cnrm.cloud.google.com/redisinstance_v1beta1.json @@ -210,7 +210,7 @@ "type": "string" }, "scheduleDeadlineTime": { - "description": "Output only. The deadline that the maintenance schedule start time\ncan not go beyond, including reschedule.\nA timestamp in RFC3339 UTC \"Zulu\" format, with nanosecond\nresolution and up to nine fractional digits.", + "description": "Output only. The deadline that the maintenance schedule start time\ncannot go beyond, including reschedule.\nA timestamp in RFC3339 UTC \"Zulu\" format, with nanosecond\nresolution and up to nine fractional digits.", "type": "string" }, "startTime": { @@ -354,7 +354,7 @@ "type": "string" }, "scheduleDeadlineTime": { - "description": "Output only. The deadline that the maintenance schedule start time\ncan not go beyond, including reschedule.\nA timestamp in RFC3339 UTC \"Zulu\" format, with nanosecond\nresolution and up to nine fractional digits.", + "description": "Output only. The deadline that the maintenance schedule start time\ncannot go beyond, including reschedule.\nA timestamp in RFC3339 UTC \"Zulu\" format, with nanosecond\nresolution and up to nine fractional digits.", "type": "string" }, "startTime": { diff --git a/run.cnrm.cloud.google.com/runjob_v1beta1.json b/run.cnrm.cloud.google.com/runjob_v1beta1.json index 6ae93d77..7574eb7a 100644 --- a/run.cnrm.cloud.google.com/runjob_v1beta1.json +++ b/run.cnrm.cloud.google.com/runjob_v1beta1.json @@ -606,6 +606,66 @@ "description": "A list of Volumes to make available to containers.", "items": { "properties": { + "cloudSqlInstance": { + "description": "For Cloud SQL volumes, contains the specific instances that should be mounted. Visit https://cloud.google.com/sql/docs/mysql/connect-run for more information on how to connect Cloud SQL and Cloud Run.", + "properties": { + "instanceRefs": { + "items": { + "description": "The Cloud SQL instance connection names, as can be found in https://console.cloud.google.com/sql/instances. Visit https://cloud.google.com/sql/docs/mysql/connect-run for more information on how to connect Cloud SQL and Cloud Run. Format: {project}:{location}:{instance}", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "Allowed value: The `connectionName` field of a `SQLInstance` resource.", + "type": "string" + }, + "name": { + "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "type": "string" + }, + "namespace": { + "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + } + }, + "type": "object", + "additionalProperties": false + }, "emptyDir": { "description": "Ephemeral storage used as a shared volume.", "properties": { diff --git a/secretmanager.cnrm.cloud.google.com/secretmanagersecret_v1beta1.json b/secretmanager.cnrm.cloud.google.com/secretmanagersecret_v1beta1.json index 9921a093..de38a8fe 100644 --- a/secretmanager.cnrm.cloud.google.com/secretmanagersecret_v1beta1.json +++ b/secretmanager.cnrm.cloud.google.com/secretmanagersecret_v1beta1.json @@ -1,40 +1,42 @@ { + "description": "SecretManagerSecret is the Schema for the SecretManagerSecret API", "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/api-conventions.md#resources", + "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/api-conventions.md#types-kinds", + "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": "SecretManagerSecretSpec defines the desired state of SecretManagerSecret", "properties": { "annotations": { "additionalProperties": { "type": "string" }, - "description": "Custom metadata about the secret.\n\nAnnotations are distinct from various forms of labels. Annotations exist to allow\nclient tools to store their own state information without requiring a database.\n\nAnnotation keys must be between 1 and 63 characters long, have a UTF-8 encoding of\nmaximum 128 bytes, begin and end with an alphanumeric character ([a-z0-9A-Z]), and\nmay have dashes (-), underscores (_), dots (.), and alphanumerics in between these\nsymbols.\n\nThe total size of annotation keys and values must be less than 16KiB.\n\nAn object containing a list of \"key\": value pairs. Example:\n{ \"name\": \"wrench\", \"mass\": \"1.3kg\", \"count\": \"3\" }.", + "description": "Optional. Custom metadata about the secret.\n\n Annotations are distinct from various forms of labels.\n Annotations exist to allow client tools to store their own state\n information without requiring a database.\n\n Annotation keys must be between 1 and 63 characters long, have a UTF-8\n encoding of maximum 128 bytes, begin and end with an alphanumeric character\n ([a-z0-9A-Z]), and may have dashes (-), underscores (_), dots (.), and\n alphanumerics in between these symbols.\n\n The total size of annotation keys and values must be less than 16KiB.", "type": "object" }, "expireTime": { - "description": "Timestamp in UTC when the Secret is scheduled to expire. This is always provided on output, regardless of what was sent on input.\nA timestamp in RFC3339 UTC \"Zulu\" format, with nanosecond resolution and up to nine fractional digits. Examples: \"2014-10-02T15:01:23Z\" and \"2014-10-02T15:01:23.045123456Z\".", + "description": "Optional. Timestamp in UTC when the [Secret][google.cloud.secretmanager.v1.Secret] is scheduled to expire. This is always provided on output, regardless of what was sent on input.", "type": "string" }, "replication": { - "description": "Immutable. The replication policy of the secret data attached to the Secret. It cannot be changed\nafter the Secret has been created.", + "description": "Optional. Immutable. The replication policy of the secret data attached to\n the [Secret][google.cloud.secretmanager.v1.Secret].\n\n The replication policy cannot be changed after the Secret has been created.", "properties": { "auto": { - "description": "The Secret will automatically be replicated without any restrictions.", + "description": "The [Secret][google.cloud.secretmanager.v1.Secret] will automatically be replicated without any restrictions.", "properties": { "customerManagedEncryption": { - "description": "The customer-managed encryption configuration of the Secret.\nIf no configuration is provided, Google-managed default\nencryption is used.", + "description": "Optional. The customer-managed encryption configuration of the\n [Secret][google.cloud.secretmanager.v1.Secret]. If no configuration is\n provided, Google-managed default encryption is used.\n\n Updates to the [Secret][google.cloud.secretmanager.v1.Secret] encryption\n configuration only apply to\n [SecretVersions][google.cloud.secretmanager.v1.SecretVersion] added\n afterwards. They do not apply retroactively to existing\n [SecretVersions][google.cloud.secretmanager.v1.SecretVersion].", "properties": { "kmsKeyRef": { - "description": "The customer-managed encryption configuration of the Secret.\nIf no configuration is provided, Google-managed default\nencryption is used.", + "description": "Required. The resource name of the Cloud KMS CryptoKey used to encrypt\n secret payloads.\n\n For secrets using the\n [UserManaged][google.cloud.secretmanager.v1.Replication.UserManaged]\n replication policy type, Cloud KMS CryptoKeys must reside in the same\n location as the [replica location][Secret.UserManaged.Replica.location].\n\n For secrets using the\n [Automatic][google.cloud.secretmanager.v1.Replication.Automatic]\n replication policy type, Cloud KMS CryptoKeys must reside in `global`.\n\n The expected format is `projects/*/locations/*/keyRings/*/cryptoKeys/*`.", "oneOf": [ { "not": { @@ -68,15 +70,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `KMSCryptoKey` resource.", + "description": "A reference to an externally managed KMSCryptoKey. Should be in the format `projects/[kms_project_id]/locations/[region]/keyRings/[key_ring_id]/cryptoKeys/[key]`.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` of a `KMSCryptoKey` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` of a `KMSCryptoKey` resource.", "type": "string" } }, @@ -99,17 +101,17 @@ "type": "boolean" }, "userManaged": { - "description": "Immutable. The Secret will be replicated to the regions specified by the user.", + "description": "The [Secret][google.cloud.secretmanager.v1.Secret] will only be replicated into the locations specified.", "properties": { "replicas": { - "description": "Immutable. The list of Replicas for this Secret. Cannot be empty.", + "description": "Required. The list of Replicas for this\n [Secret][google.cloud.secretmanager.v1.Secret].\n\n Cannot be empty.", "items": { "properties": { "customerManagedEncryption": { - "description": "Customer Managed Encryption for the secret.", + "description": "Optional. The customer-managed encryption configuration of the\n [User-Managed Replica][Replication.UserManaged.Replica]. If no\n configuration is provided, Google-managed default encryption is used.\n\n Updates to the [Secret][google.cloud.secretmanager.v1.Secret]\n encryption configuration only apply to\n [SecretVersions][google.cloud.secretmanager.v1.SecretVersion] added\n afterwards. They do not apply retroactively to existing\n [SecretVersions][google.cloud.secretmanager.v1.SecretVersion].", "properties": { "kmsKeyRef": { - "description": "Customer Managed Encryption for the secret.", + "description": "Required. The resource name of the Cloud KMS CryptoKey used to encrypt\n secret payloads.\n\n For secrets using the\n [UserManaged][google.cloud.secretmanager.v1.Replication.UserManaged]\n replication policy type, Cloud KMS CryptoKeys must reside in the same\n location as the [replica location][Secret.UserManaged.Replica.location].\n\n For secrets using the\n [Automatic][google.cloud.secretmanager.v1.Replication.Automatic]\n replication policy type, Cloud KMS CryptoKeys must reside in `global`.\n\n The expected format is `projects/*/locations/*/keyRings/*/cryptoKeys/*`.", "oneOf": [ { "not": { @@ -143,15 +145,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `KMSCryptoKey` resource.", + "description": "A reference to an externally managed KMSCryptoKey. Should be in the format `projects/[kms_project_id]/locations/[region]/keyRings/[key_ring_id]/cryptoKeys/[key]`.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` of a `KMSCryptoKey` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` of a `KMSCryptoKey` resource.", "type": "string" } }, @@ -166,7 +168,7 @@ "additionalProperties": false }, "location": { - "description": "Immutable. The canonical IDs of the location to replicate data. For example: \"us-east1\".", + "description": "The canonical IDs of the location to replicate data. For example: `\"us-east1\"`.", "type": "string" } }, @@ -190,18 +192,24 @@ "additionalProperties": false }, "resourceID": { - "description": "Immutable. Optional. The secretId of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default.", - "type": "string" + "description": "Immutable. The SecretManagerSecret name. If not given, the metadata.name will be used.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "ResourceID field is immutable", + "rule": "self == oldSelf" + } + ] }, "rotation": { - "description": "The rotation time and period for a Secret. At 'next_rotation_time', Secret Manager will send a Pub/Sub notification to the topics configured on the Secret. 'topics' must be set to configure rotation.", + "description": "Optional. Rotation policy attached to the [Secret][google.cloud.secretmanager.v1.Secret]. May be excluded if there is no rotation policy.", "properties": { "nextRotationTime": { - "description": "Timestamp in UTC at which the Secret is scheduled to rotate.\nA timestamp in RFC3339 UTC \"Zulu\" format, with nanosecond resolution and up to nine fractional digits. Examples: \"2014-10-02T15:01:23Z\" and \"2014-10-02T15:01:23.045123456Z\".", + "description": "Optional. Timestamp in UTC at which the\n [Secret][google.cloud.secretmanager.v1.Secret] is scheduled to rotate.\n Cannot be set to less than 300s (5 min) in the future and at most\n 3153600000s (100 years).\n\n [next_rotation_time][google.cloud.secretmanager.v1.Rotation.next_rotation_time]\n MUST be set if\n [rotation_period][google.cloud.secretmanager.v1.Rotation.rotation_period]\n is set.", "type": "string" }, "rotationPeriod": { - "description": "Immutable. The Duration between rotation notifications. Must be in seconds and at least 3600s (1h) and at most 3153600000s (100 years).\nIf rotationPeriod is set, 'next_rotation_time' must be set. 'next_rotation_time' will be advanced by this period when the service automatically sends rotation notifications.", + "description": "Input only. The Duration between rotation notifications. Must be in seconds\n and at least 3600s (1h) and at most 3153600000s (100 years).\n\n If\n [rotation_period][google.cloud.secretmanager.v1.Rotation.rotation_period]\n is set,\n [next_rotation_time][google.cloud.secretmanager.v1.Rotation.next_rotation_time]\n must be set.\n [next_rotation_time][google.cloud.secretmanager.v1.Rotation.next_rotation_time]\n will be advanced by this period when the service automatically sends\n rotation notifications.", "type": "string" } }, @@ -209,11 +217,10 @@ "additionalProperties": false }, "topics": { - "description": "A list of up to 10 Pub/Sub topics to which messages are published when control plane operations are called on the secret or its versions.", + "description": "Optional. A list of up to 10 Pub/Sub topics to which messages are published when control plane operations are called on the secret or its versions.", "items": { "properties": { "topicRef": { - "description": "A list of up to 10 Pub/Sub topics to which messages are\npublished when control plane operations are called on the secret\nor its versions.", "oneOf": [ { "not": { @@ -247,15 +254,15 @@ ], "properties": { "external": { - "description": "Allowed value: string of the format `projects/{{project}}/topics/{{value}}`, where {{value}} is the `name` field of a `PubSubTopic` resource.", + "description": "If provided must be in the format `projects/[project_id]/topics/[topic_id]`.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `metadata.name` field of a `PubSubTopic` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `metadata.namespace` field of a `PubSubTopic` resource.", "type": "string" } }, @@ -272,27 +279,25 @@ "type": "array" }, "ttl": { - "description": "Immutable. The TTL for the Secret.\nA duration in seconds with up to nine fractional digits, terminated by 's'. Example: \"3.5s\".", + "description": "Input only. The TTL for the [Secret][google.cloud.secretmanager.v1.Secret].", "type": "string" }, "versionAliases": { "additionalProperties": { "type": "string" }, - "description": "Mapping from version alias to version name.\n\nA version alias is a string with a maximum length of 63 characters and can contain\nuppercase and lowercase letters, numerals, and the hyphen (-) and underscore ('_')\ncharacters. An alias string must start with a letter and cannot be the string\n'latest' or 'NEW'. No more than 50 aliases can be assigned to a given secret.\n\nAn object containing a list of \"key\": value pairs. Example:\n{ \"name\": \"wrench\", \"mass\": \"1.3kg\", \"count\": \"3\" }.", + "description": "Optional. Mapping from version alias to version name.\n\n A version alias is a string with a maximum length of 63 characters and can\n contain uppercase and lowercase letters, numerals, and the hyphen (`-`)\n and underscore ('_') characters. An alias string must start with a\n letter and cannot be the string 'latest' or 'NEW'.\n No more than 50 aliases can be assigned to a given secret.\n\n Version-Alias pairs will be viewable via GetSecret and modifiable via\n UpdateSecret. Access by alias is only be supported on\n GetSecretVersion and AccessSecretVersion.", "type": "object" } }, - "required": [ - "replication" - ], "type": "object", "additionalProperties": false }, "status": { + "description": "SecretManagerSecretStatus defines the config connector machine state of SecretManagerSecret", "properties": { "conditions": { - "description": "Conditions represent the latest available observation of the resource's current state.", + "description": "Conditions represent the latest available observations of the object's current state.", "items": { "properties": { "lastTransitionTime": { @@ -321,25 +326,27 @@ }, "type": "array" }, - "createTime": { - "description": "The time at which the Secret was created.", + "externalRef": { + "description": "A unique specifier for the SecretManagerSecret resource in GCP.", "type": "string" }, "name": { - "description": "The resource name of the Secret. Format:\n'projects/{{project}}/secrets/{{secret_id}}'.", + "description": "[DEPRECATED] Please read from `.status.externalRef` instead. Config Connector will remove the `.status.name` in v1 Version.", "type": "string" }, "observedGeneration": { "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "type": "object" } }, "type": "object", "additionalProperties": false } }, - "required": [ - "spec" - ], "type": "object" } diff --git a/securesourcemanager.cnrm.cloud.google.com/securesourcemanagerinstance_v1alpha1.json b/securesourcemanager.cnrm.cloud.google.com/securesourcemanagerinstance_v1alpha1.json index c39649b7..e7623894 100644 --- a/securesourcemanager.cnrm.cloud.google.com/securesourcemanagerinstance_v1alpha1.json +++ b/securesourcemanager.cnrm.cloud.google.com/securesourcemanagerinstance_v1alpha1.json @@ -1,5 +1,5 @@ { - "description": "SecureSourceManagerInstance is the Schema for the monitoring API", + "description": "SecureSourceManagerInstance is the Schema for the SecureSourceManagerInstance API", "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", @@ -13,17 +13,57 @@ "type": "object" }, "spec": { + "description": "SecureSourceManagerInstanceSpec defines the desired state of SecureSourceManagerInstance", "properties": { - "kmsKey": { - "description": "Optional. Immutable. Customer-managed encryption key name, in the format projects/*/locations/*/keyRings/*/cryptoKeys/*.", - "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" + "kmsKeyRef": { + "description": "Optional. Immutable. Customer-managed encryption key name.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "A reference to an externally managed KMSCryptoKey. Should be in the format `projects/[kms_project_id]/locations/[region]/keyRings/[key_ring_id]/cryptoKeys/[key]`.", + "type": "string" + }, + "name": { + "description": "The `name` of a `KMSCryptoKey` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` of a `KMSCryptoKey` resource.", + "type": "string" + } }, - "description": "Optional. Labels as key value pairs.", - "type": "object" + "type": "object", + "additionalProperties": false }, "location": { "description": "Immutable. Location of the instance.", @@ -64,7 +104,7 @@ ], "properties": { "external": { - "description": "The `projectID` field of a project, when not managed by KCC.", + "description": "The `projectID` field of a project, when not managed by Config Connector.", "type": "string" }, "kind": { @@ -96,9 +136,10 @@ "additionalProperties": false }, "status": { + "description": "SecureSourceManagerInstanceStatus defines the config connector machine state of SecureSourceManagerInstance", "properties": { "conditions": { - "description": "Conditions represent the latest available observations of the SecureSourceManagerInstance's current state.", + "description": "Conditions represent the latest available observations of the object's current state.", "items": { "properties": { "lastTransitionTime": { @@ -127,13 +168,17 @@ }, "type": "array" }, + "externalRef": { + "description": "A unique specifier for the SecureSourceManagerInstance resource in GCP.", + "type": "string" + }, "observedGeneration": { "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", "format": "int64", "type": "integer" }, "observedState": { - "description": "ObservedState is the latest GCP state.", + "description": "ObservedState is the state of the resource as most recently observed in GCP.", "properties": { "hostConfig": { "description": "Output only. A list of hostnames for this instance.", @@ -142,11 +187,11 @@ "description": "Output only. API hostname. This is the hostname to use for **Host: Data Plane** endpoints.", "type": "string" }, - "gitHttp": { + "gitHTTP": { "description": "Output only. Git HTTP hostname.", "type": "string" }, - "gitSsh": { + "gitSSH": { "description": "Output only. Git SSH hostname.", "type": "string" }, @@ -175,8 +220,5 @@ "additionalProperties": false } }, - "required": [ - "spec" - ], "type": "object" } diff --git a/securesourcemanager.cnrm.cloud.google.com/securesourcemanagerrepository_v1alpha1.json b/securesourcemanager.cnrm.cloud.google.com/securesourcemanagerrepository_v1alpha1.json new file mode 100644 index 00000000..d34a4f92 --- /dev/null +++ b/securesourcemanager.cnrm.cloud.google.com/securesourcemanagerrepository_v1alpha1.json @@ -0,0 +1,248 @@ +{ + "description": "SecureSourceManagerRepository is the Schema for the SecureSourceManagerRepository API", + "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": "SecureSourceManagerRepositorySpec defines the desired state of SecureSourceManagerRepository", + "properties": { + "initialConfig": { + "description": "Input only. Initial configurations for the repository.", + "properties": { + "defaultBranch": { + "description": "Default branch name of the repository.", + "type": "string" + }, + "gitignores": { + "description": "List of gitignore template names user can choose from. Valid values: actionscript, ada, agda, android, anjuta, ansible, appcelerator-titanium, app-engine, archives, arch-linux-packages, atmel-studio, autotools, backup, bazaar, bazel, bitrix, bricx-cc, c, cake-php, calabash, cf-wheels, chef-cookbook, clojure, cloud9, c-make, code-igniter, code-kit, code-sniffer, common-lisp, composer, concrete5, coq, cordova, cpp, craft-cms, cuda, cvs, d, dart, dart-editor, delphi, diff, dm, dreamweaver, dropbox, drupal, drupal-7, eagle, eclipse, eiffel-studio, elisp, elixir, elm, emacs, ensime, epi-server, erlang, esp-idf, espresso, exercism, expression-engine, ext-js, fancy, finale, flex-builder, force-dot-com, fortran, fuel-php, gcov, git-book, gnome-shell-extension, go, godot, gpg, gradle, grails, gwt, haskell, hugo, iar-ewarm, idris, igor-pro, images, infor-cms, java, jboss, jboss-4, jboss-6, jdeveloper, jekyll, jenkins-home, jenv, jet-brains, jigsaw, joomla, julia, jupyter-notebooks, kate, kdevelop4, kentico, ki-cad, kohana, kotlin, lab-view, laravel, lazarus, leiningen, lemon-stand, libre-office, lilypond, linux, lithium, logtalk, lua, lyx, mac-os, magento, magento-1, magento-2, matlab, maven, mercurial, mercury, metals, meta-programming-system, meteor, microsoft-office, model-sim, momentics, mono-develop, nanoc, net-beans, nikola, nim, ninja, node, notepad-pp, nwjs, objective--c, ocaml, octave, opa, open-cart, openssl, oracle-forms, otto, packer, patch, perl, perl6, phalcon, phoenix, pimcore, play-framework, plone, prestashop, processing, psoc-creator, puppet, pure-script, putty, python, qooxdoo, qt, r, racket, rails, raku, red, redcar, redis, rhodes-rhomobile, ros, ruby, rust, sam, sass, sbt, scala, scheme, scons, scrivener, sdcc, seam-gen, sketch-up, slick-edit, smalltalk, snap, splunk, stata, stella, sublime-text, sugar-crm, svn, swift, symfony, symphony-cms, synopsys-vcs, tags, terraform, tex, text-mate, textpattern, think-php, tortoise-git, turbo-gears-2, typo3, umbraco, unity, unreal-engine, vagrant, vim, virtual-env, virtuoso, visual-studio, visual-studio-code, vue, vvvv, waf, web-methods, windows, word-press, xcode, xilinx, xilinx-ise, xojo, yeoman, yii, zend-framework, zephir.", + "items": { + "type": "string" + }, + "type": "array" + }, + "license": { + "description": "License template name user can choose from. Valid values: license-0bsd, license-389-exception, aal, abstyles, adobe-2006, adobe-glyph, adsl, afl-1-1, afl-1-2, afl-2-0, afl-2-1, afl-3-0, afmparse, agpl-1-0, agpl-1-0-only, agpl-1-0-or-later, agpl-3-0-only, agpl-3-0-or-later, aladdin, amdplpa, aml, ampas, antlr-pd, antlr-pd-fallback, apache-1-0, apache-1-1, apache-2-0, apafml, apl-1-0, apsl-1-0, apsl-1-1, apsl-1-2, apsl-2-0, artistic-1-0, artistic-1-0-cl8, artistic-1-0-perl, artistic-2-0, autoconf-exception-2-0, autoconf-exception-3-0, bahyph, barr, beerware, bison-exception-2-2, bittorrent-1-0, bittorrent-1-1, blessing, blueoak-1-0-0, bootloader-exception, borceux, bsd-1-clause, bsd-2-clause, bsd-2-clause-freebsd, bsd-2-clause-netbsd, bsd-2-clause-patent, bsd-2-clause-views, bsd-3-clause, bsd-3-clause-attribution, bsd-3-clause-clear, bsd-3-clause-lbnl, bsd-3-clause-modification, bsd-3-clause-no-nuclear-license, bsd-3-clause-no-nuclear-license-2014, bsd-3-clause-no-nuclear-warranty, bsd-3-clause-open-mpi, bsd-4-clause, bsd-4-clause-shortened, bsd-4-clause-uc, bsd-protection, bsd-source-code, bsl-1-0, busl-1-1, cal-1-0, cal-1-0-combined-work-exception, caldera, catosl-1-1, cc0-1-0, cc-by-1-0, cc-by-2-0, cc-by-3-0, cc-by-3-0-at, cc-by-3-0-us, cc-by-4-0, cc-by-nc-1-0, cc-by-nc-2-0, cc-by-nc-3-0, cc-by-nc-4-0, cc-by-nc-nd-1-0, cc-by-nc-nd-2-0, cc-by-nc-nd-3-0, cc-by-nc-nd-3-0-igo, cc-by-nc-nd-4-0, cc-by-nc-sa-1-0, cc-by-nc-sa-2-0, cc-by-nc-sa-3-0, cc-by-nc-sa-4-0, cc-by-nd-1-0, cc-by-nd-2-0, cc-by-nd-3-0, cc-by-nd-4-0, cc-by-sa-1-0, cc-by-sa-2-0, cc-by-sa-2-0-uk, cc-by-sa-2-1-jp, cc-by-sa-3-0, cc-by-sa-3-0-at, cc-by-sa-4-0, cc-pddc, cddl-1-0, cddl-1-1, cdla-permissive-1-0, cdla-sharing-1-0, cecill-1-0, cecill-1-1, cecill-2-0, cecill-2-1, cecill-b, cecill-c, cern-ohl-1-1, cern-ohl-1-2, cern-ohl-p-2-0, cern-ohl-s-2-0, cern-ohl-w-2-0, clartistic, classpath-exception-2-0, clisp-exception-2-0, cnri-jython, cnri-python, cnri-python-gpl-compatible, condor-1-1, copyleft-next-0-3-0, copyleft-next-0-3-1, cpal-1-0, cpl-1-0, cpol-1-02, crossword, crystal-stacker, cua-opl-1-0, cube, c-uda-1-0, curl, d-fsl-1-0, diffmark, digirule-foss-exception, doc, dotseqn, drl-1-0, dsdp, dvipdfm, ecl-1-0, ecl-2-0, ecos-exception-2-0, efl-1-0, efl-2-0, egenix, entessa, epics, epl-1-0, epl-2-0, erlpl-1-1, etalab-2-0, eu-datagrid, eupl-1-0, eupl-1-1, eupl-1-2, eurosym, fair, fawkes-runtime-exception, fltk-exception, font-exception-2-0, frameworx-1-0, freebsd-doc, freeimage, freertos-exception-2-0, fsfap, fsful, fsfullr, ftl, gcc-exception-2-0, gcc-exception-3-1, gd, gfdl-1-1-invariants-only, gfdl-1-1-invariants-or-later, gfdl-1-1-no-invariants-only, gfdl-1-1-no-invariants-or-later, gfdl-1-1-only, gfdl-1-1-or-later, gfdl-1-2-invariants-only, gfdl-1-2-invariants-or-later, gfdl-1-2-no-invariants-only, gfdl-1-2-no-invariants-or-later, gfdl-1-2-only, gfdl-1-2-or-later, gfdl-1-3-invariants-only, gfdl-1-3-invariants-or-later, gfdl-1-3-no-invariants-only, gfdl-1-3-no-invariants-or-later, gfdl-1-3-only, gfdl-1-3-or-later, giftware, gl2ps, glide, glulxe, glwtpl, gnu-javamail-exception, gnuplot, gpl-1-0-only, gpl-1-0-or-later, gpl-2-0-only, gpl-2-0-or-later, gpl-3-0-linking-exception, gpl-3-0-linking-source-exception, gpl-3-0-only, gpl-3-0-or-later, gpl-cc-1-0, gsoap-1-3b, haskell-report, hippocratic-2-1, hpnd, hpnd-sell-variant, htmltidy, i2p-gpl-java-exception, ibm-pibs, icu, ijg, image-magick, imatix, imlib2, info-zip, intel, intel-acpi, interbase-1-0, ipa, ipl-1-0, isc, jasper-2-0, jpnic, json, lal-1-2, lal-1-3, latex2e, leptonica, lgpl-2-0-only, lgpl-2-0-or-later, lgpl-2-1-only, lgpl-2-1-or-later, lgpl-3-0-linking-exception, lgpl-3-0-only, lgpl-3-0-or-later, lgpllr, libpng, libpng-2-0, libselinux-1-0, libtiff, libtool-exception, liliq-p-1-1, liliq-r-1-1, liliq-rplus-1-1, linux-openib, linux-syscall-note, llvm-exception, lpl-1-0, lpl-1-02, lppl-1-0, lppl-1-1, lppl-1-2, lppl-1-3a, lppl-1-3c, lzma-exception, make-index, mif-exception, miros, mit, mit-0, mit-advertising, mit-cmu, mit-enna, mit-feh, mit-modern-variant, mitnfa, mit-open-group, motosoto, mpich2, mpl-1-0, mpl-1-1, mpl-2-0, mpl-2-0-no-copyleft-exception, ms-pl, ms-rl, mtll, mulanpsl-1-0, mulanpsl-2-0, multics, mup, naist-2003, nasa-1-3, naumen, nbpl-1-0, ncgl-uk-2-0, ncsa, netcdf, net-snmp, newsletr, ngpl, nist-pd, nist-pd-fallback, nlod-1-0, nlpl, nokia, nokia-qt-exception-1-1, nosl, noweb, npl-1-0, npl-1-1, nposl-3-0, nrl, ntp, ntp-0, ocaml-lgpl-linking-exception, occt-exception-1-0, occt-pl, oclc-2-0, odbl-1-0, odc-by-1-0, ofl-1-0, ofl-1-0-no-rfn, ofl-1-0-rfn, ofl-1-1, ofl-1-1-no-rfn, ofl-1-1-rfn, ogc-1-0, ogdl-taiwan-1-0, ogl-canada-2-0, ogl-uk-1-0, ogl-uk-2-0, ogl-uk-3-0, ogtsl, oldap-1-1, oldap-1-2, oldap-1-3, oldap-1-4, oldap-2-0, oldap-2-0-1, oldap-2-1, oldap-2-2, oldap-2-2-1, oldap-2-2-2, oldap-2-3, oldap-2-4, oldap-2-7, oml, openjdk-assembly-exception-1-0, openssl, openvpn-openssl-exception, opl-1-0, oset-pl-2-1, osl-1-0, osl-1-1, osl-2-0, osl-2-1, osl-3-0, o-uda-1-0, parity-6-0-0, parity-7-0-0, pddl-1-0, php-3-0, php-3-01, plexus, polyform-noncommercial-1-0-0, polyform-small-business-1-0-0, postgresql, psf-2-0, psfrag, ps-or-pdf-font-exception-20170817, psutils, python-2-0, qhull, qpl-1-0, qt-gpl-exception-1-0, qt-lgpl-exception-1-1, qwt-exception-1-0, rdisc, rhecos-1-1, rpl-1-1, rpsl-1-0, rsa-md, rscpl, ruby, saxpath, sax-pd, scea, sendmail, sendmail-8-23, sgi-b-1-0, sgi-b-1-1, sgi-b-2-0, shl-0-51, shl-2-0, shl-2-1, simpl-2-0, sissl, sissl-1-2, sleepycat, smlnj, smppl, snia, spencer-86, spencer-94, spencer-99, spl-1-0, ssh-openssh, ssh-short, sspl-1-0, sugarcrm-1-1-3, swift-exception, swl, tapr-ohl-1-0, tcl, tcp-wrappers, tmate, torque-1-1, tosl, tu-berlin-1-0, tu-berlin-2-0, u-boot-exception-2-0, ucl-1-0, unicode-dfs-2015, unicode-dfs-2016, unicode-tou, universal-foss-exception-1-0, unlicense, upl-1-0, vim, vostrom, vsl-1-0, w3c, w3c-19980720, w3c-20150513, watcom-1-0, wsuipa, wtfpl, wxwindows-exception-3-1, x11, xerox, xfree86-1-1, xinetd, xnet, xpp, xskat, ypl-1-0, ypl-1-1, zed, zend-2-0, zimbra-1-3, zimbra-1-4, zlib, zlib-acknowledgement, zpl-1-1, zpl-2-0, zpl-2-1.", + "type": "string" + }, + "readme": { + "description": "README template name. Valid template name(s) are: default.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "instanceRef": { + "description": "The name of the instance in which the repository is hosted, formatted as `projects/{project_number}/locations/{location_id}/instances/{instance_id}`", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "A reference to an externally managed SecureSourceManagerInstance resource. Should be in the format \"projects//locations//instances/\".", + "type": "string" + }, + "name": { + "description": "The name of a SecureSourceManagerInstance resource.", + "type": "string" + }, + "namespace": { + "description": "The namespace of a SecureSourceManagerInstance resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "location": { + "description": "Immutable. Location of the instance.", + "type": "string" + }, + "projectRef": { + "description": "Immutable. The Project that this resource belongs to.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `Project` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `Project` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "resourceID": { + "description": "Immutable. The SecureSourceManagerRepository name. If not given, the metadata.name will be used.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "ResourceID field is immutable", + "rule": "self == oldSelf" + } + ] + } + }, + "required": [ + "instanceRef", + "location", + "projectRef" + ], + "type": "object", + "additionalProperties": false + }, + "status": { + "description": "SecureSourceManagerRepositoryStatus defines the config connector machine state of SecureSourceManagerRepository", + "properties": { + "conditions": { + "description": "Conditions represent the latest available observations of the object's current state.", + "items": { + "properties": { + "lastTransitionTime": { + "description": "Last time the condition transitioned from one status to another.", + "type": "string" + }, + "message": { + "description": "Human-readable message indicating details about last transition.", + "type": "string" + }, + "reason": { + "description": "Unique, one-word, CamelCase reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Status is the status of the condition. Can be True, False, Unknown.", + "type": "string" + }, + "type": { + "description": "Type is the type of the condition.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "externalRef": { + "description": "A unique specifier for the SecureSourceManagerRepository resource in GCP.", + "type": "string" + }, + "observedGeneration": { + "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", + "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "uris": { + "description": "Output only. URIs for the repository.", + "properties": { + "api": { + "description": "Output only. API is the URI for API access.", + "type": "string" + }, + "gitHTTPS": { + "description": "Output only. git_https is the git HTTPS URI for git operations.", + "type": "string" + }, + "html": { + "description": "Output only. HTML is the URI for user to view the repository in a browser.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "spec" + ], + "type": "object" +} diff --git a/spanner.cnrm.cloud.google.com/spannerinstance_v1beta1.json b/spanner.cnrm.cloud.google.com/spannerinstance_v1beta1.json index 6850b4dc..8732a717 100644 --- a/spanner.cnrm.cloud.google.com/spannerinstance_v1beta1.json +++ b/spanner.cnrm.cloud.google.com/spannerinstance_v1beta1.json @@ -1,35 +1,51 @@ { + "description": "SpannerInstance is the Schema for the SpannerInstance API", "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/api-conventions.md#resources", + "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/api-conventions.md#types-kinds", + "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": "SpannerInstanceSpec defines the desired state of SpannerInstance", "properties": { "config": { - "description": "Immutable. The name of the instance's configuration (similar but not\nquite the same as a region) which defines the geographic placement and\nreplication of your databases in this instance. It determines where your data\nis stored. Values are typically of the form 'regional-europe-west1' , 'us-central' etc.\nIn order to obtain a valid list please consult the\n[Configuration section of the docs](https://cloud.google.com/spanner/docs/instances).", - "type": "string" + "description": "Immutable. The name of the instance's configuration (similar but not quite the same as a region) which defines the geographic placement and replication of your databases in this instance. It determines where your data is stored. Values are typically of the form 'regional-europe-west1' , 'us-central' etc. In order to obtain a valid list please consult the [Configuration section of the docs](https://cloud.google.com/spanner/docs/instances).", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "Config field is immutable", + "rule": "self == oldSelf" + } + ] }, "displayName": { - "description": "The descriptive name for this instance as it appears in UIs. Must be\nunique per project and between 4 and 30 characters in length.", + "description": "The descriptive name for this instance as it appears in UIs. Must be unique per project and between 4 and 30 characters in length.", "type": "string" }, "numNodes": { + "format": "int64", "type": "integer" }, "processingUnits": { + "format": "int64", "type": "integer" }, "resourceID": { - "description": "Immutable. Optional. The name of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default.", - "type": "string" + "description": "Immutable. The SpannerInstance name. If not given, the metadata.name will be used.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "ResourceID field is immutable", + "rule": "self == oldSelf" + } + ] } }, "required": [ @@ -40,9 +56,10 @@ "additionalProperties": false }, "status": { + "description": "SpannerInstanceStatus defines the config connector machine state of SpannerInstance", "properties": { "conditions": { - "description": "Conditions represent the latest available observation of the resource's current state.", + "description": "Conditions represent the latest available observations of the SpannerInstance's current state.", "items": { "properties": { "lastTransitionTime": { @@ -71,8 +88,13 @@ }, "type": "array" }, + "externalRef": { + "description": "A unique specifier for the SpannerInstance resource in GCP.", + "type": "string" + }, "observedGeneration": { "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", "type": "integer" }, "state": { diff --git a/sql.cnrm.cloud.google.com/sqlinstance_v1beta1.json b/sql.cnrm.cloud.google.com/sqlinstance_v1beta1.json index 7ccc063a..be577a9f 100644 --- a/sql.cnrm.cloud.google.com/sqlinstance_v1beta1.json +++ b/sql.cnrm.cloud.google.com/sqlinstance_v1beta1.json @@ -1,11 +1,12 @@ { + "description": "SQLInstance is the Schema for the sql API", "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/api-conventions.md#resources", + "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/api-conventions.md#types-kinds", + "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": { @@ -13,8 +14,91 @@ }, "spec": { "properties": { + "cloneSource": { + "description": "Create this database as a clone of a source instance. Immutable.", + "properties": { + "binLogCoordinates": { + "description": "Binary log coordinates, if specified, identify the position up to which the source instance is cloned. If not specified, the source instance is cloned up to the most recent binary log coordinates.", + "properties": { + "binLogFileName": { + "description": "Name of the binary log file for a Cloud SQL instance.", + "type": "string" + }, + "binLogPosition": { + "description": "Position (offset) within the binary log file.", + "format": "int64", + "type": "integer" + } + }, + "type": "object", + "additionalProperties": false + }, + "databaseNames": { + "description": "(SQL Server only) Clone only the specified databases from the source instance. Clone all databases if empty.", + "items": { + "type": "string" + }, + "type": "array" + }, + "pointInTime": { + "description": "Timestamp, if specified, identifies the time to which the source instance is cloned.", + "type": "string" + }, + "sqlInstanceRef": { + "description": "The source SQLInstance to clone", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The SQLInstance selfLink, when not managed by Config Connector.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `SQLInstance` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `SQLInstance` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + }, "databaseVersion": { - "default": "MYSQL_5_6", "description": "The MySQL, PostgreSQL or SQL Server (beta) version to use. Supported values include MYSQL_5_6, MYSQL_5_7, MYSQL_8_0, POSTGRES_9_6, POSTGRES_10, POSTGRES_11, POSTGRES_12, POSTGRES_13, POSTGRES_14, POSTGRES_15, SQLSERVER_2017_STANDARD, SQLSERVER_2017_ENTERPRISE, SQLSERVER_2017_EXPRESS, SQLSERVER_2017_WEB. Database Version Policies includes an up-to-date reference of supported versions.", "type": "string" }, @@ -52,15 +136,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `KMSCryptoKey` resource.", + "description": "A reference to an externally managed KMSCryptoKey. Should be in the format `projects/[kms_project_id]/locations/[region]/keyRings/[key_ring_id]/cryptoKeys/[key]`.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` of a `KMSCryptoKey` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` of a `KMSCryptoKey` resource.", "type": "string" } }, @@ -109,15 +193,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `name` field of a `SQLInstance` resource.", + "description": "The SQLInstance selfLink, when not managed by Config Connector.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `SQLInstance` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `SQLInstance` resource.", "type": "string" } }, @@ -145,6 +229,7 @@ }, "connectRetryInterval": { "description": "Immutable. The number of seconds between connect retries. MySQL's default is 60 seconds.", + "format": "int64", "type": "integer" }, "dumpFilePath": { @@ -157,32 +242,11 @@ }, "masterHeartbeatPeriod": { "description": "Immutable. Time in ms between replication heartbeats.", + "format": "int64", "type": "integer" }, "password": { "description": "Immutable. Password for the replication connection.", - "oneOf": [ - { - "not": { - "required": [ - "valueFrom" - ] - }, - "required": [ - "value" - ] - }, - { - "not": { - "required": [ - "value" - ] - }, - "required": [ - "valueFrom" - ] - } - ], "properties": { "value": { "description": "Value of the field. Cannot be used if 'valueFrom' is specified.", @@ -204,8 +268,8 @@ } }, "required": [ - "name", - "key" + "key", + "name" ], "type": "object", "additionalProperties": false @@ -240,28 +304,6 @@ }, "rootPassword": { "description": "Initial root password. Required for MS SQL Server.", - "oneOf": [ - { - "not": { - "required": [ - "valueFrom" - ] - }, - "required": [ - "value" - ] - }, - { - "not": { - "required": [ - "value" - ] - }, - "required": [ - "valueFrom" - ] - } - ], "properties": { "value": { "description": "Value of the field. Cannot be used if 'valueFrom' is specified.", @@ -283,8 +325,8 @@ } }, "required": [ - "name", - "key" + "key", + "name" ], "type": "object", "additionalProperties": false @@ -321,6 +363,7 @@ "properties": { "threadsPerCore": { "description": "The number of threads per physical core. Can be 1 or 2.", + "format": "int64", "type": "integer" } }, @@ -328,14 +371,14 @@ "additionalProperties": false }, "authorizedGaeApplications": { - "description": "DEPRECATED. This property is only applicable to First Generation instances, and First Generation instances are now deprecated. see https://cloud.google.com/sql/docs/mysql/deprecation-notice for information on how to upgrade to Second Generation instances.\nSpecifying this field has no-ops; it's recommended to remove this field from your configuration.", + "description": "DEPRECATED. This property is only applicable to First Generation instances, and First Generation instances are now deprecated. see https://cloud.google.com/sql/docs/mysql/deprecation-notice for information on how to upgrade to Second Generation instances. Specifying this field has no-ops; it's recommended to remove this field from your configuration.", "items": { "type": "string" }, "type": "array" }, "availabilityType": { - "description": "The availability type of the Cloud SQL instance, high availability\n(REGIONAL) or single zone (ZONAL). For all instances, ensure that\nsettings.backup_configuration.enabled is set to true.\nFor MySQL instances, ensure that settings.backup_configuration.binary_log_enabled is set to true.\nFor Postgres instances, ensure that settings.backup_configuration.point_in_time_recovery_enabled\nis set to true. Defaults to ZONAL.", + "description": "The availability type of the Cloud SQL instance, high availability (REGIONAL) or single zone (ZONAL). For all instances, ensure that settings.backup_configuration.enabled is set to true. For MySQL instances, ensure that settings.backup_configuration.binary_log_enabled is set to true. For Postgres instances, ensure that settings.backup_configuration.point_in_time_recovery_enabled is set to true. Defaults to ZONAL.", "type": "string" }, "backupConfiguration": { @@ -344,6 +387,7 @@ "properties": { "retainedBackups": { "description": "Number of backups to retain.", + "format": "int64", "type": "integer" }, "retentionUnit": { @@ -379,6 +423,7 @@ }, "transactionLogRetentionDays": { "description": "The number of days of transaction logs we retain for point in time restore, from 1-7. (For PostgreSQL Enterprise Plus instances, from 1 to 35.).", + "format": "int64", "type": "integer" } }, @@ -394,7 +439,7 @@ "type": "string" }, "crashSafeReplication": { - "description": "DEPRECATED. This property is only applicable to First Generation instances, and First Generation instances are now deprecated. see https://cloud.google.com/sql/docs/mysql/deprecation-notice for information on how to upgrade to Second Generation instances.\nSpecifying this field has no-ops; it's recommended to remove this field from your configuration.", + "description": "DEPRECATED. This property is only applicable to First Generation instances, and First Generation instances are now deprecated. see https://cloud.google.com/sql/docs/mysql/deprecation-notice for information on how to upgrade to Second Generation instances. Specifying this field has no-ops; it's recommended to remove this field from your configuration.", "type": "boolean" }, "dataCacheConfig": { @@ -462,10 +507,12 @@ }, "diskAutoresizeLimit": { "description": "The maximum size, in GB, to which storage capacity can be automatically increased. The default value is 0, which specifies that there is no limit.", + "format": "int64", "type": "integer" }, "diskSize": { "description": "The size of data disk, in GB. Size of a running instance cannot be reduced but can be increased. The minimum value is 10GB.", + "format": "int64", "type": "integer" }, "diskType": { @@ -485,10 +532,12 @@ }, "queryPlansPerMinute": { "description": "Number of query execution plans captured by Insights per minute for all queries combined. Between 0 and 20. Default to 5.", + "format": "int64", "type": "integer" }, "queryStringLength": { "description": "Maximum query length stored in bytes. Between 256 and 4500. Default to 1024.", + "format": "int64", "type": "integer" }, "recordApplicationTags": { @@ -572,15 +621,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `selfLink` field of a `ComputeNetwork` resource.", + "description": "A reference to an externally managed Compute Network resource. Should be in the format `projects//global/networks/`.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `ComputeNetwork` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `ComputeNetwork` resource.", "type": "string" } }, @@ -642,10 +691,12 @@ "properties": { "day": { "description": "Day of week (1-7), starting on Monday.", + "format": "int64", "type": "integer" }, "hour": { "description": "Hour of day (0-23), ignored if day not set.", + "format": "int64", "type": "integer" }, "updateTrack": { @@ -672,6 +723,7 @@ }, "minLength": { "description": "Minimum number of characters allowed.", + "format": "int64", "type": "integer" }, "passwordChangeInterval": { @@ -680,6 +732,7 @@ }, "reuseInterval": { "description": "Number of previous passwords that cannot be reused.", + "format": "int64", "type": "integer" } }, @@ -694,7 +747,7 @@ "type": "string" }, "replicationType": { - "description": "DEPRECATED. This property is only applicable to First Generation instances, and First Generation instances are now deprecated. see https://cloud.google.com/sql/docs/mysql/deprecation-notice for information on how to upgrade to Second Generation instances.\nSpecifying this field has no-ops; it's recommended to remove this field from your configuration.", + "description": "DEPRECATED. This property is only applicable to First Generation instances, and First Generation instances are now deprecated. see https://cloud.google.com/sql/docs/mysql/deprecation-notice for information on how to upgrade to Second Generation instances. Specifying this field has no-ops; it's recommended to remove this field from your configuration.", "type": "string" }, "sqlServerAuditConfig": { @@ -734,15 +787,15 @@ ], "properties": { "external": { - "description": "Allowed value: The `url` field of a `StorageBucket` resource.", + "description": "The StorageBucket selfLink, when not managed by Config Connector.", "type": "string" }, "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "The `name` field of a `StorageBucket` resource.", "type": "string" }, "namespace": { - "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "description": "The `namespace` field of a `StorageBucket` resource.", "type": "string" } }, @@ -793,7 +846,7 @@ "type": "array" }, "conditions": { - "description": "Conditions represent the latest available observation of the resource's current state.", + "description": "Conditions represent the latest available observations of the SQLInstance's current state.", "items": { "properties": { "lastTransitionTime": { @@ -857,6 +910,7 @@ }, "observedGeneration": { "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", "type": "integer" }, "privateIpAddress": { diff --git a/tpu.cnrm.cloud.google.com/tpunode_v1alpha1.json b/tpu.cnrm.cloud.google.com/tpunode_v1alpha1.json index 71cbd6cf..de8a475d 100644 --- a/tpu.cnrm.cloud.google.com/tpunode_v1alpha1.json +++ b/tpu.cnrm.cloud.google.com/tpunode_v1alpha1.json @@ -102,7 +102,7 @@ "type": "string" }, "useServiceNetworking": { - "description": "Immutable. Whether the VPC peering for the node is set up through Service Networking API.\nThe VPC Peering should be set up before provisioning the node. If this field is set,\ncidr_block field should not be specified. If the network that you want to peer the\nTPU Node to is a Shared VPC network, the node must be created with this this field enabled.", + "description": "Immutable. Whether the VPC peering for the node is set up through Service Networking API.\nThe VPC Peering should be set up before provisioning the node. If this field is set,\ncidr_block field should not be specified. If the network that you want to peer the\nTPU Node to is a Shared VPC network, the node must be created with this field enabled.", "type": "boolean" }, "zone": { diff --git a/vertexai.cnrm.cloud.google.com/vertexaifeaturestoreentitytype_v1alpha1.json b/vertexai.cnrm.cloud.google.com/vertexaifeaturestoreentitytype_v1alpha1.json index 293cf0e5..8a7d98c0 100644 --- a/vertexai.cnrm.cloud.google.com/vertexaifeaturestoreentitytype_v1alpha1.json +++ b/vertexai.cnrm.cloud.google.com/vertexaifeaturestoreentitytype_v1alpha1.json @@ -28,7 +28,7 @@ "description": "Threshold for categorical features of anomaly detection. This is shared by all types of Featurestore Monitoring for categorical features (i.e. Features with type (Feature.ValueType) BOOL or STRING).", "properties": { "value": { - "description": "Specify a threshold value that can trigger the alert. For categorical feature, the distribution distance is calculated by L-inifinity norm. Each feature must have a non-zero threshold if they need to be monitored. Otherwise no alert will be triggered for that feature. The default value is 0.3.", + "description": "Specify a threshold value that can trigger the alert. For categorical feature, the distribution distance is calculated by L-infinity norm. Each feature must have a non-zero threshold if they need to be monitored. Otherwise no alert will be triggered for that feature. The default value is 0.3.", "type": "number" } }, diff --git a/workstations.cnrm.cloud.google.com/workstationcluster_v1alpha1.json b/workstations.cnrm.cloud.google.com/workstationcluster_v1alpha1.json new file mode 100644 index 00000000..564d63f1 --- /dev/null +++ b/workstations.cnrm.cloud.google.com/workstationcluster_v1alpha1.json @@ -0,0 +1,430 @@ +{ + "description": "WorkstationCluster is the Schema for the WorkstationCluster API", + "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": "WorkstationClusterSpec defines the desired state of WorkstationCluster", + "properties": { + "annotations": { + "description": "Optional. Client-specified annotations.", + "items": { + "properties": { + "key": { + "description": "Key for the annotation.", + "type": "string" + }, + "value": { + "description": "Value for the annotation.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "displayName": { + "description": "Optional. Human-readable name for this workstation cluster.", + "type": "string" + }, + "labels": { + "description": "Optional. [Labels](https://cloud.google.com/workstations/docs/label-resources) that are applied to the workstation cluster and that are also propagated to the underlying Compute Engine resources.", + "items": { + "properties": { + "key": { + "description": "Key for the annotation.", + "type": "string" + }, + "value": { + "description": "Value for the annotation.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "location": { + "description": "The location of the cluster.", + "type": "string" + }, + "networkRef": { + "description": "Immutable. Reference to the Compute Engine network in which instances associated with this workstation cluster will be created.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "A reference to an externally managed Compute Network resource. Should be in the format `projects//global/networks/`.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `ComputeNetwork` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `ComputeNetwork` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "privateClusterConfig": { + "description": "Optional. Configuration for private workstation cluster.", + "properties": { + "allowedProjects": { + "description": "Optional. Additional projects that are allowed to attach to the workstation cluster's service attachment. By default, the workstation cluster's project and the VPC host project (if different) are allowed.", + "items": { + "description": "The Project that this resource belongs to.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name", + "kind" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + }, + { + "required": [ + "kind" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `Project` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `Project` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "enablePrivateEndpoint": { + "description": "Immutable. Whether Workstations endpoint is private.", + "type": "boolean" + } + }, + "type": "object", + "additionalProperties": false + }, + "projectRef": { + "description": "Immutable. The Project that this resource belongs to.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `Project` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `Project` resource.", + "type": "string" + } + }, + "type": "object", + "x-kubernetes-validations": [ + { + "message": "ResourceID field is immutable", + "rule": "self == oldSelf" + } + ], + "additionalProperties": false + }, + "resourceID": { + "description": "Immutable. The WorkstationCluster name. If not given, the metadata.name will be used.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "ResourceID field is immutable", + "rule": "self == oldSelf" + } + ] + }, + "subnetworkRef": { + "description": "Immutable. Reference to the Compute Engine subnetwork in which instances associated with this workstation cluster will be created. Must be part of the subnetwork specified for this workstation cluster.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The ComputeSubnetwork selflink of form \"projects/{{project}}/regions/{{region}}/subnetworks/{{name}}\", when not managed by Config Connector.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `ComputeSubnetwork` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `ComputeSubnetwork` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "networkRef", + "projectRef", + "subnetworkRef" + ], + "type": "object", + "additionalProperties": false + }, + "status": { + "description": "WorkstationClusterStatus defines the config connector machine state of WorkstationCluster", + "properties": { + "conditions": { + "description": "Conditions represent the latest available observations of the object's current state.", + "items": { + "properties": { + "lastTransitionTime": { + "description": "Last time the condition transitioned from one status to another.", + "type": "string" + }, + "message": { + "description": "Human-readable message indicating details about last transition.", + "type": "string" + }, + "reason": { + "description": "Unique, one-word, CamelCase reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Status is the status of the condition. Can be True, False, Unknown.", + "type": "string" + }, + "type": { + "description": "Type is the type of the condition.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "externalRef": { + "description": "A unique specifier for the WorkstationCluster resource in GCP.", + "type": "string" + }, + "observedGeneration": { + "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", + "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "clusterHostname": { + "description": "Output only. Hostname for the workstation cluster. This field will be populated only when private endpoint is enabled. To access workstations in the workstation cluster, create a new DNS zone mapping this domain name to an internal IP address and a forwarding rule mapping that address to the service attachment.", + "type": "string" + }, + "controlPlaneIP": { + "description": "Output only. The private IP address of the control plane for this workstation cluster. Workstation VMs need access to this IP address to work with the service, so make sure that your firewall rules allow egress from the workstation VMs to this address.", + "type": "string" + }, + "createTime": { + "description": "Output only. Time when this workstation cluster was created.", + "type": "string" + }, + "degraded": { + "description": "Output only. Whether this workstation cluster is in degraded mode, in which case it may require user action to restore full functionality. Details can be found in [conditions][google.cloud.workstations.v1.WorkstationCluster.conditions].", + "type": "boolean" + }, + "deleteTime": { + "description": "Output only. Time when this workstation cluster was soft-deleted.", + "type": "string" + }, + "etag": { + "description": "Optional. Checksum computed by the server. May be sent on update and delete requests to make sure that the client has an up-to-date value before proceeding.", + "type": "string" + }, + "gcpConditions": { + "description": "Output only. Status conditions describing the workstation cluster's current state.", + "items": { + "properties": { + "code": { + "description": "The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].", + "format": "int32", + "type": "integer" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "reconciling": { + "description": "Output only. Indicates whether this workstation cluster is currently being updated to match its intended state.", + "type": "boolean" + }, + "serviceAttachmentUri": { + "description": "Output only. Service attachment URI for the workstation cluster. The service attachment is created when private endpoint is enabled. To access workstations in the workstation cluster, configure access to the managed service using [Private Service Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services).", + "type": "string" + }, + "uid": { + "description": "Output only. A system-assigned unique identifier for this workstation cluster.", + "type": "string" + }, + "updateTime": { + "description": "Output only. Time when this workstation cluster was most recently updated.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object" +} diff --git a/workstations.cnrm.cloud.google.com/workstationcluster_v1beta1.json b/workstations.cnrm.cloud.google.com/workstationcluster_v1beta1.json new file mode 100644 index 00000000..564d63f1 --- /dev/null +++ b/workstations.cnrm.cloud.google.com/workstationcluster_v1beta1.json @@ -0,0 +1,430 @@ +{ + "description": "WorkstationCluster is the Schema for the WorkstationCluster API", + "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": "WorkstationClusterSpec defines the desired state of WorkstationCluster", + "properties": { + "annotations": { + "description": "Optional. Client-specified annotations.", + "items": { + "properties": { + "key": { + "description": "Key for the annotation.", + "type": "string" + }, + "value": { + "description": "Value for the annotation.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "displayName": { + "description": "Optional. Human-readable name for this workstation cluster.", + "type": "string" + }, + "labels": { + "description": "Optional. [Labels](https://cloud.google.com/workstations/docs/label-resources) that are applied to the workstation cluster and that are also propagated to the underlying Compute Engine resources.", + "items": { + "properties": { + "key": { + "description": "Key for the annotation.", + "type": "string" + }, + "value": { + "description": "Value for the annotation.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "location": { + "description": "The location of the cluster.", + "type": "string" + }, + "networkRef": { + "description": "Immutable. Reference to the Compute Engine network in which instances associated with this workstation cluster will be created.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "A reference to an externally managed Compute Network resource. Should be in the format `projects//global/networks/`.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `ComputeNetwork` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `ComputeNetwork` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "privateClusterConfig": { + "description": "Optional. Configuration for private workstation cluster.", + "properties": { + "allowedProjects": { + "description": "Optional. Additional projects that are allowed to attach to the workstation cluster's service attachment. By default, the workstation cluster's project and the VPC host project (if different) are allowed.", + "items": { + "description": "The Project that this resource belongs to.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name", + "kind" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + }, + { + "required": [ + "kind" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `Project` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `Project` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "enablePrivateEndpoint": { + "description": "Immutable. Whether Workstations endpoint is private.", + "type": "boolean" + } + }, + "type": "object", + "additionalProperties": false + }, + "projectRef": { + "description": "Immutable. The Project that this resource belongs to.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The `projectID` field of a project, when not managed by Config Connector.", + "type": "string" + }, + "kind": { + "description": "The kind of the Project resource; optional but must be `Project` if provided.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `Project` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `Project` resource.", + "type": "string" + } + }, + "type": "object", + "x-kubernetes-validations": [ + { + "message": "ResourceID field is immutable", + "rule": "self == oldSelf" + } + ], + "additionalProperties": false + }, + "resourceID": { + "description": "Immutable. The WorkstationCluster name. If not given, the metadata.name will be used.", + "type": "string", + "x-kubernetes-validations": [ + { + "message": "ResourceID field is immutable", + "rule": "self == oldSelf" + } + ] + }, + "subnetworkRef": { + "description": "Immutable. Reference to the Compute Engine subnetwork in which instances associated with this workstation cluster will be created. Must be part of the subnetwork specified for this workstation cluster.", + "oneOf": [ + { + "not": { + "required": [ + "external" + ] + }, + "required": [ + "name" + ] + }, + { + "not": { + "anyOf": [ + { + "required": [ + "name" + ] + }, + { + "required": [ + "namespace" + ] + } + ] + }, + "required": [ + "external" + ] + } + ], + "properties": { + "external": { + "description": "The ComputeSubnetwork selflink of form \"projects/{{project}}/regions/{{region}}/subnetworks/{{name}}\", when not managed by Config Connector.", + "type": "string" + }, + "name": { + "description": "The `name` field of a `ComputeSubnetwork` resource.", + "type": "string" + }, + "namespace": { + "description": "The `namespace` field of a `ComputeSubnetwork` resource.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "required": [ + "networkRef", + "projectRef", + "subnetworkRef" + ], + "type": "object", + "additionalProperties": false + }, + "status": { + "description": "WorkstationClusterStatus defines the config connector machine state of WorkstationCluster", + "properties": { + "conditions": { + "description": "Conditions represent the latest available observations of the object's current state.", + "items": { + "properties": { + "lastTransitionTime": { + "description": "Last time the condition transitioned from one status to another.", + "type": "string" + }, + "message": { + "description": "Human-readable message indicating details about last transition.", + "type": "string" + }, + "reason": { + "description": "Unique, one-word, CamelCase reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Status is the status of the condition. Can be True, False, Unknown.", + "type": "string" + }, + "type": { + "description": "Type is the type of the condition.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "externalRef": { + "description": "A unique specifier for the WorkstationCluster resource in GCP.", + "type": "string" + }, + "observedGeneration": { + "description": "ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.", + "format": "int64", + "type": "integer" + }, + "observedState": { + "description": "ObservedState is the state of the resource as most recently observed in GCP.", + "properties": { + "clusterHostname": { + "description": "Output only. Hostname for the workstation cluster. This field will be populated only when private endpoint is enabled. To access workstations in the workstation cluster, create a new DNS zone mapping this domain name to an internal IP address and a forwarding rule mapping that address to the service attachment.", + "type": "string" + }, + "controlPlaneIP": { + "description": "Output only. The private IP address of the control plane for this workstation cluster. Workstation VMs need access to this IP address to work with the service, so make sure that your firewall rules allow egress from the workstation VMs to this address.", + "type": "string" + }, + "createTime": { + "description": "Output only. Time when this workstation cluster was created.", + "type": "string" + }, + "degraded": { + "description": "Output only. Whether this workstation cluster is in degraded mode, in which case it may require user action to restore full functionality. Details can be found in [conditions][google.cloud.workstations.v1.WorkstationCluster.conditions].", + "type": "boolean" + }, + "deleteTime": { + "description": "Output only. Time when this workstation cluster was soft-deleted.", + "type": "string" + }, + "etag": { + "description": "Optional. Checksum computed by the server. May be sent on update and delete requests to make sure that the client has an up-to-date value before proceeding.", + "type": "string" + }, + "gcpConditions": { + "description": "Output only. Status conditions describing the workstation cluster's current state.", + "items": { + "properties": { + "code": { + "description": "The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].", + "format": "int32", + "type": "integer" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + }, + "type": "array" + }, + "reconciling": { + "description": "Output only. Indicates whether this workstation cluster is currently being updated to match its intended state.", + "type": "boolean" + }, + "serviceAttachmentUri": { + "description": "Output only. Service attachment URI for the workstation cluster. The service attachment is created when private endpoint is enabled. To access workstations in the workstation cluster, configure access to the managed service using [Private Service Connect](https://cloud.google.com/vpc/docs/configure-private-service-connect-services).", + "type": "string" + }, + "uid": { + "description": "Output only. A system-assigned unique identifier for this workstation cluster.", + "type": "string" + }, + "updateTime": { + "description": "Output only. Time when this workstation cluster was most recently updated.", + "type": "string" + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object", + "additionalProperties": false + } + }, + "type": "object" +}