From 0c4c15d88fc06402ab665b9b7e29302f3406da45 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Tue, 21 May 2024 14:22:30 -0700 Subject: [PATCH] feat: [gkehub] Add ServiceMesh feature to gkehub v1beta API (#5368) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: Add ServiceMesh feature to gkehub v1beta API docs: Comments for fields in message `.google.cloud.gkehub.v1beta.Feature` are changed PiperOrigin-RevId: 635662968 Source-Link: https://github.com/googleapis/googleapis/commit/dac915afe45497685f0409e9f5114808b5de9a64 Source-Link: https://github.com/googleapis/googleapis-gen/commit/b97fc0cf0899778a861411546f03ef3727ac4ab6 Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLWNsb3VkLWdrZWh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiYjk3ZmMwY2YwODk5Nzc4YTg2MTQxMTU0NmYwM2VmMzcyN2FjNGFiNiJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --------- Co-authored-by: Owl Bot Co-authored-by: sofisl <55454395+sofisl@users.noreply.github.com> --- .../servicemesh/v1beta/servicemesh.proto | 276 +++ .../google/cloud/gkehub/v1beta/feature.proto | 52 +- .../google-cloud-gkehub/protos/protos.d.ts | 747 +++++- packages/google-cloud-gkehub/protos/protos.js | 2125 ++++++++++++++++- .../google-cloud-gkehub/protos/protos.json | 212 +- ...ippet_metadata.google.cloud.gkehub.v1.json | 2 +- ...ippet_metadata_google.cloud.gkehub.v1.json | 2 +- ..._metadata.google.cloud.gkehub.v1alpha.json | 2 +- ..._metadata_google.cloud.gkehub.v1alpha.json | 2 +- ...metadata.google.cloud.gkehub.v1alpha2.json | 2 +- ...metadata_google.cloud.gkehub.v1alpha2.json | 2 +- ...t_metadata.google.cloud.gkehub.v1beta.json | 2 +- ...t_metadata_google.cloud.gkehub.v1beta.json | 2 +- ..._metadata.google.cloud.gkehub.v1beta1.json | 2 +- ..._metadata_google.cloud.gkehub.v1beta1.json | 2 +- .../src/v1beta/gke_hub_proto_list.json | 1 + 16 files changed, 3399 insertions(+), 34 deletions(-) create mode 100644 packages/google-cloud-gkehub/protos/google/cloud/gkehub/servicemesh/v1beta/servicemesh.proto diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/servicemesh/v1beta/servicemesh.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/servicemesh/v1beta/servicemesh.proto new file mode 100644 index 00000000000..6c5634b98aa --- /dev/null +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/servicemesh/v1beta/servicemesh.proto @@ -0,0 +1,276 @@ +// Copyright 2024 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.gkehub.servicemesh.v1beta; + +import "google/api/field_behavior.proto"; + +option csharp_namespace = "Google.Cloud.GkeHub.ServiceMesh.V1Beta"; +option go_package = "cloud.google.com/go/gkehub/servicemesh/apiv1beta/servicemeshpb;servicemeshpb"; +option java_multiple_files = true; +option java_outer_classname = "ServiceMeshProto"; +option java_package = "com.google.cloud.gkehub.servicemesh.v1beta"; +option php_namespace = "Google\\Cloud\\GkeHub\\ServiceMesh\\V1beta"; +option ruby_package = "Google::Cloud::GkeHub::ServiceMesh::V1beta"; + +// **Service Mesh**: Spec for a single Membership for the servicemesh feature +message MembershipSpec { + // Whether to automatically manage Service Mesh control planes. + enum ControlPlaneManagement { + // Unspecified + CONTROL_PLANE_MANAGEMENT_UNSPECIFIED = 0; + + // Google should provision a control plane revision and make it available in + // the cluster. Google will enroll this revision in a release channel and + // keep it up to date. The control plane revision may be a managed service, + // or a managed install. + AUTOMATIC = 1; + + // User will manually configure the control plane (e.g. via CLI, or via the + // ControlPlaneRevision KRM API) + MANUAL = 2; + } + + // Whether to automatically manage Service Mesh. + enum Management { + // Unspecified + MANAGEMENT_UNSPECIFIED = 0; + + // Google should manage my Service Mesh for the cluster. + MANAGEMENT_AUTOMATIC = 1; + + // User will manually configure their service mesh components. + MANAGEMENT_MANUAL = 2; + } + + // Deprecated: use `management` instead + // Enables automatic control plane management. + ControlPlaneManagement control_plane = 1 [deprecated = true]; + + // Enables automatic Service Mesh management. + Management management = 4; +} + +// **Service Mesh**: State for a single Membership, as analyzed by the Service +// Mesh Hub Controller. +message MembershipState { + // Status of control plane management. + message ControlPlaneManagement { + // Implementation of managed control plane. + enum Implementation { + // Unspecified + IMPLEMENTATION_UNSPECIFIED = 0; + + // A Google build of istiod is used for the managed control plane. + ISTIOD = 1; + + // Traffic director is used for the managed control plane. + TRAFFIC_DIRECTOR = 2; + + // The control plane implementation is being updated. + UPDATING = 3; + } + + // Explanation of state. + repeated StatusDetails details = 2; + + // LifecycleState of control plane management. + LifecycleState state = 3; + + // Output only. Implementation of managed control plane. + Implementation implementation = 4 + [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Status of data plane management. Only reported per-member. + message DataPlaneManagement { + // Lifecycle status of data plane management. + LifecycleState state = 1; + + // Explanation of the status. + repeated StatusDetails details = 2; + } + + // Condition being reported. + message Condition { + // Unique identifier of the condition which describes the condition + // recognizable to the user. + enum Code { + // Default Unspecified code + CODE_UNSPECIFIED = 0; + + // Mesh IAM permission denied error code + MESH_IAM_PERMISSION_DENIED = 100; + + // CNI config unsupported error code + CNI_CONFIG_UNSUPPORTED = 201; + + // GKE sandbox unsupported error code + GKE_SANDBOX_UNSUPPORTED = 202; + + // Nodepool workload identity federation required error code + NODEPOOL_WORKLOAD_IDENTITY_FEDERATION_REQUIRED = 203; + + // CNI installation failed error code + CNI_INSTALLATION_FAILED = 204; + + // CNI pod unschedulable error code + CNI_POD_UNSCHEDULABLE = 205; + + // Multiple control planes unsupported error code + UNSUPPORTED_MULTIPLE_CONTROL_PLANES = 301; + + // VPC-SC GA is supported for this control plane. + VPCSC_GA_SUPPORTED = 302; + + // Configuration (Istio/k8s resources) failed to apply due to internal + // error. + CONFIG_APPLY_INTERNAL_ERROR = 401; + + // Configuration failed to be applied due to being invalid. + CONFIG_VALIDATION_ERROR = 402; + + // Encountered configuration(s) with possible unintended behavior or + // invalid configuration. These configs may not have been applied. + CONFIG_VALIDATION_WARNING = 403; + + // BackendService quota exceeded error code. + QUOTA_EXCEEDED_BACKEND_SERVICES = 404; + + // HealthCheck quota exceeded error code. + QUOTA_EXCEEDED_HEALTH_CHECKS = 405; + + // HTTPRoute quota exceeded error code. + QUOTA_EXCEEDED_HTTP_ROUTES = 406; + + // TCPRoute quota exceeded error code. + QUOTA_EXCEEDED_TCP_ROUTES = 407; + + // TLS routes quota exceeded error code. + QUOTA_EXCEEDED_TLS_ROUTES = 408; + + // TrafficPolicy quota exceeded error code. + QUOTA_EXCEEDED_TRAFFIC_POLICIES = 409; + + // EndpointPolicy quota exceeded error code. + QUOTA_EXCEEDED_ENDPOINT_POLICIES = 410; + + // Gateway quota exceeded error code. + QUOTA_EXCEEDED_GATEWAYS = 411; + + // Mesh quota exceeded error code. + QUOTA_EXCEEDED_MESHES = 412; + + // ServerTLSPolicy quota exceeded error code. + QUOTA_EXCEEDED_SERVER_TLS_POLICIES = 413; + + // ClientTLSPolicy quota exceeded error code. + QUOTA_EXCEEDED_CLIENT_TLS_POLICIES = 414; + + // ServiceLBPolicy quota exceeded error code. + QUOTA_EXCEEDED_SERVICE_LB_POLICIES = 415; + + // HTTPFilter quota exceeded error code. + QUOTA_EXCEEDED_HTTP_FILTERS = 416; + + // TCPFilter quota exceeded error code. + QUOTA_EXCEEDED_TCP_FILTERS = 417; + + // NetworkEndpointGroup quota exceeded error code. + QUOTA_EXCEEDED_NETWORK_ENDPOINT_GROUPS = 418; + } + + // Severity level of the reported condition + enum Severity { + // Unspecified severity + SEVERITY_UNSPECIFIED = 0; + + // Indicates an issue that prevents the mesh from operating correctly + ERROR = 1; + + // Indicates a setting is likely wrong, but the mesh is still able to + // operate + WARNING = 2; + + // An informational message, not requiring any action + INFO = 3; + } + + // Unique identifier of the condition which describes the condition + // recognizable to the user. + Code code = 1; + + // Links contains actionable information. + string documentation_link = 2; + + // A short summary about the issue. + string details = 3; + + // Severity level of the condition. + Severity severity = 4; + } + + // Lifecycle state of Service Mesh components. + enum LifecycleState { + // Unspecified + LIFECYCLE_STATE_UNSPECIFIED = 0; + + // DISABLED means that the component is not enabled. + DISABLED = 1; + + // FAILED_PRECONDITION means that provisioning cannot proceed because of + // some characteristic of the member cluster. + FAILED_PRECONDITION = 2; + + // PROVISIONING means that provisioning is in progress. + PROVISIONING = 3; + + // ACTIVE means that the component is ready for use. + ACTIVE = 4; + + // STALLED means that provisioning could not be done. + STALLED = 5; + + // NEEDS_ATTENTION means that the component is ready, but some user + // intervention is required. (For example that the user should migrate + // workloads to a new control plane revision.) + NEEDS_ATTENTION = 6; + + // DEGRADED means that the component is ready, but operating in a + // degraded state. + DEGRADED = 7; + } + + // Output only. Status of control plane management + ControlPlaneManagement control_plane_management = 2 + [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Status of data plane management. + DataPlaneManagement data_plane_management = 4 + [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. List of conditions reported for this membership. + repeated Condition conditions = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Structured and human-readable details for a status. +message StatusDetails { + // A machine-readable code that further describes a broad status. + string code = 1; + + // Human-readable explanation of code. + string details = 2; +} diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/feature.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/feature.proto index c1c1b562366..7ba1bbbf66a 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/feature.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/feature.proto @@ -18,6 +18,7 @@ package google.cloud.gkehub.v1beta; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; +import "google/cloud/gkehub/servicemesh/v1beta/servicemesh.proto"; import "google/cloud/gkehub/v1beta/configmanagement/configmanagement.proto"; import "google/cloud/gkehub/v1beta/metering/metering.proto"; import "google/cloud/gkehub/v1beta/multiclusteringress/multiclusteringress.proto"; @@ -42,22 +43,24 @@ message Feature { // `projects/*/locations/*/features/*`. string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - // GCP labels for this Feature. + // Labels for this Feature. map labels = 2; // Output only. State of the Feature resource itself. - FeatureResourceState resource_state = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + FeatureResourceState resource_state = 3 + [(google.api.field_behavior) = OUTPUT_ONLY]; - // Optional. Hub-wide Feature configuration. If this Feature does not support any - // Hub-wide configuration, this field may be unused. + // Optional. Hub-wide Feature configuration. If this Feature does not support + // any Hub-wide configuration, this field may be unused. CommonFeatureSpec spec = 4 [(google.api.field_behavior) = OPTIONAL]; - // Optional. Membership-specific configuration for this Feature. If this Feature does - // not support any per-Membership configuration, this field may be unused. + // Optional. Membership-specific configuration for this Feature. If this + // Feature does not support any per-Membership configuration, this field may + // be unused. // // The keys indicate which Membership the configuration is for, in the form: // - // projects/{p}/locations/{l}/memberships/{m} + // `projects/{p}/locations/{l}/memberships/{m}` // // Where {p} is the project, {l} is a valid location and {m} is a valid // Membership in this project at that location. {p} WILL match the Feature's @@ -69,7 +72,8 @@ message Feature { // ONE of the entries will be saved, with no guarantees as to which. For this // reason, it is recommended the same format be used for all entries when // mutating a Feature. - map membership_specs = 5 [(google.api.field_behavior) = OPTIONAL]; + map membership_specs = 5 + [(google.api.field_behavior) = OPTIONAL]; // Output only. The Hub-wide Feature state. CommonFeatureState state = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; @@ -79,21 +83,25 @@ message Feature { // // The keys indicate which Membership the state is for, in the form: // - // projects/{p}/locations/{l}/memberships/{m} + // `projects/{p}/locations/{l}/memberships/{m}` // // Where {p} is the project number, {l} is a valid location and {m} is a valid // Membership in this project at that location. {p} MUST match the Feature's // project number. - map membership_states = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + map membership_states = 7 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. When the Feature resource was created. - google.protobuf.Timestamp create_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp create_time = 8 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. When the Feature resource was last updated. - google.protobuf.Timestamp update_time = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp update_time = 9 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. When the Feature resource was deleted. - google.protobuf.Timestamp delete_time = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp delete_time = 10 + [(google.api.field_behavior) = OUTPUT_ONLY]; } // FeatureResourceState describes the state of a Feature *resource* in the @@ -167,7 +175,8 @@ message FeatureState { message CommonFeatureSpec { oneof feature_spec { // Multicluster Ingress-specific spec. - google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec multiclusteringress = 102; + google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec + multiclusteringress = 102; } } @@ -179,10 +188,15 @@ message CommonFeatureState { // MembershipFeatureSpec contains configuration information for a single // Membership. +// NOTE: Please use snake case in your feature name. message MembershipFeatureSpec { oneof feature_spec { // Config Management-specific spec. - google.cloud.gkehub.configmanagement.v1beta.MembershipSpec configmanagement = 106; + google.cloud.gkehub.configmanagement.v1beta.MembershipSpec + configmanagement = 106; + + // Anthos Service Mesh-specific spec + google.cloud.gkehub.servicemesh.v1beta.MembershipSpec mesh = 116; } } @@ -190,11 +204,15 @@ message MembershipFeatureSpec { // Membership. message MembershipFeatureState { oneof feature_state { - // Metering-specific spec. + // Service Mesh-specific state. + google.cloud.gkehub.servicemesh.v1beta.MembershipState servicemesh = 100; + + // Metering-specific state. google.cloud.gkehub.metering.v1beta.MembershipState metering = 104; // Config Management-specific state. - google.cloud.gkehub.configmanagement.v1beta.MembershipState configmanagement = 106; + google.cloud.gkehub.configmanagement.v1beta.MembershipState + configmanagement = 106; } // The high-level state of this Feature for a single membership. diff --git a/packages/google-cloud-gkehub/protos/protos.d.ts b/packages/google-cloud-gkehub/protos/protos.d.ts index be3cb11ce7c..b3089c20192 100644 --- a/packages/google-cloud-gkehub/protos/protos.d.ts +++ b/packages/google-cloud-gkehub/protos/protos.d.ts @@ -19851,6 +19851,737 @@ export namespace google { public static getTypeUrl(typeUrlPrefix?: string): string; } } + + /** Namespace v1beta. */ + namespace v1beta { + + /** Properties of a MembershipSpec. */ + interface IMembershipSpec { + + /** MembershipSpec controlPlane */ + controlPlane?: (google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.ControlPlaneManagement|keyof typeof google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.ControlPlaneManagement|null); + + /** MembershipSpec management */ + management?: (google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.Management|keyof typeof google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.Management|null); + } + + /** Represents a MembershipSpec. */ + class MembershipSpec implements IMembershipSpec { + + /** + * Constructs a new MembershipSpec. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.servicemesh.v1beta.IMembershipSpec); + + /** MembershipSpec controlPlane. */ + public controlPlane: (google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.ControlPlaneManagement|keyof typeof google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.ControlPlaneManagement); + + /** MembershipSpec management. */ + public management: (google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.Management|keyof typeof google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.Management); + + /** + * Creates a new MembershipSpec instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipSpec instance + */ + public static create(properties?: google.cloud.gkehub.servicemesh.v1beta.IMembershipSpec): google.cloud.gkehub.servicemesh.v1beta.MembershipSpec; + + /** + * Encodes the specified MembershipSpec message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.verify|verify} messages. + * @param message MembershipSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.servicemesh.v1beta.IMembershipSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.verify|verify} messages. + * @param message MembershipSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.servicemesh.v1beta.IMembershipSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipSpec message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.servicemesh.v1beta.MembershipSpec; + + /** + * Decodes a MembershipSpec message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.servicemesh.v1beta.MembershipSpec; + + /** + * Verifies a MembershipSpec message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipSpec message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipSpec + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.servicemesh.v1beta.MembershipSpec; + + /** + * Creates a plain object from a MembershipSpec message. Also converts values to other types if specified. + * @param message MembershipSpec + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.servicemesh.v1beta.MembershipSpec, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipSpec to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipSpec + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + namespace MembershipSpec { + + /** ControlPlaneManagement enum. */ + enum ControlPlaneManagement { + CONTROL_PLANE_MANAGEMENT_UNSPECIFIED = 0, + AUTOMATIC = 1, + MANUAL = 2 + } + + /** Management enum. */ + enum Management { + MANAGEMENT_UNSPECIFIED = 0, + MANAGEMENT_AUTOMATIC = 1, + MANAGEMENT_MANUAL = 2 + } + } + + /** Properties of a MembershipState. */ + interface IMembershipState { + + /** MembershipState controlPlaneManagement */ + controlPlaneManagement?: (google.cloud.gkehub.servicemesh.v1beta.MembershipState.IControlPlaneManagement|null); + + /** MembershipState dataPlaneManagement */ + dataPlaneManagement?: (google.cloud.gkehub.servicemesh.v1beta.MembershipState.IDataPlaneManagement|null); + + /** MembershipState conditions */ + conditions?: (google.cloud.gkehub.servicemesh.v1beta.MembershipState.ICondition[]|null); + } + + /** Represents a MembershipState. */ + class MembershipState implements IMembershipState { + + /** + * Constructs a new MembershipState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.servicemesh.v1beta.IMembershipState); + + /** MembershipState controlPlaneManagement. */ + public controlPlaneManagement?: (google.cloud.gkehub.servicemesh.v1beta.MembershipState.IControlPlaneManagement|null); + + /** MembershipState dataPlaneManagement. */ + public dataPlaneManagement?: (google.cloud.gkehub.servicemesh.v1beta.MembershipState.IDataPlaneManagement|null); + + /** MembershipState conditions. */ + public conditions: google.cloud.gkehub.servicemesh.v1beta.MembershipState.ICondition[]; + + /** + * Creates a new MembershipState instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipState instance + */ + public static create(properties?: google.cloud.gkehub.servicemesh.v1beta.IMembershipState): google.cloud.gkehub.servicemesh.v1beta.MembershipState; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.servicemesh.v1beta.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.servicemesh.v1beta.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.servicemesh.v1beta.MembershipState; + + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.servicemesh.v1beta.MembershipState; + + /** + * Verifies a MembershipState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.servicemesh.v1beta.MembershipState; + + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @param message MembershipState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.servicemesh.v1beta.MembershipState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + namespace MembershipState { + + /** Properties of a ControlPlaneManagement. */ + interface IControlPlaneManagement { + + /** ControlPlaneManagement details */ + details?: (google.cloud.gkehub.servicemesh.v1beta.IStatusDetails[]|null); + + /** ControlPlaneManagement state */ + state?: (google.cloud.gkehub.servicemesh.v1beta.MembershipState.LifecycleState|keyof typeof google.cloud.gkehub.servicemesh.v1beta.MembershipState.LifecycleState|null); + + /** ControlPlaneManagement implementation */ + implementation?: (google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement.Implementation|keyof typeof google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement.Implementation|null); + } + + /** Represents a ControlPlaneManagement. */ + class ControlPlaneManagement implements IControlPlaneManagement { + + /** + * Constructs a new ControlPlaneManagement. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.servicemesh.v1beta.MembershipState.IControlPlaneManagement); + + /** ControlPlaneManagement details. */ + public details: google.cloud.gkehub.servicemesh.v1beta.IStatusDetails[]; + + /** ControlPlaneManagement state. */ + public state: (google.cloud.gkehub.servicemesh.v1beta.MembershipState.LifecycleState|keyof typeof google.cloud.gkehub.servicemesh.v1beta.MembershipState.LifecycleState); + + /** ControlPlaneManagement implementation. */ + public implementation: (google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement.Implementation|keyof typeof google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement.Implementation); + + /** + * Creates a new ControlPlaneManagement instance using the specified properties. + * @param [properties] Properties to set + * @returns ControlPlaneManagement instance + */ + public static create(properties?: google.cloud.gkehub.servicemesh.v1beta.MembershipState.IControlPlaneManagement): google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement; + + /** + * Encodes the specified ControlPlaneManagement message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement.verify|verify} messages. + * @param message ControlPlaneManagement message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.servicemesh.v1beta.MembershipState.IControlPlaneManagement, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ControlPlaneManagement message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement.verify|verify} messages. + * @param message ControlPlaneManagement message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.servicemesh.v1beta.MembershipState.IControlPlaneManagement, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ControlPlaneManagement message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ControlPlaneManagement + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement; + + /** + * Decodes a ControlPlaneManagement message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ControlPlaneManagement + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement; + + /** + * Verifies a ControlPlaneManagement message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ControlPlaneManagement message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ControlPlaneManagement + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement; + + /** + * Creates a plain object from a ControlPlaneManagement message. Also converts values to other types if specified. + * @param message ControlPlaneManagement + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ControlPlaneManagement to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ControlPlaneManagement + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + namespace ControlPlaneManagement { + + /** Implementation enum. */ + enum Implementation { + IMPLEMENTATION_UNSPECIFIED = 0, + ISTIOD = 1, + TRAFFIC_DIRECTOR = 2, + UPDATING = 3 + } + } + + /** Properties of a DataPlaneManagement. */ + interface IDataPlaneManagement { + + /** DataPlaneManagement state */ + state?: (google.cloud.gkehub.servicemesh.v1beta.MembershipState.LifecycleState|keyof typeof google.cloud.gkehub.servicemesh.v1beta.MembershipState.LifecycleState|null); + + /** DataPlaneManagement details */ + details?: (google.cloud.gkehub.servicemesh.v1beta.IStatusDetails[]|null); + } + + /** Represents a DataPlaneManagement. */ + class DataPlaneManagement implements IDataPlaneManagement { + + /** + * Constructs a new DataPlaneManagement. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.servicemesh.v1beta.MembershipState.IDataPlaneManagement); + + /** DataPlaneManagement state. */ + public state: (google.cloud.gkehub.servicemesh.v1beta.MembershipState.LifecycleState|keyof typeof google.cloud.gkehub.servicemesh.v1beta.MembershipState.LifecycleState); + + /** DataPlaneManagement details. */ + public details: google.cloud.gkehub.servicemesh.v1beta.IStatusDetails[]; + + /** + * Creates a new DataPlaneManagement instance using the specified properties. + * @param [properties] Properties to set + * @returns DataPlaneManagement instance + */ + public static create(properties?: google.cloud.gkehub.servicemesh.v1beta.MembershipState.IDataPlaneManagement): google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement; + + /** + * Encodes the specified DataPlaneManagement message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement.verify|verify} messages. + * @param message DataPlaneManagement message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.servicemesh.v1beta.MembershipState.IDataPlaneManagement, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified DataPlaneManagement message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement.verify|verify} messages. + * @param message DataPlaneManagement message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.servicemesh.v1beta.MembershipState.IDataPlaneManagement, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a DataPlaneManagement message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns DataPlaneManagement + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement; + + /** + * Decodes a DataPlaneManagement message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns DataPlaneManagement + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement; + + /** + * Verifies a DataPlaneManagement message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a DataPlaneManagement message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns DataPlaneManagement + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement; + + /** + * Creates a plain object from a DataPlaneManagement message. Also converts values to other types if specified. + * @param message DataPlaneManagement + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this DataPlaneManagement to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for DataPlaneManagement + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + /** Properties of a Condition. */ + interface ICondition { + + /** Condition code */ + code?: (google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.Code|keyof typeof google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.Code|null); + + /** Condition documentationLink */ + documentationLink?: (string|null); + + /** Condition details */ + details?: (string|null); + + /** Condition severity */ + severity?: (google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.Severity|keyof typeof google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.Severity|null); + } + + /** Represents a Condition. */ + class Condition implements ICondition { + + /** + * Constructs a new Condition. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.servicemesh.v1beta.MembershipState.ICondition); + + /** Condition code. */ + public code: (google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.Code|keyof typeof google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.Code); + + /** Condition documentationLink. */ + public documentationLink: string; + + /** Condition details. */ + public details: string; + + /** Condition severity. */ + public severity: (google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.Severity|keyof typeof google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.Severity); + + /** + * Creates a new Condition instance using the specified properties. + * @param [properties] Properties to set + * @returns Condition instance + */ + public static create(properties?: google.cloud.gkehub.servicemesh.v1beta.MembershipState.ICondition): google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition; + + /** + * Encodes the specified Condition message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.verify|verify} messages. + * @param message Condition message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.servicemesh.v1beta.MembershipState.ICondition, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Condition message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.verify|verify} messages. + * @param message Condition message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.servicemesh.v1beta.MembershipState.ICondition, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a Condition message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Condition + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition; + + /** + * Decodes a Condition message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Condition + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition; + + /** + * Verifies a Condition message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a Condition message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Condition + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition; + + /** + * Creates a plain object from a Condition message. Also converts values to other types if specified. + * @param message Condition + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Condition to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for Condition + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + namespace Condition { + + /** Code enum. */ + enum Code { + CODE_UNSPECIFIED = 0, + MESH_IAM_PERMISSION_DENIED = 100, + CNI_CONFIG_UNSUPPORTED = 201, + GKE_SANDBOX_UNSUPPORTED = 202, + NODEPOOL_WORKLOAD_IDENTITY_FEDERATION_REQUIRED = 203, + CNI_INSTALLATION_FAILED = 204, + CNI_POD_UNSCHEDULABLE = 205, + UNSUPPORTED_MULTIPLE_CONTROL_PLANES = 301, + VPCSC_GA_SUPPORTED = 302, + CONFIG_APPLY_INTERNAL_ERROR = 401, + CONFIG_VALIDATION_ERROR = 402, + CONFIG_VALIDATION_WARNING = 403, + QUOTA_EXCEEDED_BACKEND_SERVICES = 404, + QUOTA_EXCEEDED_HEALTH_CHECKS = 405, + QUOTA_EXCEEDED_HTTP_ROUTES = 406, + QUOTA_EXCEEDED_TCP_ROUTES = 407, + QUOTA_EXCEEDED_TLS_ROUTES = 408, + QUOTA_EXCEEDED_TRAFFIC_POLICIES = 409, + QUOTA_EXCEEDED_ENDPOINT_POLICIES = 410, + QUOTA_EXCEEDED_GATEWAYS = 411, + QUOTA_EXCEEDED_MESHES = 412, + QUOTA_EXCEEDED_SERVER_TLS_POLICIES = 413, + QUOTA_EXCEEDED_CLIENT_TLS_POLICIES = 414, + QUOTA_EXCEEDED_SERVICE_LB_POLICIES = 415, + QUOTA_EXCEEDED_HTTP_FILTERS = 416, + QUOTA_EXCEEDED_TCP_FILTERS = 417, + QUOTA_EXCEEDED_NETWORK_ENDPOINT_GROUPS = 418 + } + + /** Severity enum. */ + enum Severity { + SEVERITY_UNSPECIFIED = 0, + ERROR = 1, + WARNING = 2, + INFO = 3 + } + } + + /** LifecycleState enum. */ + enum LifecycleState { + LIFECYCLE_STATE_UNSPECIFIED = 0, + DISABLED = 1, + FAILED_PRECONDITION = 2, + PROVISIONING = 3, + ACTIVE = 4, + STALLED = 5, + NEEDS_ATTENTION = 6, + DEGRADED = 7 + } + } + + /** Properties of a StatusDetails. */ + interface IStatusDetails { + + /** StatusDetails code */ + code?: (string|null); + + /** StatusDetails details */ + details?: (string|null); + } + + /** Represents a StatusDetails. */ + class StatusDetails implements IStatusDetails { + + /** + * Constructs a new StatusDetails. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.servicemesh.v1beta.IStatusDetails); + + /** StatusDetails code. */ + public code: string; + + /** StatusDetails details. */ + public details: string; + + /** + * Creates a new StatusDetails instance using the specified properties. + * @param [properties] Properties to set + * @returns StatusDetails instance + */ + public static create(properties?: google.cloud.gkehub.servicemesh.v1beta.IStatusDetails): google.cloud.gkehub.servicemesh.v1beta.StatusDetails; + + /** + * Encodes the specified StatusDetails message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.StatusDetails.verify|verify} messages. + * @param message StatusDetails message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.servicemesh.v1beta.IStatusDetails, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified StatusDetails message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.StatusDetails.verify|verify} messages. + * @param message StatusDetails message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.servicemesh.v1beta.IStatusDetails, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a StatusDetails message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns StatusDetails + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.servicemesh.v1beta.StatusDetails; + + /** + * Decodes a StatusDetails message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns StatusDetails + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.servicemesh.v1beta.StatusDetails; + + /** + * Verifies a StatusDetails message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a StatusDetails message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns StatusDetails + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.servicemesh.v1beta.StatusDetails; + + /** + * Creates a plain object from a StatusDetails message. Also converts values to other types if specified. + * @param message StatusDetails + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.servicemesh.v1beta.StatusDetails, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this StatusDetails to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for StatusDetails + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + } } /** Namespace v1alpha2. */ @@ -23325,6 +24056,9 @@ export namespace google { /** MembershipFeatureSpec configmanagement */ configmanagement?: (google.cloud.gkehub.configmanagement.v1beta.IMembershipSpec|null); + + /** MembershipFeatureSpec mesh */ + mesh?: (google.cloud.gkehub.servicemesh.v1beta.IMembershipSpec|null); } /** Represents a MembershipFeatureSpec. */ @@ -23339,8 +24073,11 @@ export namespace google { /** MembershipFeatureSpec configmanagement. */ public configmanagement?: (google.cloud.gkehub.configmanagement.v1beta.IMembershipSpec|null); + /** MembershipFeatureSpec mesh. */ + public mesh?: (google.cloud.gkehub.servicemesh.v1beta.IMembershipSpec|null); + /** MembershipFeatureSpec featureSpec. */ - public featureSpec?: "configmanagement"; + public featureSpec?: ("configmanagement"|"mesh"); /** * Creates a new MembershipFeatureSpec instance using the specified properties. @@ -23423,6 +24160,9 @@ export namespace google { /** Properties of a MembershipFeatureState. */ interface IMembershipFeatureState { + /** MembershipFeatureState servicemesh */ + servicemesh?: (google.cloud.gkehub.servicemesh.v1beta.IMembershipState|null); + /** MembershipFeatureState metering */ metering?: (google.cloud.gkehub.metering.v1beta.IMembershipState|null); @@ -23442,6 +24182,9 @@ export namespace google { */ constructor(properties?: google.cloud.gkehub.v1beta.IMembershipFeatureState); + /** MembershipFeatureState servicemesh. */ + public servicemesh?: (google.cloud.gkehub.servicemesh.v1beta.IMembershipState|null); + /** MembershipFeatureState metering. */ public metering?: (google.cloud.gkehub.metering.v1beta.IMembershipState|null); @@ -23452,7 +24195,7 @@ export namespace google { public state?: (google.cloud.gkehub.v1beta.IFeatureState|null); /** MembershipFeatureState featureState. */ - public featureState?: ("metering"|"configmanagement"); + public featureState?: ("servicemesh"|"metering"|"configmanagement"); /** * Creates a new MembershipFeatureState instance using the specified properties. diff --git a/packages/google-cloud-gkehub/protos/protos.js b/packages/google-cloud-gkehub/protos/protos.js index 10e6532fc7f..a05d789cd86 100644 --- a/packages/google-cloud-gkehub/protos/protos.js +++ b/packages/google-cloud-gkehub/protos/protos.js @@ -51415,6 +51415,2053 @@ return v1alpha; })(); + servicemesh.v1beta = (function() { + + /** + * Namespace v1beta. + * @memberof google.cloud.gkehub.servicemesh + * @namespace + */ + var v1beta = {}; + + v1beta.MembershipSpec = (function() { + + /** + * Properties of a MembershipSpec. + * @memberof google.cloud.gkehub.servicemesh.v1beta + * @interface IMembershipSpec + * @property {google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.ControlPlaneManagement|null} [controlPlane] MembershipSpec controlPlane + * @property {google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.Management|null} [management] MembershipSpec management + */ + + /** + * Constructs a new MembershipSpec. + * @memberof google.cloud.gkehub.servicemesh.v1beta + * @classdesc Represents a MembershipSpec. + * @implements IMembershipSpec + * @constructor + * @param {google.cloud.gkehub.servicemesh.v1beta.IMembershipSpec=} [properties] Properties to set + */ + function MembershipSpec(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * MembershipSpec controlPlane. + * @member {google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.ControlPlaneManagement} controlPlane + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipSpec + * @instance + */ + MembershipSpec.prototype.controlPlane = 0; + + /** + * MembershipSpec management. + * @member {google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.Management} management + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipSpec + * @instance + */ + MembershipSpec.prototype.management = 0; + + /** + * Creates a new MembershipSpec instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipSpec + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.IMembershipSpec=} [properties] Properties to set + * @returns {google.cloud.gkehub.servicemesh.v1beta.MembershipSpec} MembershipSpec instance + */ + MembershipSpec.create = function create(properties) { + return new MembershipSpec(properties); + }; + + /** + * Encodes the specified MembershipSpec message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipSpec + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.IMembershipSpec} message MembershipSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipSpec.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.controlPlane != null && Object.hasOwnProperty.call(message, "controlPlane")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.controlPlane); + if (message.management != null && Object.hasOwnProperty.call(message, "management")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.management); + return writer; + }; + + /** + * Encodes the specified MembershipSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipSpec + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.IMembershipSpec} message MembershipSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipSpec.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MembershipSpec message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.servicemesh.v1beta.MembershipSpec} MembershipSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipSpec.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.servicemesh.v1beta.MembershipSpec(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.controlPlane = reader.int32(); + break; + } + case 4: { + message.management = reader.int32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MembershipSpec message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.servicemesh.v1beta.MembershipSpec} MembershipSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipSpec.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MembershipSpec message. + * @function verify + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipSpec + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipSpec.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.controlPlane != null && message.hasOwnProperty("controlPlane")) + switch (message.controlPlane) { + default: + return "controlPlane: enum value expected"; + case 0: + case 1: + case 2: + break; + } + if (message.management != null && message.hasOwnProperty("management")) + switch (message.management) { + default: + return "management: enum value expected"; + case 0: + case 1: + case 2: + break; + } + return null; + }; + + /** + * Creates a MembershipSpec message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipSpec + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.servicemesh.v1beta.MembershipSpec} MembershipSpec + */ + MembershipSpec.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.servicemesh.v1beta.MembershipSpec) + return object; + var message = new $root.google.cloud.gkehub.servicemesh.v1beta.MembershipSpec(); + switch (object.controlPlane) { + default: + if (typeof object.controlPlane === "number") { + message.controlPlane = object.controlPlane; + break; + } + break; + case "CONTROL_PLANE_MANAGEMENT_UNSPECIFIED": + case 0: + message.controlPlane = 0; + break; + case "AUTOMATIC": + case 1: + message.controlPlane = 1; + break; + case "MANUAL": + case 2: + message.controlPlane = 2; + break; + } + switch (object.management) { + default: + if (typeof object.management === "number") { + message.management = object.management; + break; + } + break; + case "MANAGEMENT_UNSPECIFIED": + case 0: + message.management = 0; + break; + case "MANAGEMENT_AUTOMATIC": + case 1: + message.management = 1; + break; + case "MANAGEMENT_MANUAL": + case 2: + message.management = 2; + break; + } + return message; + }; + + /** + * Creates a plain object from a MembershipSpec message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipSpec + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.MembershipSpec} message MembershipSpec + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipSpec.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.controlPlane = options.enums === String ? "CONTROL_PLANE_MANAGEMENT_UNSPECIFIED" : 0; + object.management = options.enums === String ? "MANAGEMENT_UNSPECIFIED" : 0; + } + if (message.controlPlane != null && message.hasOwnProperty("controlPlane")) + object.controlPlane = options.enums === String ? $root.google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.ControlPlaneManagement[message.controlPlane] === undefined ? message.controlPlane : $root.google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.ControlPlaneManagement[message.controlPlane] : message.controlPlane; + if (message.management != null && message.hasOwnProperty("management")) + object.management = options.enums === String ? $root.google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.Management[message.management] === undefined ? message.management : $root.google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.Management[message.management] : message.management; + return object; + }; + + /** + * Converts this MembershipSpec to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipSpec + * @instance + * @returns {Object.} JSON object + */ + MembershipSpec.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for MembershipSpec + * @function getTypeUrl + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipSpec + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.servicemesh.v1beta.MembershipSpec"; + }; + + /** + * ControlPlaneManagement enum. + * @name google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.ControlPlaneManagement + * @enum {number} + * @property {number} CONTROL_PLANE_MANAGEMENT_UNSPECIFIED=0 CONTROL_PLANE_MANAGEMENT_UNSPECIFIED value + * @property {number} AUTOMATIC=1 AUTOMATIC value + * @property {number} MANUAL=2 MANUAL value + */ + MembershipSpec.ControlPlaneManagement = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "CONTROL_PLANE_MANAGEMENT_UNSPECIFIED"] = 0; + values[valuesById[1] = "AUTOMATIC"] = 1; + values[valuesById[2] = "MANUAL"] = 2; + return values; + })(); + + /** + * Management enum. + * @name google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.Management + * @enum {number} + * @property {number} MANAGEMENT_UNSPECIFIED=0 MANAGEMENT_UNSPECIFIED value + * @property {number} MANAGEMENT_AUTOMATIC=1 MANAGEMENT_AUTOMATIC value + * @property {number} MANAGEMENT_MANUAL=2 MANAGEMENT_MANUAL value + */ + MembershipSpec.Management = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "MANAGEMENT_UNSPECIFIED"] = 0; + values[valuesById[1] = "MANAGEMENT_AUTOMATIC"] = 1; + values[valuesById[2] = "MANAGEMENT_MANUAL"] = 2; + return values; + })(); + + return MembershipSpec; + })(); + + v1beta.MembershipState = (function() { + + /** + * Properties of a MembershipState. + * @memberof google.cloud.gkehub.servicemesh.v1beta + * @interface IMembershipState + * @property {google.cloud.gkehub.servicemesh.v1beta.MembershipState.IControlPlaneManagement|null} [controlPlaneManagement] MembershipState controlPlaneManagement + * @property {google.cloud.gkehub.servicemesh.v1beta.MembershipState.IDataPlaneManagement|null} [dataPlaneManagement] MembershipState dataPlaneManagement + * @property {Array.|null} [conditions] MembershipState conditions + */ + + /** + * Constructs a new MembershipState. + * @memberof google.cloud.gkehub.servicemesh.v1beta + * @classdesc Represents a MembershipState. + * @implements IMembershipState + * @constructor + * @param {google.cloud.gkehub.servicemesh.v1beta.IMembershipState=} [properties] Properties to set + */ + function MembershipState(properties) { + this.conditions = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * MembershipState controlPlaneManagement. + * @member {google.cloud.gkehub.servicemesh.v1beta.MembershipState.IControlPlaneManagement|null|undefined} controlPlaneManagement + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState + * @instance + */ + MembershipState.prototype.controlPlaneManagement = null; + + /** + * MembershipState dataPlaneManagement. + * @member {google.cloud.gkehub.servicemesh.v1beta.MembershipState.IDataPlaneManagement|null|undefined} dataPlaneManagement + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState + * @instance + */ + MembershipState.prototype.dataPlaneManagement = null; + + /** + * MembershipState conditions. + * @member {Array.} conditions + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState + * @instance + */ + MembershipState.prototype.conditions = $util.emptyArray; + + /** + * Creates a new MembershipState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.IMembershipState=} [properties] Properties to set + * @returns {google.cloud.gkehub.servicemesh.v1beta.MembershipState} MembershipState instance + */ + MembershipState.create = function create(properties) { + return new MembershipState(properties); + }; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.MembershipState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.IMembershipState} message MembershipState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.controlPlaneManagement != null && Object.hasOwnProperty.call(message, "controlPlaneManagement")) + $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement.encode(message.controlPlaneManagement, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.dataPlaneManagement != null && Object.hasOwnProperty.call(message, "dataPlaneManagement")) + $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement.encode(message.dataPlaneManagement, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.conditions != null && message.conditions.length) + for (var i = 0; i < message.conditions.length; ++i) + $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.encode(message.conditions[i], writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.MembershipState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.IMembershipState} message MembershipState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.servicemesh.v1beta.MembershipState} MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 2: { + message.controlPlaneManagement = $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement.decode(reader, reader.uint32()); + break; + } + case 4: { + message.dataPlaneManagement = $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement.decode(reader, reader.uint32()); + break; + } + case 8: { + if (!(message.conditions && message.conditions.length)) + message.conditions = []; + message.conditions.push($root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.servicemesh.v1beta.MembershipState} MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MembershipState message. + * @function verify + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.controlPlaneManagement != null && message.hasOwnProperty("controlPlaneManagement")) { + var error = $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement.verify(message.controlPlaneManagement); + if (error) + return "controlPlaneManagement." + error; + } + if (message.dataPlaneManagement != null && message.hasOwnProperty("dataPlaneManagement")) { + var error = $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement.verify(message.dataPlaneManagement); + if (error) + return "dataPlaneManagement." + error; + } + if (message.conditions != null && message.hasOwnProperty("conditions")) { + if (!Array.isArray(message.conditions)) + return "conditions: array expected"; + for (var i = 0; i < message.conditions.length; ++i) { + var error = $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.verify(message.conditions[i]); + if (error) + return "conditions." + error; + } + } + return null; + }; + + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.servicemesh.v1beta.MembershipState} MembershipState + */ + MembershipState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState) + return object; + var message = new $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState(); + if (object.controlPlaneManagement != null) { + if (typeof object.controlPlaneManagement !== "object") + throw TypeError(".google.cloud.gkehub.servicemesh.v1beta.MembershipState.controlPlaneManagement: object expected"); + message.controlPlaneManagement = $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement.fromObject(object.controlPlaneManagement); + } + if (object.dataPlaneManagement != null) { + if (typeof object.dataPlaneManagement !== "object") + throw TypeError(".google.cloud.gkehub.servicemesh.v1beta.MembershipState.dataPlaneManagement: object expected"); + message.dataPlaneManagement = $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement.fromObject(object.dataPlaneManagement); + } + if (object.conditions) { + if (!Array.isArray(object.conditions)) + throw TypeError(".google.cloud.gkehub.servicemesh.v1beta.MembershipState.conditions: array expected"); + message.conditions = []; + for (var i = 0; i < object.conditions.length; ++i) { + if (typeof object.conditions[i] !== "object") + throw TypeError(".google.cloud.gkehub.servicemesh.v1beta.MembershipState.conditions: object expected"); + message.conditions[i] = $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.fromObject(object.conditions[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.MembershipState} message MembershipState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.conditions = []; + if (options.defaults) { + object.controlPlaneManagement = null; + object.dataPlaneManagement = null; + } + if (message.controlPlaneManagement != null && message.hasOwnProperty("controlPlaneManagement")) + object.controlPlaneManagement = $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement.toObject(message.controlPlaneManagement, options); + if (message.dataPlaneManagement != null && message.hasOwnProperty("dataPlaneManagement")) + object.dataPlaneManagement = $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement.toObject(message.dataPlaneManagement, options); + if (message.conditions && message.conditions.length) { + object.conditions = []; + for (var j = 0; j < message.conditions.length; ++j) + object.conditions[j] = $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.toObject(message.conditions[j], options); + } + return object; + }; + + /** + * Converts this MembershipState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState + * @instance + * @returns {Object.} JSON object + */ + MembershipState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for MembershipState + * @function getTypeUrl + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.servicemesh.v1beta.MembershipState"; + }; + + MembershipState.ControlPlaneManagement = (function() { + + /** + * Properties of a ControlPlaneManagement. + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState + * @interface IControlPlaneManagement + * @property {Array.|null} [details] ControlPlaneManagement details + * @property {google.cloud.gkehub.servicemesh.v1beta.MembershipState.LifecycleState|null} [state] ControlPlaneManagement state + * @property {google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement.Implementation|null} [implementation] ControlPlaneManagement implementation + */ + + /** + * Constructs a new ControlPlaneManagement. + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState + * @classdesc Represents a ControlPlaneManagement. + * @implements IControlPlaneManagement + * @constructor + * @param {google.cloud.gkehub.servicemesh.v1beta.MembershipState.IControlPlaneManagement=} [properties] Properties to set + */ + function ControlPlaneManagement(properties) { + this.details = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * ControlPlaneManagement details. + * @member {Array.} details + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement + * @instance + */ + ControlPlaneManagement.prototype.details = $util.emptyArray; + + /** + * ControlPlaneManagement state. + * @member {google.cloud.gkehub.servicemesh.v1beta.MembershipState.LifecycleState} state + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement + * @instance + */ + ControlPlaneManagement.prototype.state = 0; + + /** + * ControlPlaneManagement implementation. + * @member {google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement.Implementation} implementation + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement + * @instance + */ + ControlPlaneManagement.prototype.implementation = 0; + + /** + * Creates a new ControlPlaneManagement instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.MembershipState.IControlPlaneManagement=} [properties] Properties to set + * @returns {google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement} ControlPlaneManagement instance + */ + ControlPlaneManagement.create = function create(properties) { + return new ControlPlaneManagement(properties); + }; + + /** + * Encodes the specified ControlPlaneManagement message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.MembershipState.IControlPlaneManagement} message ControlPlaneManagement message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ControlPlaneManagement.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.details != null && message.details.length) + for (var i = 0; i < message.details.length; ++i) + $root.google.cloud.gkehub.servicemesh.v1beta.StatusDetails.encode(message.details[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.state); + if (message.implementation != null && Object.hasOwnProperty.call(message, "implementation")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.implementation); + return writer; + }; + + /** + * Encodes the specified ControlPlaneManagement message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.MembershipState.IControlPlaneManagement} message ControlPlaneManagement message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ControlPlaneManagement.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ControlPlaneManagement message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement} ControlPlaneManagement + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ControlPlaneManagement.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 2: { + if (!(message.details && message.details.length)) + message.details = []; + message.details.push($root.google.cloud.gkehub.servicemesh.v1beta.StatusDetails.decode(reader, reader.uint32())); + break; + } + case 3: { + message.state = reader.int32(); + break; + } + case 4: { + message.implementation = reader.int32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ControlPlaneManagement message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement} ControlPlaneManagement + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ControlPlaneManagement.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ControlPlaneManagement message. + * @function verify + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ControlPlaneManagement.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.details != null && message.hasOwnProperty("details")) { + if (!Array.isArray(message.details)) + return "details: array expected"; + for (var i = 0; i < message.details.length; ++i) { + var error = $root.google.cloud.gkehub.servicemesh.v1beta.StatusDetails.verify(message.details[i]); + if (error) + return "details." + error; + } + } + if (message.state != null && message.hasOwnProperty("state")) + switch (message.state) { + default: + return "state: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + break; + } + if (message.implementation != null && message.hasOwnProperty("implementation")) + switch (message.implementation) { + default: + return "implementation: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + return null; + }; + + /** + * Creates a ControlPlaneManagement message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement} ControlPlaneManagement + */ + ControlPlaneManagement.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement) + return object; + var message = new $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement(); + if (object.details) { + if (!Array.isArray(object.details)) + throw TypeError(".google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement.details: array expected"); + message.details = []; + for (var i = 0; i < object.details.length; ++i) { + if (typeof object.details[i] !== "object") + throw TypeError(".google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement.details: object expected"); + message.details[i] = $root.google.cloud.gkehub.servicemesh.v1beta.StatusDetails.fromObject(object.details[i]); + } + } + switch (object.state) { + default: + if (typeof object.state === "number") { + message.state = object.state; + break; + } + break; + case "LIFECYCLE_STATE_UNSPECIFIED": + case 0: + message.state = 0; + break; + case "DISABLED": + case 1: + message.state = 1; + break; + case "FAILED_PRECONDITION": + case 2: + message.state = 2; + break; + case "PROVISIONING": + case 3: + message.state = 3; + break; + case "ACTIVE": + case 4: + message.state = 4; + break; + case "STALLED": + case 5: + message.state = 5; + break; + case "NEEDS_ATTENTION": + case 6: + message.state = 6; + break; + case "DEGRADED": + case 7: + message.state = 7; + break; + } + switch (object.implementation) { + default: + if (typeof object.implementation === "number") { + message.implementation = object.implementation; + break; + } + break; + case "IMPLEMENTATION_UNSPECIFIED": + case 0: + message.implementation = 0; + break; + case "ISTIOD": + case 1: + message.implementation = 1; + break; + case "TRAFFIC_DIRECTOR": + case 2: + message.implementation = 2; + break; + case "UPDATING": + case 3: + message.implementation = 3; + break; + } + return message; + }; + + /** + * Creates a plain object from a ControlPlaneManagement message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement} message ControlPlaneManagement + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ControlPlaneManagement.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.details = []; + if (options.defaults) { + object.state = options.enums === String ? "LIFECYCLE_STATE_UNSPECIFIED" : 0; + object.implementation = options.enums === String ? "IMPLEMENTATION_UNSPECIFIED" : 0; + } + if (message.details && message.details.length) { + object.details = []; + for (var j = 0; j < message.details.length; ++j) + object.details[j] = $root.google.cloud.gkehub.servicemesh.v1beta.StatusDetails.toObject(message.details[j], options); + } + if (message.state != null && message.hasOwnProperty("state")) + object.state = options.enums === String ? $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.LifecycleState[message.state] === undefined ? message.state : $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.LifecycleState[message.state] : message.state; + if (message.implementation != null && message.hasOwnProperty("implementation")) + object.implementation = options.enums === String ? $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement.Implementation[message.implementation] === undefined ? message.implementation : $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement.Implementation[message.implementation] : message.implementation; + return object; + }; + + /** + * Converts this ControlPlaneManagement to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement + * @instance + * @returns {Object.} JSON object + */ + ControlPlaneManagement.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for ControlPlaneManagement + * @function getTypeUrl + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ControlPlaneManagement.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement"; + }; + + /** + * Implementation enum. + * @name google.cloud.gkehub.servicemesh.v1beta.MembershipState.ControlPlaneManagement.Implementation + * @enum {number} + * @property {number} IMPLEMENTATION_UNSPECIFIED=0 IMPLEMENTATION_UNSPECIFIED value + * @property {number} ISTIOD=1 ISTIOD value + * @property {number} TRAFFIC_DIRECTOR=2 TRAFFIC_DIRECTOR value + * @property {number} UPDATING=3 UPDATING value + */ + ControlPlaneManagement.Implementation = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "IMPLEMENTATION_UNSPECIFIED"] = 0; + values[valuesById[1] = "ISTIOD"] = 1; + values[valuesById[2] = "TRAFFIC_DIRECTOR"] = 2; + values[valuesById[3] = "UPDATING"] = 3; + return values; + })(); + + return ControlPlaneManagement; + })(); + + MembershipState.DataPlaneManagement = (function() { + + /** + * Properties of a DataPlaneManagement. + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState + * @interface IDataPlaneManagement + * @property {google.cloud.gkehub.servicemesh.v1beta.MembershipState.LifecycleState|null} [state] DataPlaneManagement state + * @property {Array.|null} [details] DataPlaneManagement details + */ + + /** + * Constructs a new DataPlaneManagement. + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState + * @classdesc Represents a DataPlaneManagement. + * @implements IDataPlaneManagement + * @constructor + * @param {google.cloud.gkehub.servicemesh.v1beta.MembershipState.IDataPlaneManagement=} [properties] Properties to set + */ + function DataPlaneManagement(properties) { + this.details = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * DataPlaneManagement state. + * @member {google.cloud.gkehub.servicemesh.v1beta.MembershipState.LifecycleState} state + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement + * @instance + */ + DataPlaneManagement.prototype.state = 0; + + /** + * DataPlaneManagement details. + * @member {Array.} details + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement + * @instance + */ + DataPlaneManagement.prototype.details = $util.emptyArray; + + /** + * Creates a new DataPlaneManagement instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.MembershipState.IDataPlaneManagement=} [properties] Properties to set + * @returns {google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement} DataPlaneManagement instance + */ + DataPlaneManagement.create = function create(properties) { + return new DataPlaneManagement(properties); + }; + + /** + * Encodes the specified DataPlaneManagement message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.MembershipState.IDataPlaneManagement} message DataPlaneManagement message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DataPlaneManagement.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.state); + if (message.details != null && message.details.length) + for (var i = 0; i < message.details.length; ++i) + $root.google.cloud.gkehub.servicemesh.v1beta.StatusDetails.encode(message.details[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified DataPlaneManagement message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.MembershipState.IDataPlaneManagement} message DataPlaneManagement message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DataPlaneManagement.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a DataPlaneManagement message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement} DataPlaneManagement + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DataPlaneManagement.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.state = reader.int32(); + break; + } + case 2: { + if (!(message.details && message.details.length)) + message.details = []; + message.details.push($root.google.cloud.gkehub.servicemesh.v1beta.StatusDetails.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a DataPlaneManagement message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement} DataPlaneManagement + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DataPlaneManagement.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a DataPlaneManagement message. + * @function verify + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + DataPlaneManagement.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.state != null && message.hasOwnProperty("state")) + switch (message.state) { + default: + return "state: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + break; + } + if (message.details != null && message.hasOwnProperty("details")) { + if (!Array.isArray(message.details)) + return "details: array expected"; + for (var i = 0; i < message.details.length; ++i) { + var error = $root.google.cloud.gkehub.servicemesh.v1beta.StatusDetails.verify(message.details[i]); + if (error) + return "details." + error; + } + } + return null; + }; + + /** + * Creates a DataPlaneManagement message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement} DataPlaneManagement + */ + DataPlaneManagement.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement) + return object; + var message = new $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement(); + switch (object.state) { + default: + if (typeof object.state === "number") { + message.state = object.state; + break; + } + break; + case "LIFECYCLE_STATE_UNSPECIFIED": + case 0: + message.state = 0; + break; + case "DISABLED": + case 1: + message.state = 1; + break; + case "FAILED_PRECONDITION": + case 2: + message.state = 2; + break; + case "PROVISIONING": + case 3: + message.state = 3; + break; + case "ACTIVE": + case 4: + message.state = 4; + break; + case "STALLED": + case 5: + message.state = 5; + break; + case "NEEDS_ATTENTION": + case 6: + message.state = 6; + break; + case "DEGRADED": + case 7: + message.state = 7; + break; + } + if (object.details) { + if (!Array.isArray(object.details)) + throw TypeError(".google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement.details: array expected"); + message.details = []; + for (var i = 0; i < object.details.length; ++i) { + if (typeof object.details[i] !== "object") + throw TypeError(".google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement.details: object expected"); + message.details[i] = $root.google.cloud.gkehub.servicemesh.v1beta.StatusDetails.fromObject(object.details[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a DataPlaneManagement message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement} message DataPlaneManagement + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + DataPlaneManagement.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.details = []; + if (options.defaults) + object.state = options.enums === String ? "LIFECYCLE_STATE_UNSPECIFIED" : 0; + if (message.state != null && message.hasOwnProperty("state")) + object.state = options.enums === String ? $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.LifecycleState[message.state] === undefined ? message.state : $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.LifecycleState[message.state] : message.state; + if (message.details && message.details.length) { + object.details = []; + for (var j = 0; j < message.details.length; ++j) + object.details[j] = $root.google.cloud.gkehub.servicemesh.v1beta.StatusDetails.toObject(message.details[j], options); + } + return object; + }; + + /** + * Converts this DataPlaneManagement to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement + * @instance + * @returns {Object.} JSON object + */ + DataPlaneManagement.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for DataPlaneManagement + * @function getTypeUrl + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + DataPlaneManagement.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.servicemesh.v1beta.MembershipState.DataPlaneManagement"; + }; + + return DataPlaneManagement; + })(); + + MembershipState.Condition = (function() { + + /** + * Properties of a Condition. + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState + * @interface ICondition + * @property {google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.Code|null} [code] Condition code + * @property {string|null} [documentationLink] Condition documentationLink + * @property {string|null} [details] Condition details + * @property {google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.Severity|null} [severity] Condition severity + */ + + /** + * Constructs a new Condition. + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState + * @classdesc Represents a Condition. + * @implements ICondition + * @constructor + * @param {google.cloud.gkehub.servicemesh.v1beta.MembershipState.ICondition=} [properties] Properties to set + */ + function Condition(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * Condition code. + * @member {google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.Code} code + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition + * @instance + */ + Condition.prototype.code = 0; + + /** + * Condition documentationLink. + * @member {string} documentationLink + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition + * @instance + */ + Condition.prototype.documentationLink = ""; + + /** + * Condition details. + * @member {string} details + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition + * @instance + */ + Condition.prototype.details = ""; + + /** + * Condition severity. + * @member {google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.Severity} severity + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition + * @instance + */ + Condition.prototype.severity = 0; + + /** + * Creates a new Condition instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.MembershipState.ICondition=} [properties] Properties to set + * @returns {google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition} Condition instance + */ + Condition.create = function create(properties) { + return new Condition(properties); + }; + + /** + * Encodes the specified Condition message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.MembershipState.ICondition} message Condition message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Condition.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.code != null && Object.hasOwnProperty.call(message, "code")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.code); + if (message.documentationLink != null && Object.hasOwnProperty.call(message, "documentationLink")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.documentationLink); + if (message.details != null && Object.hasOwnProperty.call(message, "details")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.details); + if (message.severity != null && Object.hasOwnProperty.call(message, "severity")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.severity); + return writer; + }; + + /** + * Encodes the specified Condition message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.MembershipState.ICondition} message Condition message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Condition.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Condition message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition} Condition + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Condition.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.code = reader.int32(); + break; + } + case 2: { + message.documentationLink = reader.string(); + break; + } + case 3: { + message.details = reader.string(); + break; + } + case 4: { + message.severity = reader.int32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Condition message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition} Condition + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Condition.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Condition message. + * @function verify + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Condition.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.code != null && message.hasOwnProperty("code")) + switch (message.code) { + default: + return "code: enum value expected"; + case 0: + case 100: + case 201: + case 202: + case 203: + case 204: + case 205: + case 301: + case 302: + case 401: + case 402: + case 403: + case 404: + case 405: + case 406: + case 407: + case 408: + case 409: + case 410: + case 411: + case 412: + case 413: + case 414: + case 415: + case 416: + case 417: + case 418: + break; + } + if (message.documentationLink != null && message.hasOwnProperty("documentationLink")) + if (!$util.isString(message.documentationLink)) + return "documentationLink: string expected"; + if (message.details != null && message.hasOwnProperty("details")) + if (!$util.isString(message.details)) + return "details: string expected"; + if (message.severity != null && message.hasOwnProperty("severity")) + switch (message.severity) { + default: + return "severity: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + return null; + }; + + /** + * Creates a Condition message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition} Condition + */ + Condition.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition) + return object; + var message = new $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition(); + switch (object.code) { + default: + if (typeof object.code === "number") { + message.code = object.code; + break; + } + break; + case "CODE_UNSPECIFIED": + case 0: + message.code = 0; + break; + case "MESH_IAM_PERMISSION_DENIED": + case 100: + message.code = 100; + break; + case "CNI_CONFIG_UNSUPPORTED": + case 201: + message.code = 201; + break; + case "GKE_SANDBOX_UNSUPPORTED": + case 202: + message.code = 202; + break; + case "NODEPOOL_WORKLOAD_IDENTITY_FEDERATION_REQUIRED": + case 203: + message.code = 203; + break; + case "CNI_INSTALLATION_FAILED": + case 204: + message.code = 204; + break; + case "CNI_POD_UNSCHEDULABLE": + case 205: + message.code = 205; + break; + case "UNSUPPORTED_MULTIPLE_CONTROL_PLANES": + case 301: + message.code = 301; + break; + case "VPCSC_GA_SUPPORTED": + case 302: + message.code = 302; + break; + case "CONFIG_APPLY_INTERNAL_ERROR": + case 401: + message.code = 401; + break; + case "CONFIG_VALIDATION_ERROR": + case 402: + message.code = 402; + break; + case "CONFIG_VALIDATION_WARNING": + case 403: + message.code = 403; + break; + case "QUOTA_EXCEEDED_BACKEND_SERVICES": + case 404: + message.code = 404; + break; + case "QUOTA_EXCEEDED_HEALTH_CHECKS": + case 405: + message.code = 405; + break; + case "QUOTA_EXCEEDED_HTTP_ROUTES": + case 406: + message.code = 406; + break; + case "QUOTA_EXCEEDED_TCP_ROUTES": + case 407: + message.code = 407; + break; + case "QUOTA_EXCEEDED_TLS_ROUTES": + case 408: + message.code = 408; + break; + case "QUOTA_EXCEEDED_TRAFFIC_POLICIES": + case 409: + message.code = 409; + break; + case "QUOTA_EXCEEDED_ENDPOINT_POLICIES": + case 410: + message.code = 410; + break; + case "QUOTA_EXCEEDED_GATEWAYS": + case 411: + message.code = 411; + break; + case "QUOTA_EXCEEDED_MESHES": + case 412: + message.code = 412; + break; + case "QUOTA_EXCEEDED_SERVER_TLS_POLICIES": + case 413: + message.code = 413; + break; + case "QUOTA_EXCEEDED_CLIENT_TLS_POLICIES": + case 414: + message.code = 414; + break; + case "QUOTA_EXCEEDED_SERVICE_LB_POLICIES": + case 415: + message.code = 415; + break; + case "QUOTA_EXCEEDED_HTTP_FILTERS": + case 416: + message.code = 416; + break; + case "QUOTA_EXCEEDED_TCP_FILTERS": + case 417: + message.code = 417; + break; + case "QUOTA_EXCEEDED_NETWORK_ENDPOINT_GROUPS": + case 418: + message.code = 418; + break; + } + if (object.documentationLink != null) + message.documentationLink = String(object.documentationLink); + if (object.details != null) + message.details = String(object.details); + switch (object.severity) { + default: + if (typeof object.severity === "number") { + message.severity = object.severity; + break; + } + break; + case "SEVERITY_UNSPECIFIED": + case 0: + message.severity = 0; + break; + case "ERROR": + case 1: + message.severity = 1; + break; + case "WARNING": + case 2: + message.severity = 2; + break; + case "INFO": + case 3: + message.severity = 3; + break; + } + return message; + }; + + /** + * Creates a plain object from a Condition message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition} message Condition + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Condition.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.code = options.enums === String ? "CODE_UNSPECIFIED" : 0; + object.documentationLink = ""; + object.details = ""; + object.severity = options.enums === String ? "SEVERITY_UNSPECIFIED" : 0; + } + if (message.code != null && message.hasOwnProperty("code")) + object.code = options.enums === String ? $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.Code[message.code] === undefined ? message.code : $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.Code[message.code] : message.code; + if (message.documentationLink != null && message.hasOwnProperty("documentationLink")) + object.documentationLink = message.documentationLink; + if (message.details != null && message.hasOwnProperty("details")) + object.details = message.details; + if (message.severity != null && message.hasOwnProperty("severity")) + object.severity = options.enums === String ? $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.Severity[message.severity] === undefined ? message.severity : $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.Severity[message.severity] : message.severity; + return object; + }; + + /** + * Converts this Condition to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition + * @instance + * @returns {Object.} JSON object + */ + Condition.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for Condition + * @function getTypeUrl + * @memberof google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Condition.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition"; + }; + + /** + * Code enum. + * @name google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.Code + * @enum {number} + * @property {number} CODE_UNSPECIFIED=0 CODE_UNSPECIFIED value + * @property {number} MESH_IAM_PERMISSION_DENIED=100 MESH_IAM_PERMISSION_DENIED value + * @property {number} CNI_CONFIG_UNSUPPORTED=201 CNI_CONFIG_UNSUPPORTED value + * @property {number} GKE_SANDBOX_UNSUPPORTED=202 GKE_SANDBOX_UNSUPPORTED value + * @property {number} NODEPOOL_WORKLOAD_IDENTITY_FEDERATION_REQUIRED=203 NODEPOOL_WORKLOAD_IDENTITY_FEDERATION_REQUIRED value + * @property {number} CNI_INSTALLATION_FAILED=204 CNI_INSTALLATION_FAILED value + * @property {number} CNI_POD_UNSCHEDULABLE=205 CNI_POD_UNSCHEDULABLE value + * @property {number} UNSUPPORTED_MULTIPLE_CONTROL_PLANES=301 UNSUPPORTED_MULTIPLE_CONTROL_PLANES value + * @property {number} VPCSC_GA_SUPPORTED=302 VPCSC_GA_SUPPORTED value + * @property {number} CONFIG_APPLY_INTERNAL_ERROR=401 CONFIG_APPLY_INTERNAL_ERROR value + * @property {number} CONFIG_VALIDATION_ERROR=402 CONFIG_VALIDATION_ERROR value + * @property {number} CONFIG_VALIDATION_WARNING=403 CONFIG_VALIDATION_WARNING value + * @property {number} QUOTA_EXCEEDED_BACKEND_SERVICES=404 QUOTA_EXCEEDED_BACKEND_SERVICES value + * @property {number} QUOTA_EXCEEDED_HEALTH_CHECKS=405 QUOTA_EXCEEDED_HEALTH_CHECKS value + * @property {number} QUOTA_EXCEEDED_HTTP_ROUTES=406 QUOTA_EXCEEDED_HTTP_ROUTES value + * @property {number} QUOTA_EXCEEDED_TCP_ROUTES=407 QUOTA_EXCEEDED_TCP_ROUTES value + * @property {number} QUOTA_EXCEEDED_TLS_ROUTES=408 QUOTA_EXCEEDED_TLS_ROUTES value + * @property {number} QUOTA_EXCEEDED_TRAFFIC_POLICIES=409 QUOTA_EXCEEDED_TRAFFIC_POLICIES value + * @property {number} QUOTA_EXCEEDED_ENDPOINT_POLICIES=410 QUOTA_EXCEEDED_ENDPOINT_POLICIES value + * @property {number} QUOTA_EXCEEDED_GATEWAYS=411 QUOTA_EXCEEDED_GATEWAYS value + * @property {number} QUOTA_EXCEEDED_MESHES=412 QUOTA_EXCEEDED_MESHES value + * @property {number} QUOTA_EXCEEDED_SERVER_TLS_POLICIES=413 QUOTA_EXCEEDED_SERVER_TLS_POLICIES value + * @property {number} QUOTA_EXCEEDED_CLIENT_TLS_POLICIES=414 QUOTA_EXCEEDED_CLIENT_TLS_POLICIES value + * @property {number} QUOTA_EXCEEDED_SERVICE_LB_POLICIES=415 QUOTA_EXCEEDED_SERVICE_LB_POLICIES value + * @property {number} QUOTA_EXCEEDED_HTTP_FILTERS=416 QUOTA_EXCEEDED_HTTP_FILTERS value + * @property {number} QUOTA_EXCEEDED_TCP_FILTERS=417 QUOTA_EXCEEDED_TCP_FILTERS value + * @property {number} QUOTA_EXCEEDED_NETWORK_ENDPOINT_GROUPS=418 QUOTA_EXCEEDED_NETWORK_ENDPOINT_GROUPS value + */ + Condition.Code = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "CODE_UNSPECIFIED"] = 0; + values[valuesById[100] = "MESH_IAM_PERMISSION_DENIED"] = 100; + values[valuesById[201] = "CNI_CONFIG_UNSUPPORTED"] = 201; + values[valuesById[202] = "GKE_SANDBOX_UNSUPPORTED"] = 202; + values[valuesById[203] = "NODEPOOL_WORKLOAD_IDENTITY_FEDERATION_REQUIRED"] = 203; + values[valuesById[204] = "CNI_INSTALLATION_FAILED"] = 204; + values[valuesById[205] = "CNI_POD_UNSCHEDULABLE"] = 205; + values[valuesById[301] = "UNSUPPORTED_MULTIPLE_CONTROL_PLANES"] = 301; + values[valuesById[302] = "VPCSC_GA_SUPPORTED"] = 302; + values[valuesById[401] = "CONFIG_APPLY_INTERNAL_ERROR"] = 401; + values[valuesById[402] = "CONFIG_VALIDATION_ERROR"] = 402; + values[valuesById[403] = "CONFIG_VALIDATION_WARNING"] = 403; + values[valuesById[404] = "QUOTA_EXCEEDED_BACKEND_SERVICES"] = 404; + values[valuesById[405] = "QUOTA_EXCEEDED_HEALTH_CHECKS"] = 405; + values[valuesById[406] = "QUOTA_EXCEEDED_HTTP_ROUTES"] = 406; + values[valuesById[407] = "QUOTA_EXCEEDED_TCP_ROUTES"] = 407; + values[valuesById[408] = "QUOTA_EXCEEDED_TLS_ROUTES"] = 408; + values[valuesById[409] = "QUOTA_EXCEEDED_TRAFFIC_POLICIES"] = 409; + values[valuesById[410] = "QUOTA_EXCEEDED_ENDPOINT_POLICIES"] = 410; + values[valuesById[411] = "QUOTA_EXCEEDED_GATEWAYS"] = 411; + values[valuesById[412] = "QUOTA_EXCEEDED_MESHES"] = 412; + values[valuesById[413] = "QUOTA_EXCEEDED_SERVER_TLS_POLICIES"] = 413; + values[valuesById[414] = "QUOTA_EXCEEDED_CLIENT_TLS_POLICIES"] = 414; + values[valuesById[415] = "QUOTA_EXCEEDED_SERVICE_LB_POLICIES"] = 415; + values[valuesById[416] = "QUOTA_EXCEEDED_HTTP_FILTERS"] = 416; + values[valuesById[417] = "QUOTA_EXCEEDED_TCP_FILTERS"] = 417; + values[valuesById[418] = "QUOTA_EXCEEDED_NETWORK_ENDPOINT_GROUPS"] = 418; + return values; + })(); + + /** + * Severity enum. + * @name google.cloud.gkehub.servicemesh.v1beta.MembershipState.Condition.Severity + * @enum {number} + * @property {number} SEVERITY_UNSPECIFIED=0 SEVERITY_UNSPECIFIED value + * @property {number} ERROR=1 ERROR value + * @property {number} WARNING=2 WARNING value + * @property {number} INFO=3 INFO value + */ + Condition.Severity = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "SEVERITY_UNSPECIFIED"] = 0; + values[valuesById[1] = "ERROR"] = 1; + values[valuesById[2] = "WARNING"] = 2; + values[valuesById[3] = "INFO"] = 3; + return values; + })(); + + return Condition; + })(); + + /** + * LifecycleState enum. + * @name google.cloud.gkehub.servicemesh.v1beta.MembershipState.LifecycleState + * @enum {number} + * @property {number} LIFECYCLE_STATE_UNSPECIFIED=0 LIFECYCLE_STATE_UNSPECIFIED value + * @property {number} DISABLED=1 DISABLED value + * @property {number} FAILED_PRECONDITION=2 FAILED_PRECONDITION value + * @property {number} PROVISIONING=3 PROVISIONING value + * @property {number} ACTIVE=4 ACTIVE value + * @property {number} STALLED=5 STALLED value + * @property {number} NEEDS_ATTENTION=6 NEEDS_ATTENTION value + * @property {number} DEGRADED=7 DEGRADED value + */ + MembershipState.LifecycleState = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "LIFECYCLE_STATE_UNSPECIFIED"] = 0; + values[valuesById[1] = "DISABLED"] = 1; + values[valuesById[2] = "FAILED_PRECONDITION"] = 2; + values[valuesById[3] = "PROVISIONING"] = 3; + values[valuesById[4] = "ACTIVE"] = 4; + values[valuesById[5] = "STALLED"] = 5; + values[valuesById[6] = "NEEDS_ATTENTION"] = 6; + values[valuesById[7] = "DEGRADED"] = 7; + return values; + })(); + + return MembershipState; + })(); + + v1beta.StatusDetails = (function() { + + /** + * Properties of a StatusDetails. + * @memberof google.cloud.gkehub.servicemesh.v1beta + * @interface IStatusDetails + * @property {string|null} [code] StatusDetails code + * @property {string|null} [details] StatusDetails details + */ + + /** + * Constructs a new StatusDetails. + * @memberof google.cloud.gkehub.servicemesh.v1beta + * @classdesc Represents a StatusDetails. + * @implements IStatusDetails + * @constructor + * @param {google.cloud.gkehub.servicemesh.v1beta.IStatusDetails=} [properties] Properties to set + */ + function StatusDetails(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * StatusDetails code. + * @member {string} code + * @memberof google.cloud.gkehub.servicemesh.v1beta.StatusDetails + * @instance + */ + StatusDetails.prototype.code = ""; + + /** + * StatusDetails details. + * @member {string} details + * @memberof google.cloud.gkehub.servicemesh.v1beta.StatusDetails + * @instance + */ + StatusDetails.prototype.details = ""; + + /** + * Creates a new StatusDetails instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.servicemesh.v1beta.StatusDetails + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.IStatusDetails=} [properties] Properties to set + * @returns {google.cloud.gkehub.servicemesh.v1beta.StatusDetails} StatusDetails instance + */ + StatusDetails.create = function create(properties) { + return new StatusDetails(properties); + }; + + /** + * Encodes the specified StatusDetails message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.StatusDetails.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.servicemesh.v1beta.StatusDetails + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.IStatusDetails} message StatusDetails message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + StatusDetails.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.code != null && Object.hasOwnProperty.call(message, "code")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.code); + if (message.details != null && Object.hasOwnProperty.call(message, "details")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.details); + return writer; + }; + + /** + * Encodes the specified StatusDetails message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1beta.StatusDetails.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1beta.StatusDetails + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.IStatusDetails} message StatusDetails message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + StatusDetails.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a StatusDetails message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.servicemesh.v1beta.StatusDetails + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.servicemesh.v1beta.StatusDetails} StatusDetails + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + StatusDetails.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.servicemesh.v1beta.StatusDetails(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.code = reader.string(); + break; + } + case 2: { + message.details = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a StatusDetails message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1beta.StatusDetails + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.servicemesh.v1beta.StatusDetails} StatusDetails + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + StatusDetails.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a StatusDetails message. + * @function verify + * @memberof google.cloud.gkehub.servicemesh.v1beta.StatusDetails + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + StatusDetails.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.code != null && message.hasOwnProperty("code")) + if (!$util.isString(message.code)) + return "code: string expected"; + if (message.details != null && message.hasOwnProperty("details")) + if (!$util.isString(message.details)) + return "details: string expected"; + return null; + }; + + /** + * Creates a StatusDetails message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.servicemesh.v1beta.StatusDetails + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.servicemesh.v1beta.StatusDetails} StatusDetails + */ + StatusDetails.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.servicemesh.v1beta.StatusDetails) + return object; + var message = new $root.google.cloud.gkehub.servicemesh.v1beta.StatusDetails(); + if (object.code != null) + message.code = String(object.code); + if (object.details != null) + message.details = String(object.details); + return message; + }; + + /** + * Creates a plain object from a StatusDetails message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.servicemesh.v1beta.StatusDetails + * @static + * @param {google.cloud.gkehub.servicemesh.v1beta.StatusDetails} message StatusDetails + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + StatusDetails.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.code = ""; + object.details = ""; + } + if (message.code != null && message.hasOwnProperty("code")) + object.code = message.code; + if (message.details != null && message.hasOwnProperty("details")) + object.details = message.details; + return object; + }; + + /** + * Converts this StatusDetails to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.servicemesh.v1beta.StatusDetails + * @instance + * @returns {Object.} JSON object + */ + StatusDetails.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for StatusDetails + * @function getTypeUrl + * @memberof google.cloud.gkehub.servicemesh.v1beta.StatusDetails + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + StatusDetails.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.servicemesh.v1beta.StatusDetails"; + }; + + return StatusDetails; + })(); + + return v1beta; + })(); + return servicemesh; })(); @@ -59942,6 +61989,7 @@ * @memberof google.cloud.gkehub.v1beta * @interface IMembershipFeatureSpec * @property {google.cloud.gkehub.configmanagement.v1beta.IMembershipSpec|null} [configmanagement] MembershipFeatureSpec configmanagement + * @property {google.cloud.gkehub.servicemesh.v1beta.IMembershipSpec|null} [mesh] MembershipFeatureSpec mesh */ /** @@ -59967,17 +62015,25 @@ */ MembershipFeatureSpec.prototype.configmanagement = null; + /** + * MembershipFeatureSpec mesh. + * @member {google.cloud.gkehub.servicemesh.v1beta.IMembershipSpec|null|undefined} mesh + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureSpec + * @instance + */ + MembershipFeatureSpec.prototype.mesh = null; + // OneOf field names bound to virtual getters and setters var $oneOfFields; /** * MembershipFeatureSpec featureSpec. - * @member {"configmanagement"|undefined} featureSpec + * @member {"configmanagement"|"mesh"|undefined} featureSpec * @memberof google.cloud.gkehub.v1beta.MembershipFeatureSpec * @instance */ Object.defineProperty(MembershipFeatureSpec.prototype, "featureSpec", { - get: $util.oneOfGetter($oneOfFields = ["configmanagement"]), + get: $util.oneOfGetter($oneOfFields = ["configmanagement", "mesh"]), set: $util.oneOfSetter($oneOfFields) }); @@ -60007,6 +62063,8 @@ writer = $Writer.create(); if (message.configmanagement != null && Object.hasOwnProperty.call(message, "configmanagement")) $root.google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.encode(message.configmanagement, writer.uint32(/* id 106, wireType 2 =*/850).fork()).ldelim(); + if (message.mesh != null && Object.hasOwnProperty.call(message, "mesh")) + $root.google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.encode(message.mesh, writer.uint32(/* id 116, wireType 2 =*/930).fork()).ldelim(); return writer; }; @@ -60045,6 +62103,10 @@ message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.decode(reader, reader.uint32()); break; } + case 116: { + message.mesh = $root.google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -60089,6 +62151,16 @@ return "configmanagement." + error; } } + if (message.mesh != null && message.hasOwnProperty("mesh")) { + if (properties.featureSpec === 1) + return "featureSpec: multiple values"; + properties.featureSpec = 1; + { + var error = $root.google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.verify(message.mesh); + if (error) + return "mesh." + error; + } + } return null; }; @@ -60109,6 +62181,11 @@ throw TypeError(".google.cloud.gkehub.v1beta.MembershipFeatureSpec.configmanagement: object expected"); message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.fromObject(object.configmanagement); } + if (object.mesh != null) { + if (typeof object.mesh !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.MembershipFeatureSpec.mesh: object expected"); + message.mesh = $root.google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.fromObject(object.mesh); + } return message; }; @@ -60130,6 +62207,11 @@ if (options.oneofs) object.featureSpec = "configmanagement"; } + if (message.mesh != null && message.hasOwnProperty("mesh")) { + object.mesh = $root.google.cloud.gkehub.servicemesh.v1beta.MembershipSpec.toObject(message.mesh, options); + if (options.oneofs) + object.featureSpec = "mesh"; + } return object; }; @@ -60168,6 +62250,7 @@ * Properties of a MembershipFeatureState. * @memberof google.cloud.gkehub.v1beta * @interface IMembershipFeatureState + * @property {google.cloud.gkehub.servicemesh.v1beta.IMembershipState|null} [servicemesh] MembershipFeatureState servicemesh * @property {google.cloud.gkehub.metering.v1beta.IMembershipState|null} [metering] MembershipFeatureState metering * @property {google.cloud.gkehub.configmanagement.v1beta.IMembershipState|null} [configmanagement] MembershipFeatureState configmanagement * @property {google.cloud.gkehub.v1beta.IFeatureState|null} [state] MembershipFeatureState state @@ -60188,6 +62271,14 @@ this[keys[i]] = properties[keys[i]]; } + /** + * MembershipFeatureState servicemesh. + * @member {google.cloud.gkehub.servicemesh.v1beta.IMembershipState|null|undefined} servicemesh + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureState + * @instance + */ + MembershipFeatureState.prototype.servicemesh = null; + /** * MembershipFeatureState metering. * @member {google.cloud.gkehub.metering.v1beta.IMembershipState|null|undefined} metering @@ -60217,12 +62308,12 @@ /** * MembershipFeatureState featureState. - * @member {"metering"|"configmanagement"|undefined} featureState + * @member {"servicemesh"|"metering"|"configmanagement"|undefined} featureState * @memberof google.cloud.gkehub.v1beta.MembershipFeatureState * @instance */ Object.defineProperty(MembershipFeatureState.prototype, "featureState", { - get: $util.oneOfGetter($oneOfFields = ["metering", "configmanagement"]), + get: $util.oneOfGetter($oneOfFields = ["servicemesh", "metering", "configmanagement"]), set: $util.oneOfSetter($oneOfFields) }); @@ -60252,6 +62343,8 @@ writer = $Writer.create(); if (message.state != null && Object.hasOwnProperty.call(message, "state")) $root.google.cloud.gkehub.v1beta.FeatureState.encode(message.state, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.servicemesh != null && Object.hasOwnProperty.call(message, "servicemesh")) + $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.encode(message.servicemesh, writer.uint32(/* id 100, wireType 2 =*/802).fork()).ldelim(); if (message.metering != null && Object.hasOwnProperty.call(message, "metering")) $root.google.cloud.gkehub.metering.v1beta.MembershipState.encode(message.metering, writer.uint32(/* id 104, wireType 2 =*/834).fork()).ldelim(); if (message.configmanagement != null && Object.hasOwnProperty.call(message, "configmanagement")) @@ -60290,6 +62383,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { + case 100: { + message.servicemesh = $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.decode(reader, reader.uint32()); + break; + } case 104: { message.metering = $root.google.cloud.gkehub.metering.v1beta.MembershipState.decode(reader, reader.uint32()); break; @@ -60338,7 +62435,17 @@ if (typeof message !== "object" || message === null) return "object expected"; var properties = {}; + if (message.servicemesh != null && message.hasOwnProperty("servicemesh")) { + properties.featureState = 1; + { + var error = $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.verify(message.servicemesh); + if (error) + return "servicemesh." + error; + } + } if (message.metering != null && message.hasOwnProperty("metering")) { + if (properties.featureState === 1) + return "featureState: multiple values"; properties.featureState = 1; { var error = $root.google.cloud.gkehub.metering.v1beta.MembershipState.verify(message.metering); @@ -60376,6 +62483,11 @@ if (object instanceof $root.google.cloud.gkehub.v1beta.MembershipFeatureState) return object; var message = new $root.google.cloud.gkehub.v1beta.MembershipFeatureState(); + if (object.servicemesh != null) { + if (typeof object.servicemesh !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.MembershipFeatureState.servicemesh: object expected"); + message.servicemesh = $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.fromObject(object.servicemesh); + } if (object.metering != null) { if (typeof object.metering !== "object") throw TypeError(".google.cloud.gkehub.v1beta.MembershipFeatureState.metering: object expected"); @@ -60411,6 +62523,11 @@ object.state = null; if (message.state != null && message.hasOwnProperty("state")) object.state = $root.google.cloud.gkehub.v1beta.FeatureState.toObject(message.state, options); + if (message.servicemesh != null && message.hasOwnProperty("servicemesh")) { + object.servicemesh = $root.google.cloud.gkehub.servicemesh.v1beta.MembershipState.toObject(message.servicemesh, options); + if (options.oneofs) + object.featureState = "servicemesh"; + } if (message.metering != null && message.hasOwnProperty("metering")) { object.metering = $root.google.cloud.gkehub.metering.v1beta.MembershipState.toObject(message.metering, options); if (options.oneofs) diff --git a/packages/google-cloud-gkehub/protos/protos.json b/packages/google-cloud-gkehub/protos/protos.json index d367356dfdf..734abdb3d6f 100644 --- a/packages/google-cloud-gkehub/protos/protos.json +++ b/packages/google-cloud-gkehub/protos/protos.json @@ -4841,6 +4841,206 @@ } } } + }, + "v1beta": { + "options": { + "csharp_namespace": "Google.Cloud.GkeHub.ServiceMesh.V1Beta", + "go_package": "cloud.google.com/go/gkehub/servicemesh/apiv1beta/servicemeshpb;servicemeshpb", + "java_multiple_files": true, + "java_outer_classname": "ServiceMeshProto", + "java_package": "com.google.cloud.gkehub.servicemesh.v1beta", + "php_namespace": "Google\\Cloud\\GkeHub\\ServiceMesh\\V1beta", + "ruby_package": "Google::Cloud::GkeHub::ServiceMesh::V1beta" + }, + "nested": { + "MembershipSpec": { + "fields": { + "controlPlane": { + "type": "ControlPlaneManagement", + "id": 1, + "options": { + "deprecated": true + } + }, + "management": { + "type": "Management", + "id": 4 + } + }, + "nested": { + "ControlPlaneManagement": { + "values": { + "CONTROL_PLANE_MANAGEMENT_UNSPECIFIED": 0, + "AUTOMATIC": 1, + "MANUAL": 2 + } + }, + "Management": { + "values": { + "MANAGEMENT_UNSPECIFIED": 0, + "MANAGEMENT_AUTOMATIC": 1, + "MANAGEMENT_MANUAL": 2 + } + } + } + }, + "MembershipState": { + "fields": { + "controlPlaneManagement": { + "type": "ControlPlaneManagement", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "dataPlaneManagement": { + "type": "DataPlaneManagement", + "id": 4, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "conditions": { + "rule": "repeated", + "type": "Condition", + "id": 8, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + }, + "nested": { + "ControlPlaneManagement": { + "fields": { + "details": { + "rule": "repeated", + "type": "StatusDetails", + "id": 2 + }, + "state": { + "type": "LifecycleState", + "id": 3 + }, + "implementation": { + "type": "Implementation", + "id": 4, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + }, + "nested": { + "Implementation": { + "values": { + "IMPLEMENTATION_UNSPECIFIED": 0, + "ISTIOD": 1, + "TRAFFIC_DIRECTOR": 2, + "UPDATING": 3 + } + } + } + }, + "DataPlaneManagement": { + "fields": { + "state": { + "type": "LifecycleState", + "id": 1 + }, + "details": { + "rule": "repeated", + "type": "StatusDetails", + "id": 2 + } + } + }, + "Condition": { + "fields": { + "code": { + "type": "Code", + "id": 1 + }, + "documentationLink": { + "type": "string", + "id": 2 + }, + "details": { + "type": "string", + "id": 3 + }, + "severity": { + "type": "Severity", + "id": 4 + } + }, + "nested": { + "Code": { + "values": { + "CODE_UNSPECIFIED": 0, + "MESH_IAM_PERMISSION_DENIED": 100, + "CNI_CONFIG_UNSUPPORTED": 201, + "GKE_SANDBOX_UNSUPPORTED": 202, + "NODEPOOL_WORKLOAD_IDENTITY_FEDERATION_REQUIRED": 203, + "CNI_INSTALLATION_FAILED": 204, + "CNI_POD_UNSCHEDULABLE": 205, + "UNSUPPORTED_MULTIPLE_CONTROL_PLANES": 301, + "VPCSC_GA_SUPPORTED": 302, + "CONFIG_APPLY_INTERNAL_ERROR": 401, + "CONFIG_VALIDATION_ERROR": 402, + "CONFIG_VALIDATION_WARNING": 403, + "QUOTA_EXCEEDED_BACKEND_SERVICES": 404, + "QUOTA_EXCEEDED_HEALTH_CHECKS": 405, + "QUOTA_EXCEEDED_HTTP_ROUTES": 406, + "QUOTA_EXCEEDED_TCP_ROUTES": 407, + "QUOTA_EXCEEDED_TLS_ROUTES": 408, + "QUOTA_EXCEEDED_TRAFFIC_POLICIES": 409, + "QUOTA_EXCEEDED_ENDPOINT_POLICIES": 410, + "QUOTA_EXCEEDED_GATEWAYS": 411, + "QUOTA_EXCEEDED_MESHES": 412, + "QUOTA_EXCEEDED_SERVER_TLS_POLICIES": 413, + "QUOTA_EXCEEDED_CLIENT_TLS_POLICIES": 414, + "QUOTA_EXCEEDED_SERVICE_LB_POLICIES": 415, + "QUOTA_EXCEEDED_HTTP_FILTERS": 416, + "QUOTA_EXCEEDED_TCP_FILTERS": 417, + "QUOTA_EXCEEDED_NETWORK_ENDPOINT_GROUPS": 418 + } + }, + "Severity": { + "values": { + "SEVERITY_UNSPECIFIED": 0, + "ERROR": 1, + "WARNING": 2, + "INFO": 3 + } + } + } + }, + "LifecycleState": { + "values": { + "LIFECYCLE_STATE_UNSPECIFIED": 0, + "DISABLED": 1, + "FAILED_PRECONDITION": 2, + "PROVISIONING": 3, + "ACTIVE": 4, + "STALLED": 5, + "NEEDS_ATTENTION": 6, + "DEGRADED": 7 + } + } + } + }, + "StatusDetails": { + "fields": { + "code": { + "type": "string", + "id": 1 + }, + "details": { + "type": "string", + "id": 2 + } + } + } + } } } }, @@ -5870,7 +6070,8 @@ "oneofs": { "featureSpec": { "oneof": [ - "configmanagement" + "configmanagement", + "mesh" ] } }, @@ -5878,6 +6079,10 @@ "configmanagement": { "type": "google.cloud.gkehub.configmanagement.v1beta.MembershipSpec", "id": 106 + }, + "mesh": { + "type": "google.cloud.gkehub.servicemesh.v1beta.MembershipSpec", + "id": 116 } } }, @@ -5885,12 +6090,17 @@ "oneofs": { "featureState": { "oneof": [ + "servicemesh", "metering", "configmanagement" ] } }, "fields": { + "servicemesh": { + "type": "google.cloud.gkehub.servicemesh.v1beta.MembershipState", + "id": 100 + }, "metering": { "type": "google.cloud.gkehub.metering.v1beta.MembershipState", "id": 104 diff --git a/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json b/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json index 1f97e6df7bb..03dbd8bb899 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json +++ b/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "4.2.0", + "version": "4.3.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata_google.cloud.gkehub.v1.json b/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata_google.cloud.gkehub.v1.json index 1f97e6df7bb..03dbd8bb899 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata_google.cloud.gkehub.v1.json +++ b/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata_google.cloud.gkehub.v1.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "4.2.0", + "version": "4.3.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json b/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json index c26e733b741..61033f49acc 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "4.2.0", + "version": "4.3.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata_google.cloud.gkehub.v1alpha.json b/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata_google.cloud.gkehub.v1alpha.json index c26e733b741..61033f49acc 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata_google.cloud.gkehub.v1alpha.json +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata_google.cloud.gkehub.v1alpha.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "4.2.0", + "version": "4.3.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json b/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json index 8bc4cacc9c6..507ec5c48a5 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "4.2.0", + "version": "4.3.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata_google.cloud.gkehub.v1alpha2.json b/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata_google.cloud.gkehub.v1alpha2.json index 8bc4cacc9c6..507ec5c48a5 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata_google.cloud.gkehub.v1alpha2.json +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata_google.cloud.gkehub.v1alpha2.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "4.2.0", + "version": "4.3.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json b/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json index 6ef349a0e72..1e40590701c 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "4.2.0", + "version": "4.3.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata_google.cloud.gkehub.v1beta.json b/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata_google.cloud.gkehub.v1beta.json index 6ef349a0e72..1e40590701c 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata_google.cloud.gkehub.v1beta.json +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata_google.cloud.gkehub.v1beta.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "4.2.0", + "version": "4.3.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json index fd283c22e07..232d499930b 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "4.2.0", + "version": "4.3.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata_google.cloud.gkehub.v1beta1.json b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata_google.cloud.gkehub.v1beta1.json index fd283c22e07..232d499930b 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata_google.cloud.gkehub.v1beta1.json +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata_google.cloud.gkehub.v1beta1.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "4.2.0", + "version": "4.3.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/src/v1beta/gke_hub_proto_list.json b/packages/google-cloud-gkehub/src/v1beta/gke_hub_proto_list.json index 9c152a8109c..c7a1b8adc80 100644 --- a/packages/google-cloud-gkehub/src/v1beta/gke_hub_proto_list.json +++ b/packages/google-cloud-gkehub/src/v1beta/gke_hub_proto_list.json @@ -1,4 +1,5 @@ [ + "../../protos/google/cloud/gkehub/servicemesh/v1beta/servicemesh.proto", "../../protos/google/cloud/gkehub/v1beta/configmanagement/configmanagement.proto", "../../protos/google/cloud/gkehub/v1beta/feature.proto", "../../protos/google/cloud/gkehub/v1beta/metering/metering.proto",