Membership
Membership contains information about a member cluster. To get more information about Membership, see:
How-to Guides
Example Usage
Gkehub Membership Regional
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.container.Cluster;
import com.pulumi.gcp.container.ClusterArgs;
import com.pulumi.gcp.gkehub.Membership;
import com.pulumi.gcp.gkehub.MembershipArgs;
import com.pulumi.gcp.gkehub.inputs.MembershipEndpointArgs;
import com.pulumi.gcp.gkehub.inputs.MembershipEndpointGkeClusterArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var primary = new Cluster("primary", ClusterArgs.builder()
.deletionProtection(false)
.initialNodeCount(1)
.location("us-central1-a")
.build());
var membership = new Membership("membership", MembershipArgs.builder()
.endpoint(MembershipEndpointArgs.builder()
.gkeCluster(MembershipEndpointGkeClusterArgs.builder()
.resourceLink(primary.id().applyValue(id -> String.format("//container.googleapis.com/%s", id)))
.build())
.build())
.location("us-west1")
.membershipId("basic")
.build());
}
}Content copied to clipboard
Gkehub Membership Basic
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.container.Cluster;
import com.pulumi.gcp.container.ClusterArgs;
import com.pulumi.gcp.gkehub.Membership;
import com.pulumi.gcp.gkehub.MembershipArgs;
import com.pulumi.gcp.gkehub.inputs.MembershipEndpointArgs;
import com.pulumi.gcp.gkehub.inputs.MembershipEndpointGkeClusterArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var primary = new Cluster("primary", ClusterArgs.builder()
.deletionProtection("true")
.initialNodeCount(1)
.location("us-central1-a")
.build());
var membership = new Membership("membership", MembershipArgs.builder()
.endpoint(MembershipEndpointArgs.builder()
.gkeCluster(MembershipEndpointGkeClusterArgs.builder()
.resourceLink(primary.id().applyValue(id -> String.format("//container.googleapis.com/%s", id)))
.build())
.build())
.labels(Map.of("env", "test"))
.membershipId("basic")
.build());
}
}Content copied to clipboard
Gkehub Membership Issuer
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.container.Cluster;
import com.pulumi.gcp.container.ClusterArgs;
import com.pulumi.gcp.container.inputs.ClusterWorkloadIdentityConfigArgs;
import com.pulumi.gcp.gkehub.Membership;
import com.pulumi.gcp.gkehub.MembershipArgs;
import com.pulumi.gcp.gkehub.inputs.MembershipEndpointArgs;
import com.pulumi.gcp.gkehub.inputs.MembershipEndpointGkeClusterArgs;
import com.pulumi.gcp.gkehub.inputs.MembershipAuthorityArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var primary = new Cluster("primary", ClusterArgs.builder()
.location("us-central1-a")
.initialNodeCount(1)
.workloadIdentityConfig(ClusterWorkloadIdentityConfigArgs.builder()
.workloadPool("my-project-name.svc.id.goog")
.build())
.deletionProtection("true")
.build());
var membership = new Membership("membership", MembershipArgs.builder()
.membershipId("basic")
.endpoint(MembershipEndpointArgs.builder()
.gkeCluster(MembershipEndpointGkeClusterArgs.builder()
.resourceLink(primary.id())
.build())
.build())
.authority(MembershipAuthorityArgs.builder()
.issuer(primary.id().applyValue(id -> String.format("https://container.googleapis.com/v1/%s", id)))
.build())
.build());
}
}Content copied to clipboard
Import
Membership can be imported using any of these accepted formats* projects/{{project}}/locations/{{location}}/memberships/{{membership_id}} * {{project}}/{{location}}/{{membership_id}} * {{location}}/{{membership_id}} In Terraform v1.5.0 and later, use an import block to import Membership using one of the formats above. For exampletf import { id = "projects/{{project}}/locations/{{location}}/memberships/{{membership_id}}" to = google_gke_hub_membership.default }
$ pulumi import gcp:gkehub/membership:Membership When using the [`terraform import` command](https://developer.hashicorp.com/terraform/cli/commands/import), Membership can be imported using one of the formats above. For exampleContent copied to clipboard
$ pulumi import gcp:gkehub/membership:Membership default projects/{{project}}/locations/{{location}}/memberships/{{membership_id}}Content copied to clipboard
$ pulumi import gcp:gkehub/membership:Membership default {{project}}/{{location}}/{{membership_id}}Content copied to clipboard
$ pulumi import gcp:gkehub/membership:Membership default {{location}}/{{membership_id}}Content copied to clipboard