Skip to content

Commit

Permalink
feat(redis)!: update the API
Browse files Browse the repository at this point in the history
BREAKING CHANGE: This release has breaking changes.

#### redis:v1beta1

The following keys were deleted:
- schemas.CustomMetadataData.properties.databaseMetadata.items.$ref
- schemas.CustomMetadataData.properties.databaseMetadata.type
- schemas.DatabaseMetadata.description
- schemas.DatabaseMetadata.id
- schemas.DatabaseMetadata.properties.backupConfiguration.$ref
- schemas.DatabaseMetadata.properties.backupConfiguration.description
- schemas.DatabaseMetadata.properties.backupRun.$ref
- schemas.DatabaseMetadata.properties.backupRun.description
- schemas.DatabaseMetadata.properties.product.$ref
- schemas.DatabaseMetadata.properties.resourceId.$ref
- schemas.DatabaseMetadata.properties.resourceName.description
- schemas.DatabaseMetadata.properties.resourceName.type
- schemas.DatabaseMetadata.type
- schemas.DatabaseResourceFeed.properties.observabilityMetricData.description

The following keys were added:
- schemas.Cluster.properties.crossClusterReplicationConfig.$ref
- schemas.Cluster.properties.crossClusterReplicationConfig.description
- schemas.CrossClusterReplicationConfig.description
- schemas.CrossClusterReplicationConfig.id
- schemas.CrossClusterReplicationConfig.properties.clusterRole.description
- schemas.CrossClusterReplicationConfig.properties.clusterRole.enum
- schemas.CrossClusterReplicationConfig.properties.clusterRole.enumDescriptions
- schemas.CrossClusterReplicationConfig.properties.clusterRole.type
- schemas.CrossClusterReplicationConfig.properties.membership.$ref
- schemas.CrossClusterReplicationConfig.properties.membership.description
- schemas.CrossClusterReplicationConfig.properties.membership.readOnly
- schemas.CrossClusterReplicationConfig.properties.primaryCluster.$ref
- schemas.CrossClusterReplicationConfig.properties.primaryCluster.description
- schemas.CrossClusterReplicationConfig.properties.secondaryClusters.description
- schemas.CrossClusterReplicationConfig.properties.secondaryClusters.items.$ref
- schemas.CrossClusterReplicationConfig.properties.secondaryClusters.type
- schemas.CrossClusterReplicationConfig.properties.updateTime.description
- schemas.CrossClusterReplicationConfig.properties.updateTime.format
- schemas.CrossClusterReplicationConfig.properties.updateTime.readOnly
- schemas.CrossClusterReplicationConfig.properties.updateTime.type
- schemas.CrossClusterReplicationConfig.type
- schemas.CustomMetadataData.properties.internalResourceMetadata.description
- schemas.CustomMetadataData.properties.internalResourceMetadata.items.$ref
- schemas.CustomMetadataData.properties.internalResourceMetadata.type
- schemas.DatabaseResourceHealthSignalData.properties.signalSeverity.description
- schemas.DatabaseResourceHealthSignalData.properties.signalSeverity.enum
- schemas.DatabaseResourceHealthSignalData.properties.signalSeverity.enumDescriptions
- schemas.DatabaseResourceHealthSignalData.properties.signalSeverity.type
- schemas.InternalResourceMetadata.description
- schemas.InternalResourceMetadata.id
- schemas.InternalResourceMetadata.properties.backupConfiguration.$ref
- schemas.InternalResourceMetadata.properties.backupConfiguration.description
- schemas.InternalResourceMetadata.properties.backupRun.$ref
- schemas.InternalResourceMetadata.properties.backupRun.description
- schemas.InternalResourceMetadata.properties.product.$ref
- schemas.InternalResourceMetadata.properties.resourceId.$ref
- schemas.InternalResourceMetadata.properties.resourceName.description
- schemas.InternalResourceMetadata.properties.resourceName.type
- schemas.InternalResourceMetadata.type
- schemas.Membership.description
- schemas.Membership.id
- schemas.Membership.properties.primaryCluster.$ref
- schemas.Membership.properties.primaryCluster.description
- schemas.Membership.properties.primaryCluster.readOnly
- schemas.Membership.properties.secondaryClusters.description
- schemas.Membership.properties.secondaryClusters.items.$ref
- schemas.Membership.properties.secondaryClusters.readOnly
- schemas.Membership.properties.secondaryClusters.type
- schemas.Membership.type
- schemas.RemoteCluster.description
- schemas.RemoteCluster.id
- schemas.RemoteCluster.properties.cluster.description
- schemas.RemoteCluster.properties.cluster.type
- schemas.RemoteCluster.properties.uid.description
- schemas.RemoteCluster.properties.uid.readOnly
- schemas.RemoteCluster.properties.uid.type
- schemas.RemoteCluster.type

The following keys were changed:
- schemas.Cluster.properties.shardCount.description
- schemas.CustomMetadataData.description
- schemas.DatabaseResourceId.properties.resourceType.description
- schemas.Product.properties.engine.enum
- schemas.Product.properties.engine.enumDeprecated
- schemas.Product.properties.engine.enumDescriptions
- schemas.Product.properties.type.enum
- schemas.Product.properties.type.enumDeprecated
- schemas.Product.properties.type.enumDescriptions

#### redis:v1

The following keys were deleted:
- schemas.CustomMetadataData.properties.databaseMetadata.items.$ref
- schemas.CustomMetadataData.properties.databaseMetadata.type
- schemas.DatabaseMetadata.description
- schemas.DatabaseMetadata.id
- schemas.DatabaseMetadata.properties.backupConfiguration.$ref
- schemas.DatabaseMetadata.properties.backupConfiguration.description
- schemas.DatabaseMetadata.properties.backupRun.$ref
- schemas.DatabaseMetadata.properties.backupRun.description
- schemas.DatabaseMetadata.properties.product.$ref
- schemas.DatabaseMetadata.properties.resourceId.$ref
- schemas.DatabaseMetadata.properties.resourceName.description
- schemas.DatabaseMetadata.properties.resourceName.type
- schemas.DatabaseMetadata.type
- schemas.DatabaseResourceFeed.properties.observabilityMetricData.description

The following keys were added:
- schemas.Cluster.properties.crossClusterReplicationConfig.$ref
- schemas.Cluster.properties.crossClusterReplicationConfig.description
- schemas.CrossClusterReplicationConfig.description
- schemas.CrossClusterReplicationConfig.id
- schemas.CrossClusterReplicationConfig.properties.clusterRole.description
- schemas.CrossClusterReplicationConfig.properties.clusterRole.enum
- schemas.CrossClusterReplicationConfig.properties.clusterRole.enumDescriptions
- schemas.CrossClusterReplicationConfig.properties.clusterRole.type
- schemas.CrossClusterReplicationConfig.properties.membership.$ref
- schemas.CrossClusterReplicationConfig.properties.membership.description
- schemas.CrossClusterReplicationConfig.properties.membership.readOnly
- schemas.CrossClusterReplicationConfig.properties.primaryCluster.$ref
- schemas.CrossClusterReplicationConfig.properties.primaryCluster.description
- schemas.CrossClusterReplicationConfig.properties.secondaryClusters.description
- schemas.CrossClusterReplicationConfig.properties.secondaryClusters.items.$ref
- schemas.CrossClusterReplicationConfig.properties.secondaryClusters.type
- schemas.CrossClusterReplicationConfig.properties.updateTime.description
- schemas.CrossClusterReplicationConfig.properties.updateTime.format
- schemas.CrossClusterReplicationConfig.properties.updateTime.readOnly
- schemas.CrossClusterReplicationConfig.properties.updateTime.type
- schemas.CrossClusterReplicationConfig.type
- schemas.CustomMetadataData.properties.internalResourceMetadata.description
- schemas.CustomMetadataData.properties.internalResourceMetadata.items.$ref
- schemas.CustomMetadataData.properties.internalResourceMetadata.type
- schemas.DatabaseResourceHealthSignalData.properties.signalSeverity.description
- schemas.DatabaseResourceHealthSignalData.properties.signalSeverity.enum
- schemas.DatabaseResourceHealthSignalData.properties.signalSeverity.enumDescriptions
- schemas.DatabaseResourceHealthSignalData.properties.signalSeverity.type
- schemas.InternalResourceMetadata.description
- schemas.InternalResourceMetadata.id
- schemas.InternalResourceMetadata.properties.backupConfiguration.$ref
- schemas.InternalResourceMetadata.properties.backupConfiguration.description
- schemas.InternalResourceMetadata.properties.backupRun.$ref
- schemas.InternalResourceMetadata.properties.backupRun.description
- schemas.InternalResourceMetadata.properties.product.$ref
- schemas.InternalResourceMetadata.properties.resourceId.$ref
- schemas.InternalResourceMetadata.properties.resourceName.description
- schemas.InternalResourceMetadata.properties.resourceName.type
- schemas.InternalResourceMetadata.type
- schemas.Membership.description
- schemas.Membership.id
- schemas.Membership.properties.primaryCluster.$ref
- schemas.Membership.properties.primaryCluster.description
- schemas.Membership.properties.primaryCluster.readOnly
- schemas.Membership.properties.secondaryClusters.description
- schemas.Membership.properties.secondaryClusters.items.$ref
- schemas.Membership.properties.secondaryClusters.readOnly
- schemas.Membership.properties.secondaryClusters.type
- schemas.Membership.type
- schemas.RemoteCluster.description
- schemas.RemoteCluster.id
- schemas.RemoteCluster.properties.cluster.description
- schemas.RemoteCluster.properties.cluster.type
- schemas.RemoteCluster.properties.uid.description
- schemas.RemoteCluster.properties.uid.readOnly
- schemas.RemoteCluster.properties.uid.type
- schemas.RemoteCluster.type

The following keys were changed:
- schemas.Cluster.properties.shardCount.description
- schemas.CustomMetadataData.description
- schemas.DatabaseResourceId.properties.resourceType.description
- schemas.Product.properties.engine.enum
- schemas.Product.properties.engine.enumDeprecated
- schemas.Product.properties.engine.enumDescriptions
- schemas.Product.properties.type.enum
- schemas.Product.properties.type.enumDeprecated
- schemas.Product.properties.type.enumDescriptions
  • Loading branch information
yoshi-automation authored and sofisl committed Aug 16, 2024
1 parent 5159cf2 commit 0897dfe
Show file tree
Hide file tree
Showing 4 changed files with 452 additions and 110 deletions.
180 changes: 146 additions & 34 deletions discovery/redis-v1.json
Original file line number Diff line number Diff line change
Expand Up @@ -821,7 +821,7 @@
}
}
},
"revision": "20240613",
"revision": "20240812",
"rootUrl": "https://redis.googleapis.com/",
"schemas": {
"AOFConfig": {
Expand Down Expand Up @@ -987,6 +987,10 @@
"readOnly": true,
"type": "string"
},
"crossClusterReplicationConfig": {
"$ref": "CrossClusterReplicationConfig",
"description": "Optional. Cross cluster replication config."
},
"deletionProtectionEnabled": {
"description": "Optional. The delete operation will fail when the value is set to true.",
"type": "boolean"
Expand Down Expand Up @@ -1059,7 +1063,7 @@
"type": "integer"
},
"shardCount": {
"description": "Required. Number of shards for the Redis cluster.",
"description": "Optional. Number of shards for the Redis cluster.",
"format": "int32",
"type": "integer"
},
Expand Down Expand Up @@ -1165,40 +1169,61 @@
},
"type": "object"
},
"CustomMetadataData": {
"description": "Any custom metadata associated with the resource. i.e. A spanner instance can have multiple databases with its own unique metadata. Information for these individual databases can be captured in custom metadata data",
"id": "CustomMetadataData",
"CrossClusterReplicationConfig": {
"description": "Cross cluster replication config.",
"id": "CrossClusterReplicationConfig",
"properties": {
"databaseMetadata": {
"clusterRole": {
"description": "The role of the cluster in cross cluster replication.",
"enum": [
"CLUSTER_ROLE_UNSPECIFIED",
"NONE",
"PRIMARY",
"SECONDARY"
],
"enumDescriptions": [
"Cluster role is not set. The behavior is equivalent to NONE.",
"This cluster does not participate in cross cluster replication. It is an independent cluster and does not replicate to or from any other clusters.",
"A cluster that allows both reads and writes. Any data written to this cluster is also replicated to the attached secondary clusters.",
"A cluster that allows only reads and replicates data from a primary cluster."
],
"type": "string"
},
"membership": {
"$ref": "Membership",
"description": "Output only. An output only view of all the member clusters participating in the cross cluster replication. This view will be provided by every member cluster irrespective of its cluster role(primary or secondary). A primary cluster can provide information about all the secondary clusters replicating from it. However, a secondary cluster only knows about the primary cluster from which it is replicating. However, for scenarios, where the primary cluster is unavailable(e.g. regional outage), a GetCluster request can be sent to any other member cluster and this field will list all the member clusters participating in cross cluster replication.",
"readOnly": true
},
"primaryCluster": {
"$ref": "RemoteCluster",
"description": "Details of the primary cluster that is used as the replication source for this secondary cluster. This field is only set for a secondary cluster."
},
"secondaryClusters": {
"description": "List of secondary clusters that are replicating from this primary cluster. This field is only set for a primary cluster.",
"items": {
"$ref": "DatabaseMetadata"
"$ref": "RemoteCluster"
},
"type": "array"
},
"updateTime": {
"description": "Output only. The last time cross cluster replication config was updated.",
"format": "google-datetime",
"readOnly": true,
"type": "string"
}
},
"type": "object"
},
"DatabaseMetadata": {
"description": "Metadata for individual databases created in an instance. i.e. spanner instance can have multiple databases with unique configuration settings.",
"id": "DatabaseMetadata",
"CustomMetadataData": {
"description": "Any custom metadata associated with the resource. e.g. A spanner instance can have multiple databases with its own unique metadata. Information for these individual databases can be captured in custom metadata data",
"id": "CustomMetadataData",
"properties": {
"backupConfiguration": {
"$ref": "BackupConfiguration",
"description": "Backup configuration for this database"
},
"backupRun": {
"$ref": "BackupRun",
"description": "Information about the last backup attempt for this database"
},
"product": {
"$ref": "Product"
},
"resourceId": {
"$ref": "DatabaseResourceId"
},
"resourceName": {
"description": "Required. Database name. Resource name to follow CAIS resource_name format as noted here go/condor-common-datamodel",
"type": "string"
"internalResourceMetadata": {
"description": "Metadata for individual internal resources in an instance. e.g. spanner instance can have multiple databases with unique configuration.",
"items": {
"$ref": "InternalResourceMetadata"
},
"type": "array"
}
},
"type": "object"
Expand Down Expand Up @@ -1231,8 +1256,7 @@
"type": "string"
},
"observabilityMetricData": {
"$ref": "ObservabilityMetricData",
"description": "More feed data would be added in subsequent CLs"
"$ref": "ObservabilityMetricData"
},
"recommendationSignalData": {
"$ref": "DatabaseResourceRecommendationSignalData"
Expand Down Expand Up @@ -1341,6 +1365,24 @@
"description": "Required. Unique identifier for the signal. This is an unique id which would be mainatined by partner to identify a signal.",
"type": "string"
},
"signalSeverity": {
"description": "The severity of the signal, such as if it's a HIGH or LOW severity.",
"enum": [
"SIGNAL_SEVERITY_UNSPECIFIED",
"CRITICAL",
"HIGH",
"MEDIUM",
"LOW"
],
"enumDescriptions": [
"This value is used for findings when a source doesn't write a severity value.",
"A critical vulnerability is easily discoverable by an external actor, exploitable.",
"A high risk vulnerability can be easily discovered and exploited in combination with other vulnerabilities.",
"A medium risk vulnerability could be used by an actor to gain access to resources or privileges that enable them to eventually gain access and the ability to execute arbitrary code or exfiltrate data.",
"A low risk vulnerability hampers a security organization's ability to detect vulnerabilities or active threats in their deployment."
],
"type": "string"
},
"signalType": {
"description": "Required. Type of signal, for example, `AVAILABLE_IN_MULTIPLE_ZONES`, `LOGGING_MOST_ERRORS`, etc.",
"enum": [
Expand Down Expand Up @@ -1637,7 +1679,7 @@
"type": "string"
},
"resourceType": {
"description": "Required. The type of resource this ID is identifying. Ex redis.googleapis.com/Instance, redis.googleapis.com/Cluster, alloydb.googleapis.com/Cluster, alloydb.googleapis.com/Instance, spanner.googleapis.com/Instance REQUIRED Please refer go/condor-common-datamodel",
"description": "Required. The type of resource this ID is identifying. Ex redis.googleapis.com/Instance, redis.googleapis.com/Cluster, alloydb.googleapis.com/Cluster, alloydb.googleapis.com/Instance, spanner.googleapis.com/Instance, spanner.googleapis.com/Database, firestore.googleapis.com/Database, sqladmin.googleapis.com/Instance, bigtableadmin.googleapis.com/Cluster, bigtableadmin.googleapis.com/Instance REQUIRED Please refer go/condor-common-datamodel",
"type": "string"
},
"uniqueId": {
Expand Down Expand Up @@ -2571,6 +2613,31 @@
},
"type": "object"
},
"InternalResourceMetadata": {
"description": "Metadata for individual internal resources in an instance. e.g. spanner instance can have multiple databases with unique configuration settings. Similarly bigtable can have multiple clusters within same bigtable instance.",
"id": "InternalResourceMetadata",
"properties": {
"backupConfiguration": {
"$ref": "BackupConfiguration",
"description": "Backup configuration for this database"
},
"backupRun": {
"$ref": "BackupRun",
"description": "Information about the last backup attempt for this database"
},
"product": {
"$ref": "Product"
},
"resourceId": {
"$ref": "DatabaseResourceId"
},
"resourceName": {
"description": "Required. internal resource name for spanner this will be database name e.g.\"spanner.googleapis.com/projects/123/abc/instances/inst1/databases/db1\"",
"type": "string"
}
},
"type": "object"
},
"ListClustersResponse": {
"description": "Response for ListClusters.",
"id": "ListClustersResponse",
Expand Down Expand Up @@ -2781,6 +2848,26 @@
},
"type": "object"
},
"Membership": {
"description": "An output only view of all the member clusters participating in the cross cluster replication.",
"id": "Membership",
"properties": {
"primaryCluster": {
"$ref": "RemoteCluster",
"description": "Output only. The primary cluster that acts as the source of replication for the secondary clusters.",
"readOnly": true
},
"secondaryClusters": {
"description": "Output only. The list of secondary clusters replicating from the primary cluster.",
"items": {
"$ref": "RemoteCluster"
},
"readOnly": true,
"type": "array"
}
},
"type": "object"
},
"NodeInfo": {
"description": "Node specific properties.",
"id": "NodeInfo",
Expand Down Expand Up @@ -3051,7 +3138,9 @@
"ENGINE_CLOUD_SPANNER_WITH_GOOGLESQL_DIALECT",
"ENGINE_MEMORYSTORE_FOR_REDIS",
"ENGINE_MEMORYSTORE_FOR_REDIS_CLUSTER",
"ENGINE_OTHER"
"ENGINE_OTHER",
"ENGINE_FIRESTORE_WITH_NATIVE_MODE",
"ENGINE_FIRESTORE_WITH_DATASTORE_MODE"
],
"enumDeprecated": [
false,
Expand All @@ -3067,6 +3156,8 @@
false,
false,
false,
false,
false,
false
],
"enumDescriptions": [
Expand All @@ -3083,7 +3174,9 @@
"Cloud Spanner with Google SQL dialect.",
"Memorystore with Redis dialect.",
"Memorystore with Redis cluster dialect.",
"Other refers to rest of other database engine. This is to be when engine is known, but it is not present in this enum."
"Other refers to rest of other database engine. This is to be when engine is known, but it is not present in this enum.",
"Firestore with native mode.",
"Firestore with datastore mode."
],
"type": "string"
},
Expand All @@ -3100,7 +3193,8 @@
"ON_PREM",
"PRODUCT_TYPE_MEMORYSTORE",
"PRODUCT_TYPE_BIGTABLE",
"PRODUCT_TYPE_OTHER"
"PRODUCT_TYPE_OTHER",
"PRODUCT_TYPE_FIRESTORE"
],
"enumDeprecated": [
false,
Expand All @@ -3113,6 +3207,7 @@
true,
false,
false,
false,
false
],
"enumDescriptions": [
Expand All @@ -3126,7 +3221,8 @@
"On premises database product.",
"Memorystore product area in GCP",
"Bigtable product area in GCP",
"Other refers to rest of other product type. This is to be when product type is known, but it is not present in this enum."
"Other refers to rest of other product type. This is to be when product type is known, but it is not present in this enum.",
"Firestore product area in GCP."
],
"type": "string"
},
Expand Down Expand Up @@ -3239,6 +3335,22 @@
},
"type": "object"
},
"RemoteCluster": {
"description": "Details of the remote cluster associated with this cluster in a cross cluster replication setup.",
"id": "RemoteCluster",
"properties": {
"cluster": {
"description": "The full resource path of the remote cluster in the format: projects//locations//clusters/",
"type": "string"
},
"uid": {
"description": "Output only. The unique identifier of the remote cluster.",
"readOnly": true,
"type": "string"
}
},
"type": "object"
},
"RescheduleMaintenanceRequest": {
"description": "Request for RescheduleMaintenance.",
"id": "RescheduleMaintenanceRequest",
Expand Down
Loading

0 comments on commit 0897dfe

Please sign in to comment.