import * as pulumi from "@pulumi/pulumi"; import * as outputs from "../../types/output"; /** * Gets the details of a Membership. */ export declare function getMembership(args: GetMembershipArgs, opts?: pulumi.InvokeOptions): Promise; export interface GetMembershipArgs { location: string; membershipId: string; project?: string; } export interface GetMembershipResult { /** * Optional. How to identify workloads from this Membership. See the documentation on Workload Identity for more details: https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity */ readonly authority: outputs.gkehub.v1beta1.AuthorityResponse; /** * When the Membership was created. */ readonly createTime: string; /** * When the Membership was deleted. */ readonly deleteTime: string; /** * Optional. Description of this membership, limited to 63 characters. Must match the regex: `a-zA-Z0-9*` */ readonly description: string; /** * Optional. Endpoint information to reach this member. */ readonly endpoint: outputs.gkehub.v1beta1.MembershipEndpointResponse; /** * 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. */ readonly externalId: string; /** * Optional. The infrastructure type this Membership is running on. */ readonly infrastructureType: string; /** * Optional. GCP labels for this membership. */ readonly labels: { [key: string]: string; }; /** * 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. */ readonly lastConnectionTime: string; /** * Optional. The monitoring config information for this membership. */ readonly monitoringConfig: outputs.gkehub.v1beta1.MonitoringConfigResponse; /** * 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]*[a-z0-9])?`, with a maximum length of 63 characters. */ readonly name: string; /** * State of the Membership resource. */ readonly state: outputs.gkehub.v1beta1.MembershipStateResponse; /** * 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. */ readonly uniqueId: string; /** * When the Membership was last updated. */ readonly updateTime: string; } /** * Gets the details of a Membership. */ export declare function getMembershipOutput(args: GetMembershipOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output; export interface GetMembershipOutputArgs { location: pulumi.Input; membershipId: pulumi.Input; project?: pulumi.Input; }