class Google::Apis::GkehubV1beta1::Membership

Membership contains information about a member cluster.

Attributes

authority[RW]

Authority encodes how Google will recognize identities from this Membership. See the workload identity documentation for more details: cloud.google. com/kubernetes-engine/docs/how-to/workload-identity Corresponds to the JSON property `authority` @return [Google::Apis::GkehubV1beta1::Authority]

create_time[RW]

Output only. When the Membership was created. Corresponds to the JSON property `createTime` @return [String]

delete_time[RW]

Output only. When the Membership was deleted. Corresponds to the JSON property `deleteTime` @return [String]

description[RW]

Optional. Description of this membership, limited to 63 characters. Must match the regex: `a-zA-Z0-9*` Corresponds to the JSON property `description` @return [String]

endpoint[RW]

MembershipEndpoint contains information needed to contact a Kubernetes API, endpoint and any additional Kubernetes metadata. Corresponds to the JSON property `endpoint` @return [Google::Apis::GkehubV1beta1::MembershipEndpoint]

external_id[RW]

Optional. An externally-generated and managed ID for this Membership. This ID may be modified after creation, but this is not recommended. For GKE clusters, external_id is managed by the Hub API and updates will be ignored. The ID must match the regex: `a-zA-Z0-9*` If this Membership represents a Kubernetes cluster, this value should be set to the UID of the `kube-system` namespace object. Corresponds to the JSON property `externalId` @return [String]

infrastructure_type[RW]

Optional. The infrastructure type this Membership is running on. Corresponds to the JSON property `infrastructureType` @return [String]

labels[RW]

Optional. GCP labels for this membership. Corresponds to the JSON property `labels` @return [Hash<String,String>]

last_connection_time[RW]

Output only. For clusters using Connect, the timestamp of the most recent connection established with Google Cloud. This time is updated every several minutes, not continuously. For clusters that do not use GKE Connect, or that have never connected successfully, this field will be unset. Corresponds to the JSON property `lastConnectionTime` @return [String]

name[RW]

Output only. The full, unique name of this Membership resource in the format ` projects//locations//memberships/`membership_id“, set during creation. ` membership_id` must be a valid RFC 1123 compliant DNS label: 1. At most 63 characters in length 2. It must consist of lower case alphanumeric characters or `-` 3. It must start and end with an alphanumeric character Which can be expressed as the regex: `[a-z0-9](*[a-z0-9])?`, with a maximum length of 63 characters. Corresponds to the JSON property `name` @return [String]

state[RW]

State of the Membership resource. Corresponds to the JSON property `state` @return [Google::Apis::GkehubV1beta1::MembershipState]

unique_id[RW]

Output only. Google-generated UUID for this resource. This is unique across all Membership resources. If a Membership resource is deleted and another resource with the same name is created, it gets a different unique_id. Corresponds to the JSON property `uniqueId` @return [String]

update_time[RW]

Output only. When the Membership was last updated. Corresponds to the JSON property `updateTime` @return [String]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/gkehub_v1beta1/classes.rb, line 778
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/gkehub_v1beta1/classes.rb, line 783
def update!(**args)
  @authority = args[:authority] if args.key?(:authority)
  @create_time = args[:create_time] if args.key?(:create_time)
  @delete_time = args[:delete_time] if args.key?(:delete_time)
  @description = args[:description] if args.key?(:description)
  @endpoint = args[:endpoint] if args.key?(:endpoint)
  @external_id = args[:external_id] if args.key?(:external_id)
  @infrastructure_type = args[:infrastructure_type] if args.key?(:infrastructure_type)
  @labels = args[:labels] if args.key?(:labels)
  @last_connection_time = args[:last_connection_time] if args.key?(:last_connection_time)
  @name = args[:name] if args.key?(:name)
  @state = args[:state] if args.key?(:state)
  @unique_id = args[:unique_id] if args.key?(:unique_id)
  @update_time = args[:update_time] if args.key?(:update_time)
end