gcp.gkehub.FeatureMembership
Explore with Pulumi AI
Import
FeatureMembership can be imported using any of these accepted formats
$ pulumi import gcp:gkehub/featureMembership:FeatureMembership default projects/{{project}}/locations/{{location}}/features/{{feature}}/membershipId/{{membership}}
$ pulumi import gcp:gkehub/featureMembership:FeatureMembership default {{project}}/{{location}}/{{feature}}/{{membership}}
$ pulumi import gcp:gkehub/featureMembership:FeatureMembership default {{location}}/{{feature}}/{{membership}}
Example Usage
Config Management
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var cluster = new Gcp.Container.Cluster("cluster", new()
{
Location = "us-central1-a",
InitialNodeCount = 1,
}, new CustomResourceOptions
{
Provider = google_beta,
});
var membership = new Gcp.GkeHub.Membership("membership", new()
{
MembershipId = "my-membership",
Endpoint = new Gcp.GkeHub.Inputs.MembershipEndpointArgs
{
GkeCluster = new Gcp.GkeHub.Inputs.MembershipEndpointGkeClusterArgs
{
ResourceLink = cluster.Id.Apply(id => $"//container.googleapis.com/{id}"),
},
},
}, new CustomResourceOptions
{
Provider = google_beta,
});
var feature = new Gcp.GkeHub.Feature("feature", new()
{
Location = "global",
Labels =
{
{ "foo", "bar" },
},
}, new CustomResourceOptions
{
Provider = google_beta,
});
var featureMember = new Gcp.GkeHub.FeatureMembership("featureMember", new()
{
Location = "global",
Feature = feature.Name,
Membership = membership.MembershipId,
Configmanagement = new Gcp.GkeHub.Inputs.FeatureMembershipConfigmanagementArgs
{
Version = "1.6.2",
ConfigSync = new Gcp.GkeHub.Inputs.FeatureMembershipConfigmanagementConfigSyncArgs
{
Git = new Gcp.GkeHub.Inputs.FeatureMembershipConfigmanagementConfigSyncGitArgs
{
SyncRepo = "https://github.com/hashicorp/terraform",
},
},
},
}, new CustomResourceOptions
{
Provider = google_beta,
});
});
package main
import (
"fmt"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/container"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cluster, err := container.NewCluster(ctx, "cluster", &container.ClusterArgs{
Location: pulumi.String("us-central1-a"),
InitialNodeCount: pulumi.Int(1),
}, pulumi.Provider(google_beta))
if err != nil {
return err
}
membership, err := gkehub.NewMembership(ctx, "membership", &gkehub.MembershipArgs{
MembershipId: pulumi.String("my-membership"),
Endpoint: &gkehub.MembershipEndpointArgs{
GkeCluster: &gkehub.MembershipEndpointGkeClusterArgs{
ResourceLink: cluster.ID().ApplyT(func(id string) (string, error) {
return fmt.Sprintf("//container.googleapis.com/%v", id), nil
}).(pulumi.StringOutput),
},
},
}, pulumi.Provider(google_beta))
if err != nil {
return err
}
feature, err := gkehub.NewFeature(ctx, "feature", &gkehub.FeatureArgs{
Location: pulumi.String("global"),
Labels: pulumi.StringMap{
"foo": pulumi.String("bar"),
},
}, pulumi.Provider(google_beta))
if err != nil {
return err
}
_, err = gkehub.NewFeatureMembership(ctx, "featureMember", &gkehub.FeatureMembershipArgs{
Location: pulumi.String("global"),
Feature: feature.Name,
Membership: membership.MembershipId,
Configmanagement: &gkehub.FeatureMembershipConfigmanagementArgs{
Version: pulumi.String("1.6.2"),
ConfigSync: &gkehub.FeatureMembershipConfigmanagementConfigSyncArgs{
Git: &gkehub.FeatureMembershipConfigmanagementConfigSyncGitArgs{
SyncRepo: pulumi.String("https://github.com/hashicorp/terraform"),
},
},
},
}, pulumi.Provider(google_beta))
if err != nil {
return err
}
return nil
})
}
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 com.pulumi.gcp.gkehub.Feature;
import com.pulumi.gcp.gkehub.FeatureArgs;
import com.pulumi.gcp.gkehub.FeatureMembership;
import com.pulumi.gcp.gkehub.FeatureMembershipArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureMembershipConfigmanagementArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureMembershipConfigmanagementConfigSyncArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureMembershipConfigmanagementConfigSyncGitArgs;
import com.pulumi.resources.CustomResourceOptions;
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 cluster = new Cluster("cluster", ClusterArgs.builder()
.location("us-central1-a")
.initialNodeCount(1)
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
var membership = new Membership("membership", MembershipArgs.builder()
.membershipId("my-membership")
.endpoint(MembershipEndpointArgs.builder()
.gkeCluster(MembershipEndpointGkeClusterArgs.builder()
.resourceLink(cluster.id().applyValue(id -> String.format("//container.googleapis.com/%s", id)))
.build())
.build())
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
var feature = new Feature("feature", FeatureArgs.builder()
.location("global")
.labels(Map.of("foo", "bar"))
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
var featureMember = new FeatureMembership("featureMember", FeatureMembershipArgs.builder()
.location("global")
.feature(feature.name())
.membership(membership.membershipId())
.configmanagement(FeatureMembershipConfigmanagementArgs.builder()
.version("1.6.2")
.configSync(FeatureMembershipConfigmanagementConfigSyncArgs.builder()
.git(FeatureMembershipConfigmanagementConfigSyncGitArgs.builder()
.syncRepo("https://github.com/hashicorp/terraform")
.build())
.build())
.build())
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
}
}
import pulumi
import pulumi_gcp as gcp
cluster = gcp.container.Cluster("cluster",
location="us-central1-a",
initial_node_count=1,
opts=pulumi.ResourceOptions(provider=google_beta))
membership = gcp.gkehub.Membership("membership",
membership_id="my-membership",
endpoint=gcp.gkehub.MembershipEndpointArgs(
gke_cluster=gcp.gkehub.MembershipEndpointGkeClusterArgs(
resource_link=cluster.id.apply(lambda id: f"//container.googleapis.com/{id}"),
),
),
opts=pulumi.ResourceOptions(provider=google_beta))
feature = gcp.gkehub.Feature("feature",
location="global",
labels={
"foo": "bar",
},
opts=pulumi.ResourceOptions(provider=google_beta))
feature_member = gcp.gkehub.FeatureMembership("featureMember",
location="global",
feature=feature.name,
membership=membership.membership_id,
configmanagement=gcp.gkehub.FeatureMembershipConfigmanagementArgs(
version="1.6.2",
config_sync=gcp.gkehub.FeatureMembershipConfigmanagementConfigSyncArgs(
git=gcp.gkehub.FeatureMembershipConfigmanagementConfigSyncGitArgs(
sync_repo="https://github.com/hashicorp/terraform",
),
),
),
opts=pulumi.ResourceOptions(provider=google_beta))
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const cluster = new gcp.container.Cluster("cluster", {
location: "us-central1-a",
initialNodeCount: 1,
}, {
provider: google_beta,
});
const membership = new gcp.gkehub.Membership("membership", {
membershipId: "my-membership",
endpoint: {
gkeCluster: {
resourceLink: pulumi.interpolate`//container.googleapis.com/${cluster.id}`,
},
},
}, {
provider: google_beta,
});
const feature = new gcp.gkehub.Feature("feature", {
location: "global",
labels: {
foo: "bar",
},
}, {
provider: google_beta,
});
const featureMember = new gcp.gkehub.FeatureMembership("featureMember", {
location: "global",
feature: feature.name,
membership: membership.membershipId,
configmanagement: {
version: "1.6.2",
configSync: {
git: {
syncRepo: "https://github.com/hashicorp/terraform",
},
},
},
}, {
provider: google_beta,
});
resources:
cluster:
type: gcp:container:Cluster
properties:
location: us-central1-a
initialNodeCount: 1
options:
provider: ${["google-beta"]}
membership:
type: gcp:gkehub:Membership
properties:
membershipId: my-membership
endpoint:
gkeCluster:
resourceLink: //container.googleapis.com/${cluster.id}
options:
provider: ${["google-beta"]}
feature:
type: gcp:gkehub:Feature
properties:
location: global
labels:
foo: bar
options:
provider: ${["google-beta"]}
featureMember:
type: gcp:gkehub:FeatureMembership
properties:
location: global
feature: ${feature.name}
membership: ${membership.membershipId}
configmanagement:
version: 1.6.2
configSync:
git:
syncRepo: https://github.com/hashicorp/terraform
options:
provider: ${["google-beta"]}
Config Management With OCI
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var cluster = new Gcp.Container.Cluster("cluster", new()
{
Location = "us-central1-a",
InitialNodeCount = 1,
}, new CustomResourceOptions
{
Provider = google_beta,
});
var membership = new Gcp.GkeHub.Membership("membership", new()
{
MembershipId = "my-membership",
Endpoint = new Gcp.GkeHub.Inputs.MembershipEndpointArgs
{
GkeCluster = new Gcp.GkeHub.Inputs.MembershipEndpointGkeClusterArgs
{
ResourceLink = cluster.Id.Apply(id => $"//container.googleapis.com/{id}"),
},
},
}, new CustomResourceOptions
{
Provider = google_beta,
});
var feature = new Gcp.GkeHub.Feature("feature", new()
{
Location = "global",
Labels =
{
{ "foo", "bar" },
},
}, new CustomResourceOptions
{
Provider = google_beta,
});
var featureMember = new Gcp.GkeHub.FeatureMembership("featureMember", new()
{
Location = "global",
Feature = feature.Name,
Membership = membership.MembershipId,
Configmanagement = new Gcp.GkeHub.Inputs.FeatureMembershipConfigmanagementArgs
{
Version = "1.12.0",
ConfigSync = new Gcp.GkeHub.Inputs.FeatureMembershipConfigmanagementConfigSyncArgs
{
Oci = new Gcp.GkeHub.Inputs.FeatureMembershipConfigmanagementConfigSyncOciArgs
{
SyncRepo = "us-central1-docker.pkg.dev/sample-project/config-repo/config-sync-gke:latest",
PolicyDir = "config-connector",
SyncWaitSecs = "20",
SecretType = "gcpserviceaccount",
GcpServiceAccountEmail = "sa@project-id.iam.gserviceaccount.com",
},
},
},
}, new CustomResourceOptions
{
Provider = google_beta,
});
});
package main
import (
"fmt"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/container"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cluster, err := container.NewCluster(ctx, "cluster", &container.ClusterArgs{
Location: pulumi.String("us-central1-a"),
InitialNodeCount: pulumi.Int(1),
}, pulumi.Provider(google_beta))
if err != nil {
return err
}
membership, err := gkehub.NewMembership(ctx, "membership", &gkehub.MembershipArgs{
MembershipId: pulumi.String("my-membership"),
Endpoint: &gkehub.MembershipEndpointArgs{
GkeCluster: &gkehub.MembershipEndpointGkeClusterArgs{
ResourceLink: cluster.ID().ApplyT(func(id string) (string, error) {
return fmt.Sprintf("//container.googleapis.com/%v", id), nil
}).(pulumi.StringOutput),
},
},
}, pulumi.Provider(google_beta))
if err != nil {
return err
}
feature, err := gkehub.NewFeature(ctx, "feature", &gkehub.FeatureArgs{
Location: pulumi.String("global"),
Labels: pulumi.StringMap{
"foo": pulumi.String("bar"),
},
}, pulumi.Provider(google_beta))
if err != nil {
return err
}
_, err = gkehub.NewFeatureMembership(ctx, "featureMember", &gkehub.FeatureMembershipArgs{
Location: pulumi.String("global"),
Feature: feature.Name,
Membership: membership.MembershipId,
Configmanagement: &gkehub.FeatureMembershipConfigmanagementArgs{
Version: pulumi.String("1.12.0"),
ConfigSync: &gkehub.FeatureMembershipConfigmanagementConfigSyncArgs{
Oci: &gkehub.FeatureMembershipConfigmanagementConfigSyncOciArgs{
SyncRepo: pulumi.String("us-central1-docker.pkg.dev/sample-project/config-repo/config-sync-gke:latest"),
PolicyDir: pulumi.String("config-connector"),
SyncWaitSecs: pulumi.String("20"),
SecretType: pulumi.String("gcpserviceaccount"),
GcpServiceAccountEmail: pulumi.String("sa@project-id.iam.gserviceaccount.com"),
},
},
},
}, pulumi.Provider(google_beta))
if err != nil {
return err
}
return nil
})
}
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 com.pulumi.gcp.gkehub.Feature;
import com.pulumi.gcp.gkehub.FeatureArgs;
import com.pulumi.gcp.gkehub.FeatureMembership;
import com.pulumi.gcp.gkehub.FeatureMembershipArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureMembershipConfigmanagementArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureMembershipConfigmanagementConfigSyncArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureMembershipConfigmanagementConfigSyncOciArgs;
import com.pulumi.resources.CustomResourceOptions;
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 cluster = new Cluster("cluster", ClusterArgs.builder()
.location("us-central1-a")
.initialNodeCount(1)
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
var membership = new Membership("membership", MembershipArgs.builder()
.membershipId("my-membership")
.endpoint(MembershipEndpointArgs.builder()
.gkeCluster(MembershipEndpointGkeClusterArgs.builder()
.resourceLink(cluster.id().applyValue(id -> String.format("//container.googleapis.com/%s", id)))
.build())
.build())
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
var feature = new Feature("feature", FeatureArgs.builder()
.location("global")
.labels(Map.of("foo", "bar"))
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
var featureMember = new FeatureMembership("featureMember", FeatureMembershipArgs.builder()
.location("global")
.feature(feature.name())
.membership(membership.membershipId())
.configmanagement(FeatureMembershipConfigmanagementArgs.builder()
.version("1.12.0")
.configSync(FeatureMembershipConfigmanagementConfigSyncArgs.builder()
.oci(FeatureMembershipConfigmanagementConfigSyncOciArgs.builder()
.syncRepo("us-central1-docker.pkg.dev/sample-project/config-repo/config-sync-gke:latest")
.policyDir("config-connector")
.syncWaitSecs("20")
.secretType("gcpserviceaccount")
.gcpServiceAccountEmail("sa@project-id.iam.gserviceaccount.com")
.build())
.build())
.build())
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
}
}
import pulumi
import pulumi_gcp as gcp
cluster = gcp.container.Cluster("cluster",
location="us-central1-a",
initial_node_count=1,
opts=pulumi.ResourceOptions(provider=google_beta))
membership = gcp.gkehub.Membership("membership",
membership_id="my-membership",
endpoint=gcp.gkehub.MembershipEndpointArgs(
gke_cluster=gcp.gkehub.MembershipEndpointGkeClusterArgs(
resource_link=cluster.id.apply(lambda id: f"//container.googleapis.com/{id}"),
),
),
opts=pulumi.ResourceOptions(provider=google_beta))
feature = gcp.gkehub.Feature("feature",
location="global",
labels={
"foo": "bar",
},
opts=pulumi.ResourceOptions(provider=google_beta))
feature_member = gcp.gkehub.FeatureMembership("featureMember",
location="global",
feature=feature.name,
membership=membership.membership_id,
configmanagement=gcp.gkehub.FeatureMembershipConfigmanagementArgs(
version="1.12.0",
config_sync=gcp.gkehub.FeatureMembershipConfigmanagementConfigSyncArgs(
oci=gcp.gkehub.FeatureMembershipConfigmanagementConfigSyncOciArgs(
sync_repo="us-central1-docker.pkg.dev/sample-project/config-repo/config-sync-gke:latest",
policy_dir="config-connector",
sync_wait_secs="20",
secret_type="gcpserviceaccount",
gcp_service_account_email="sa@project-id.iam.gserviceaccount.com",
),
),
),
opts=pulumi.ResourceOptions(provider=google_beta))
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const cluster = new gcp.container.Cluster("cluster", {
location: "us-central1-a",
initialNodeCount: 1,
}, {
provider: google_beta,
});
const membership = new gcp.gkehub.Membership("membership", {
membershipId: "my-membership",
endpoint: {
gkeCluster: {
resourceLink: pulumi.interpolate`//container.googleapis.com/${cluster.id}`,
},
},
}, {
provider: google_beta,
});
const feature = new gcp.gkehub.Feature("feature", {
location: "global",
labels: {
foo: "bar",
},
}, {
provider: google_beta,
});
const featureMember = new gcp.gkehub.FeatureMembership("featureMember", {
location: "global",
feature: feature.name,
membership: membership.membershipId,
configmanagement: {
version: "1.12.0",
configSync: {
oci: {
syncRepo: "us-central1-docker.pkg.dev/sample-project/config-repo/config-sync-gke:latest",
policyDir: "config-connector",
syncWaitSecs: "20",
secretType: "gcpserviceaccount",
gcpServiceAccountEmail: "sa@project-id.iam.gserviceaccount.com",
},
},
},
}, {
provider: google_beta,
});
resources:
cluster:
type: gcp:container:Cluster
properties:
location: us-central1-a
initialNodeCount: 1
options:
provider: ${["google-beta"]}
membership:
type: gcp:gkehub:Membership
properties:
membershipId: my-membership
endpoint:
gkeCluster:
resourceLink: //container.googleapis.com/${cluster.id}
options:
provider: ${["google-beta"]}
feature:
type: gcp:gkehub:Feature
properties:
location: global
labels:
foo: bar
options:
provider: ${["google-beta"]}
featureMember:
type: gcp:gkehub:FeatureMembership
properties:
location: global
feature: ${feature.name}
membership: ${membership.membershipId}
configmanagement:
version: 1.12.0
configSync:
oci:
syncRepo: us-central1-docker.pkg.dev/sample-project/config-repo/config-sync-gke:latest
policyDir: config-connector
syncWaitSecs: '20'
secretType: gcpserviceaccount
gcpServiceAccountEmail: sa@project-id.iam.gserviceaccount.com
options:
provider: ${["google-beta"]}
Multi Cluster Service Discovery
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var feature = new Gcp.GkeHub.Feature("feature", new()
{
Location = "global",
Labels =
{
{ "foo", "bar" },
},
}, new CustomResourceOptions
{
Provider = google_beta,
});
});
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := gkehub.NewFeature(ctx, "feature", &gkehub.FeatureArgs{
Location: pulumi.String("global"),
Labels: pulumi.StringMap{
"foo": pulumi.String("bar"),
},
}, pulumi.Provider(google_beta))
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.gkehub.Feature;
import com.pulumi.gcp.gkehub.FeatureArgs;
import com.pulumi.resources.CustomResourceOptions;
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 feature = new Feature("feature", FeatureArgs.builder()
.location("global")
.labels(Map.of("foo", "bar"))
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
}
}
import pulumi
import pulumi_gcp as gcp
feature = gcp.gkehub.Feature("feature",
location="global",
labels={
"foo": "bar",
},
opts=pulumi.ResourceOptions(provider=google_beta))
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const feature = new gcp.gkehub.Feature("feature", {
location: "global",
labels: {
foo: "bar",
},
}, {
provider: google_beta,
});
resources:
feature:
type: gcp:gkehub:Feature
properties:
location: global
labels:
foo: bar
options:
provider: ${["google-beta"]}
Service Mesh
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var cluster = new Gcp.Container.Cluster("cluster", new()
{
Location = "us-central1-a",
InitialNodeCount = 1,
}, new CustomResourceOptions
{
Provider = google_beta,
});
var membership = new Gcp.GkeHub.Membership("membership", new()
{
MembershipId = "my-membership",
Endpoint = new Gcp.GkeHub.Inputs.MembershipEndpointArgs
{
GkeCluster = new Gcp.GkeHub.Inputs.MembershipEndpointGkeClusterArgs
{
ResourceLink = cluster.Id.Apply(id => $"//container.googleapis.com/{id}"),
},
},
}, new CustomResourceOptions
{
Provider = google_beta,
});
var feature = new Gcp.GkeHub.Feature("feature", new()
{
Location = "global",
}, new CustomResourceOptions
{
Provider = google_beta,
});
var featureMember = new Gcp.GkeHub.FeatureMembership("featureMember", new()
{
Location = "global",
Feature = feature.Name,
Membership = membership.MembershipId,
Mesh = new Gcp.GkeHub.Inputs.FeatureMembershipMeshArgs
{
Management = "MANAGEMENT_AUTOMATIC",
},
}, new CustomResourceOptions
{
Provider = google_beta,
});
});
package main
import (
"fmt"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/container"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cluster, err := container.NewCluster(ctx, "cluster", &container.ClusterArgs{
Location: pulumi.String("us-central1-a"),
InitialNodeCount: pulumi.Int(1),
}, pulumi.Provider(google_beta))
if err != nil {
return err
}
membership, err := gkehub.NewMembership(ctx, "membership", &gkehub.MembershipArgs{
MembershipId: pulumi.String("my-membership"),
Endpoint: &gkehub.MembershipEndpointArgs{
GkeCluster: &gkehub.MembershipEndpointGkeClusterArgs{
ResourceLink: cluster.ID().ApplyT(func(id string) (string, error) {
return fmt.Sprintf("//container.googleapis.com/%v", id), nil
}).(pulumi.StringOutput),
},
},
}, pulumi.Provider(google_beta))
if err != nil {
return err
}
feature, err := gkehub.NewFeature(ctx, "feature", &gkehub.FeatureArgs{
Location: pulumi.String("global"),
}, pulumi.Provider(google_beta))
if err != nil {
return err
}
_, err = gkehub.NewFeatureMembership(ctx, "featureMember", &gkehub.FeatureMembershipArgs{
Location: pulumi.String("global"),
Feature: feature.Name,
Membership: membership.MembershipId,
Mesh: &gkehub.FeatureMembershipMeshArgs{
Management: pulumi.String("MANAGEMENT_AUTOMATIC"),
},
}, pulumi.Provider(google_beta))
if err != nil {
return err
}
return nil
})
}
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 com.pulumi.gcp.gkehub.Feature;
import com.pulumi.gcp.gkehub.FeatureArgs;
import com.pulumi.gcp.gkehub.FeatureMembership;
import com.pulumi.gcp.gkehub.FeatureMembershipArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureMembershipMeshArgs;
import com.pulumi.resources.CustomResourceOptions;
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 cluster = new Cluster("cluster", ClusterArgs.builder()
.location("us-central1-a")
.initialNodeCount(1)
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
var membership = new Membership("membership", MembershipArgs.builder()
.membershipId("my-membership")
.endpoint(MembershipEndpointArgs.builder()
.gkeCluster(MembershipEndpointGkeClusterArgs.builder()
.resourceLink(cluster.id().applyValue(id -> String.format("//container.googleapis.com/%s", id)))
.build())
.build())
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
var feature = new Feature("feature", FeatureArgs.builder()
.location("global")
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
var featureMember = new FeatureMembership("featureMember", FeatureMembershipArgs.builder()
.location("global")
.feature(feature.name())
.membership(membership.membershipId())
.mesh(FeatureMembershipMeshArgs.builder()
.management("MANAGEMENT_AUTOMATIC")
.build())
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
}
}
import pulumi
import pulumi_gcp as gcp
cluster = gcp.container.Cluster("cluster",
location="us-central1-a",
initial_node_count=1,
opts=pulumi.ResourceOptions(provider=google_beta))
membership = gcp.gkehub.Membership("membership",
membership_id="my-membership",
endpoint=gcp.gkehub.MembershipEndpointArgs(
gke_cluster=gcp.gkehub.MembershipEndpointGkeClusterArgs(
resource_link=cluster.id.apply(lambda id: f"//container.googleapis.com/{id}"),
),
),
opts=pulumi.ResourceOptions(provider=google_beta))
feature = gcp.gkehub.Feature("feature", location="global",
opts=pulumi.ResourceOptions(provider=google_beta))
feature_member = gcp.gkehub.FeatureMembership("featureMember",
location="global",
feature=feature.name,
membership=membership.membership_id,
mesh=gcp.gkehub.FeatureMembershipMeshArgs(
management="MANAGEMENT_AUTOMATIC",
),
opts=pulumi.ResourceOptions(provider=google_beta))
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const cluster = new gcp.container.Cluster("cluster", {
location: "us-central1-a",
initialNodeCount: 1,
}, {
provider: google_beta,
});
const membership = new gcp.gkehub.Membership("membership", {
membershipId: "my-membership",
endpoint: {
gkeCluster: {
resourceLink: pulumi.interpolate`//container.googleapis.com/${cluster.id}`,
},
},
}, {
provider: google_beta,
});
const feature = new gcp.gkehub.Feature("feature", {location: "global"}, {
provider: google_beta,
});
const featureMember = new gcp.gkehub.FeatureMembership("featureMember", {
location: "global",
feature: feature.name,
membership: membership.membershipId,
mesh: {
management: "MANAGEMENT_AUTOMATIC",
},
}, {
provider: google_beta,
});
resources:
cluster:
type: gcp:container:Cluster
properties:
location: us-central1-a
initialNodeCount: 1
options:
provider: ${["google-beta"]}
membership:
type: gcp:gkehub:Membership
properties:
membershipId: my-membership
endpoint:
gkeCluster:
resourceLink: //container.googleapis.com/${cluster.id}
options:
provider: ${["google-beta"]}
feature:
type: gcp:gkehub:Feature
properties:
location: global
options:
provider: ${["google-beta"]}
featureMember:
type: gcp:gkehub:FeatureMembership
properties:
location: global
feature: ${feature.name}
membership: ${membership.membershipId}
mesh:
management: MANAGEMENT_AUTOMATIC
options:
provider: ${["google-beta"]}
Create FeatureMembership Resource
new FeatureMembership(name: string, args: FeatureMembershipArgs, opts?: CustomResourceOptions);
@overload
def FeatureMembership(resource_name: str,
opts: Optional[ResourceOptions] = None,
configmanagement: Optional[FeatureMembershipConfigmanagementArgs] = None,
feature: Optional[str] = None,
location: Optional[str] = None,
membership: Optional[str] = None,
mesh: Optional[FeatureMembershipMeshArgs] = None,
project: Optional[str] = None)
@overload
def FeatureMembership(resource_name: str,
args: FeatureMembershipArgs,
opts: Optional[ResourceOptions] = None)
func NewFeatureMembership(ctx *Context, name string, args FeatureMembershipArgs, opts ...ResourceOption) (*FeatureMembership, error)
public FeatureMembership(string name, FeatureMembershipArgs args, CustomResourceOptions? opts = null)
public FeatureMembership(String name, FeatureMembershipArgs args)
public FeatureMembership(String name, FeatureMembershipArgs args, CustomResourceOptions options)
type: gcp:gkehub:FeatureMembership
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args FeatureMembershipArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args FeatureMembershipArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args FeatureMembershipArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args FeatureMembershipArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args FeatureMembershipArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
FeatureMembership Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The FeatureMembership resource accepts the following input properties:
- Feature string
The name of the feature
- Location string
The location of the feature
- Membership string
The name of the membership
- Configmanagement
Feature
Membership Configmanagement Args Config Management-specific spec. Structure is documented below.
- Mesh
Feature
Membership Mesh Args Service mesh specific spec. Structure is documented below.
- Project string
The project of the feature
- Feature string
The name of the feature
- Location string
The location of the feature
- Membership string
The name of the membership
- Configmanagement
Feature
Membership Configmanagement Args Config Management-specific spec. Structure is documented below.
- Mesh
Feature
Membership Mesh Args Service mesh specific spec. Structure is documented below.
- Project string
The project of the feature
- feature String
The name of the feature
- location String
The location of the feature
- membership String
The name of the membership
- configmanagement
Feature
Membership Configmanagement Args Config Management-specific spec. Structure is documented below.
- mesh
Feature
Membership Mesh Args Service mesh specific spec. Structure is documented below.
- project String
The project of the feature
- feature string
The name of the feature
- location string
The location of the feature
- membership string
The name of the membership
- configmanagement
Feature
Membership Configmanagement Args Config Management-specific spec. Structure is documented below.
- mesh
Feature
Membership Mesh Args Service mesh specific spec. Structure is documented below.
- project string
The project of the feature
- feature str
The name of the feature
- location str
The location of the feature
- membership str
The name of the membership
- configmanagement
Feature
Membership Configmanagement Args Config Management-specific spec. Structure is documented below.
- mesh
Feature
Membership Mesh Args Service mesh specific spec. Structure is documented below.
- project str
The project of the feature
- feature String
The name of the feature
- location String
The location of the feature
- membership String
The name of the membership
- configmanagement Property Map
Config Management-specific spec. Structure is documented below.
- mesh Property Map
Service mesh specific spec. Structure is documented below.
- project String
The project of the feature
Outputs
All input properties are implicitly available as output properties. Additionally, the FeatureMembership resource produces the following output properties:
- Id string
The provider-assigned unique ID for this managed resource.
- Id string
The provider-assigned unique ID for this managed resource.
- id String
The provider-assigned unique ID for this managed resource.
- id string
The provider-assigned unique ID for this managed resource.
- id str
The provider-assigned unique ID for this managed resource.
- id String
The provider-assigned unique ID for this managed resource.
Look up Existing FeatureMembership Resource
Get an existing FeatureMembership resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: FeatureMembershipState, opts?: CustomResourceOptions): FeatureMembership
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
configmanagement: Optional[FeatureMembershipConfigmanagementArgs] = None,
feature: Optional[str] = None,
location: Optional[str] = None,
membership: Optional[str] = None,
mesh: Optional[FeatureMembershipMeshArgs] = None,
project: Optional[str] = None) -> FeatureMembership
func GetFeatureMembership(ctx *Context, name string, id IDInput, state *FeatureMembershipState, opts ...ResourceOption) (*FeatureMembership, error)
public static FeatureMembership Get(string name, Input<string> id, FeatureMembershipState? state, CustomResourceOptions? opts = null)
public static FeatureMembership get(String name, Output<String> id, FeatureMembershipState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Configmanagement
Feature
Membership Configmanagement Args Config Management-specific spec. Structure is documented below.
- Feature string
The name of the feature
- Location string
The location of the feature
- Membership string
The name of the membership
- Mesh
Feature
Membership Mesh Args Service mesh specific spec. Structure is documented below.
- Project string
The project of the feature
- Configmanagement
Feature
Membership Configmanagement Args Config Management-specific spec. Structure is documented below.
- Feature string
The name of the feature
- Location string
The location of the feature
- Membership string
The name of the membership
- Mesh
Feature
Membership Mesh Args Service mesh specific spec. Structure is documented below.
- Project string
The project of the feature
- configmanagement
Feature
Membership Configmanagement Args Config Management-specific spec. Structure is documented below.
- feature String
The name of the feature
- location String
The location of the feature
- membership String
The name of the membership
- mesh
Feature
Membership Mesh Args Service mesh specific spec. Structure is documented below.
- project String
The project of the feature
- configmanagement
Feature
Membership Configmanagement Args Config Management-specific spec. Structure is documented below.
- feature string
The name of the feature
- location string
The location of the feature
- membership string
The name of the membership
- mesh
Feature
Membership Mesh Args Service mesh specific spec. Structure is documented below.
- project string
The project of the feature
- configmanagement
Feature
Membership Configmanagement Args Config Management-specific spec. Structure is documented below.
- feature str
The name of the feature
- location str
The location of the feature
- membership str
The name of the membership
- mesh
Feature
Membership Mesh Args Service mesh specific spec. Structure is documented below.
- project str
The project of the feature
- configmanagement Property Map
Config Management-specific spec. Structure is documented below.
- feature String
The name of the feature
- location String
The location of the feature
- membership String
The name of the membership
- mesh Property Map
Service mesh specific spec. Structure is documented below.
- project String
The project of the feature
Supporting Types
FeatureMembershipConfigmanagement
- Binauthz
Feature
Membership Configmanagement Binauthz Binauthz configuration for the cluster. Structure is documented below.
- Config
Sync FeatureMembership Configmanagement Config Sync Config Sync configuration for the cluster. Structure is documented below.
- Hierarchy
Controller FeatureMembership Configmanagement Hierarchy Controller Hierarchy Controller configuration for the cluster. Structure is documented below.
- Policy
Controller FeatureMembership Configmanagement Policy Controller Policy Controller configuration for the cluster. Structure is documented below.
- Version string
Version of ACM installed.
- Binauthz
Feature
Membership Configmanagement Binauthz Binauthz configuration for the cluster. Structure is documented below.
- Config
Sync FeatureMembership Configmanagement Config Sync Config Sync configuration for the cluster. Structure is documented below.
- Hierarchy
Controller FeatureMembership Configmanagement Hierarchy Controller Hierarchy Controller configuration for the cluster. Structure is documented below.
- Policy
Controller FeatureMembership Configmanagement Policy Controller Policy Controller configuration for the cluster. Structure is documented below.
- Version string
Version of ACM installed.
- binauthz
Feature
Membership Configmanagement Binauthz Binauthz configuration for the cluster. Structure is documented below.
- config
Sync FeatureMembership Configmanagement Config Sync Config Sync configuration for the cluster. Structure is documented below.
- hierarchy
Controller FeatureMembership Configmanagement Hierarchy Controller Hierarchy Controller configuration for the cluster. Structure is documented below.
- policy
Controller FeatureMembership Configmanagement Policy Controller Policy Controller configuration for the cluster. Structure is documented below.
- version String
Version of ACM installed.
- binauthz
Feature
Membership Configmanagement Binauthz Binauthz configuration for the cluster. Structure is documented below.
- config
Sync FeatureMembership Configmanagement Config Sync Config Sync configuration for the cluster. Structure is documented below.
- hierarchy
Controller FeatureMembership Configmanagement Hierarchy Controller Hierarchy Controller configuration for the cluster. Structure is documented below.
- policy
Controller FeatureMembership Configmanagement Policy Controller Policy Controller configuration for the cluster. Structure is documented below.
- version string
Version of ACM installed.
- binauthz
Feature
Membership Configmanagement Binauthz Binauthz configuration for the cluster. Structure is documented below.
- config_
sync FeatureMembership Configmanagement Config Sync Config Sync configuration for the cluster. Structure is documented below.
- hierarchy_
controller FeatureMembership Configmanagement Hierarchy Controller Hierarchy Controller configuration for the cluster. Structure is documented below.
- policy_
controller FeatureMembership Configmanagement Policy Controller Policy Controller configuration for the cluster. Structure is documented below.
- version str
Version of ACM installed.
- binauthz Property Map
Binauthz configuration for the cluster. Structure is documented below.
- config
Sync Property Map Config Sync configuration for the cluster. Structure is documented below.
- hierarchy
Controller Property Map Hierarchy Controller configuration for the cluster. Structure is documented below.
- policy
Controller Property Map Policy Controller configuration for the cluster. Structure is documented below.
- version String
Version of ACM installed.
FeatureMembershipConfigmanagementBinauthz
- Enabled bool
Whether binauthz is enabled in this cluster.
- Enabled bool
Whether binauthz is enabled in this cluster.
- enabled Boolean
Whether binauthz is enabled in this cluster.
- enabled boolean
Whether binauthz is enabled in this cluster.
- enabled bool
Whether binauthz is enabled in this cluster.
- enabled Boolean
Whether binauthz is enabled in this cluster.
FeatureMembershipConfigmanagementConfigSync
- Git
Feature
Membership Configmanagement Config Sync Git (Optional) Structure is documented below.
- Oci
Feature
Membership Configmanagement Config Sync Oci (Optional) Supported from ACM versions 1.12.0 onwards. Structure is documented below.
Use either
git
oroci
config option.- Prevent
Drift bool Supported from ACM versions 1.10.0 onwards. Set to true to enable the Config Sync admission webhook to prevent drifts. If set to "false", disables the Config Sync admission webhook and does not prevent drifts.
- Source
Format string Specifies whether the Config Sync Repo is in "hierarchical" or "unstructured" mode.
- Git
Feature
Membership Configmanagement Config Sync Git (Optional) Structure is documented below.
- Oci
Feature
Membership Configmanagement Config Sync Oci (Optional) Supported from ACM versions 1.12.0 onwards. Structure is documented below.
Use either
git
oroci
config option.- Prevent
Drift bool Supported from ACM versions 1.10.0 onwards. Set to true to enable the Config Sync admission webhook to prevent drifts. If set to "false", disables the Config Sync admission webhook and does not prevent drifts.
- Source
Format string Specifies whether the Config Sync Repo is in "hierarchical" or "unstructured" mode.
- git
Feature
Membership Configmanagement Config Sync Git (Optional) Structure is documented below.
- oci
Feature
Membership Configmanagement Config Sync Oci (Optional) Supported from ACM versions 1.12.0 onwards. Structure is documented below.
Use either
git
oroci
config option.- prevent
Drift Boolean Supported from ACM versions 1.10.0 onwards. Set to true to enable the Config Sync admission webhook to prevent drifts. If set to "false", disables the Config Sync admission webhook and does not prevent drifts.
- source
Format String Specifies whether the Config Sync Repo is in "hierarchical" or "unstructured" mode.
- git
Feature
Membership Configmanagement Config Sync Git (Optional) Structure is documented below.
- oci
Feature
Membership Configmanagement Config Sync Oci (Optional) Supported from ACM versions 1.12.0 onwards. Structure is documented below.
Use either
git
oroci
config option.- prevent
Drift boolean Supported from ACM versions 1.10.0 onwards. Set to true to enable the Config Sync admission webhook to prevent drifts. If set to "false", disables the Config Sync admission webhook and does not prevent drifts.
- source
Format string Specifies whether the Config Sync Repo is in "hierarchical" or "unstructured" mode.
- git
Feature
Membership Configmanagement Config Sync Git (Optional) Structure is documented below.
- oci
Feature
Membership Configmanagement Config Sync Oci (Optional) Supported from ACM versions 1.12.0 onwards. Structure is documented below.
Use either
git
oroci
config option.- prevent_
drift bool Supported from ACM versions 1.10.0 onwards. Set to true to enable the Config Sync admission webhook to prevent drifts. If set to "false", disables the Config Sync admission webhook and does not prevent drifts.
- source_
format str Specifies whether the Config Sync Repo is in "hierarchical" or "unstructured" mode.
- git Property Map
(Optional) Structure is documented below.
- oci Property Map
(Optional) Supported from ACM versions 1.12.0 onwards. Structure is documented below.
Use either
git
oroci
config option.- prevent
Drift Boolean Supported from ACM versions 1.10.0 onwards. Set to true to enable the Config Sync admission webhook to prevent drifts. If set to "false", disables the Config Sync admission webhook and does not prevent drifts.
- source
Format String Specifies whether the Config Sync Repo is in "hierarchical" or "unstructured" mode.
FeatureMembershipConfigmanagementConfigSyncGit
- Gcp
Service stringAccount Email The GCP Service Account Email used for auth when secretType is gcpServiceAccount.
- Https
Proxy string URL for the HTTPS proxy to be used when communicating with the Git repo.
- Policy
Dir string The path within the Git repository that represents the top level of the repo to sync. Default: the root directory of the repository.
- Secret
Type string Type of secret configured for access to the Git repo.
- Sync
Branch string The branch of the repository to sync from. Default: master.
- Sync
Repo string The URL of the Git repository to use as the source of truth.
- Sync
Rev string Git revision (tag or hash) to check out. Default HEAD.
- Sync
Wait stringSecs Period in seconds between consecutive syncs. Default: 15.
- Gcp
Service stringAccount Email The GCP Service Account Email used for auth when secretType is gcpServiceAccount.
- Https
Proxy string URL for the HTTPS proxy to be used when communicating with the Git repo.
- Policy
Dir string The path within the Git repository that represents the top level of the repo to sync. Default: the root directory of the repository.
- Secret
Type string Type of secret configured for access to the Git repo.
- Sync
Branch string The branch of the repository to sync from. Default: master.
- Sync
Repo string The URL of the Git repository to use as the source of truth.
- Sync
Rev string Git revision (tag or hash) to check out. Default HEAD.
- Sync
Wait stringSecs Period in seconds between consecutive syncs. Default: 15.
- gcp
Service StringAccount Email The GCP Service Account Email used for auth when secretType is gcpServiceAccount.
- https
Proxy String URL for the HTTPS proxy to be used when communicating with the Git repo.
- policy
Dir String The path within the Git repository that represents the top level of the repo to sync. Default: the root directory of the repository.
- secret
Type String Type of secret configured for access to the Git repo.
- sync
Branch String The branch of the repository to sync from. Default: master.
- sync
Repo String The URL of the Git repository to use as the source of truth.
- sync
Rev String Git revision (tag or hash) to check out. Default HEAD.
- sync
Wait StringSecs Period in seconds between consecutive syncs. Default: 15.
- gcp
Service stringAccount Email The GCP Service Account Email used for auth when secretType is gcpServiceAccount.
- https
Proxy string URL for the HTTPS proxy to be used when communicating with the Git repo.
- policy
Dir string The path within the Git repository that represents the top level of the repo to sync. Default: the root directory of the repository.
- secret
Type string Type of secret configured for access to the Git repo.
- sync
Branch string The branch of the repository to sync from. Default: master.
- sync
Repo string The URL of the Git repository to use as the source of truth.
- sync
Rev string Git revision (tag or hash) to check out. Default HEAD.
- sync
Wait stringSecs Period in seconds between consecutive syncs. Default: 15.
- gcp_
service_ straccount_ email The GCP Service Account Email used for auth when secretType is gcpServiceAccount.
- https_
proxy str URL for the HTTPS proxy to be used when communicating with the Git repo.
- policy_
dir str The path within the Git repository that represents the top level of the repo to sync. Default: the root directory of the repository.
- secret_
type str Type of secret configured for access to the Git repo.
- sync_
branch str The branch of the repository to sync from. Default: master.
- sync_
repo str The URL of the Git repository to use as the source of truth.
- sync_
rev str Git revision (tag or hash) to check out. Default HEAD.
- sync_
wait_ strsecs Period in seconds between consecutive syncs. Default: 15.
- gcp
Service StringAccount Email The GCP Service Account Email used for auth when secretType is gcpServiceAccount.
- https
Proxy String URL for the HTTPS proxy to be used when communicating with the Git repo.
- policy
Dir String The path within the Git repository that represents the top level of the repo to sync. Default: the root directory of the repository.
- secret
Type String Type of secret configured for access to the Git repo.
- sync
Branch String The branch of the repository to sync from. Default: master.
- sync
Repo String The URL of the Git repository to use as the source of truth.
- sync
Rev String Git revision (tag or hash) to check out. Default HEAD.
- sync
Wait StringSecs Period in seconds between consecutive syncs. Default: 15.
FeatureMembershipConfigmanagementConfigSyncOci
- Gcp
Service stringAccount Email The GCP Service Account Email used for auth when secret_type is gcpserviceaccount.
- Policy
Dir string The absolute path of the directory that contains the local resources. Default: the root directory of the image.
- Secret
Type string Type of secret configured for access to the OCI Image. Must be one of gcenode, gcpserviceaccount or none.
- Sync
Repo string The OCI image repository URL for the package to sync from. e.g. LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME.
- Sync
Wait stringSecs Period in seconds(int64 format) between consecutive syncs. Default: 15.
- Gcp
Service stringAccount Email The GCP Service Account Email used for auth when secret_type is gcpserviceaccount.
- Policy
Dir string The absolute path of the directory that contains the local resources. Default: the root directory of the image.
- Secret
Type string Type of secret configured for access to the OCI Image. Must be one of gcenode, gcpserviceaccount or none.
- Sync
Repo string The OCI image repository URL for the package to sync from. e.g. LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME.
- Sync
Wait stringSecs Period in seconds(int64 format) between consecutive syncs. Default: 15.
- gcp
Service StringAccount Email The GCP Service Account Email used for auth when secret_type is gcpserviceaccount.
- policy
Dir String The absolute path of the directory that contains the local resources. Default: the root directory of the image.
- secret
Type String Type of secret configured for access to the OCI Image. Must be one of gcenode, gcpserviceaccount or none.
- sync
Repo String The OCI image repository URL for the package to sync from. e.g. LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME.
- sync
Wait StringSecs Period in seconds(int64 format) between consecutive syncs. Default: 15.
- gcp
Service stringAccount Email The GCP Service Account Email used for auth when secret_type is gcpserviceaccount.
- policy
Dir string The absolute path of the directory that contains the local resources. Default: the root directory of the image.
- secret
Type string Type of secret configured for access to the OCI Image. Must be one of gcenode, gcpserviceaccount or none.
- sync
Repo string The OCI image repository URL for the package to sync from. e.g. LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME.
- sync
Wait stringSecs Period in seconds(int64 format) between consecutive syncs. Default: 15.
- gcp_
service_ straccount_ email The GCP Service Account Email used for auth when secret_type is gcpserviceaccount.
- policy_
dir str The absolute path of the directory that contains the local resources. Default: the root directory of the image.
- secret_
type str Type of secret configured for access to the OCI Image. Must be one of gcenode, gcpserviceaccount or none.
- sync_
repo str The OCI image repository URL for the package to sync from. e.g. LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME.
- sync_
wait_ strsecs Period in seconds(int64 format) between consecutive syncs. Default: 15.
- gcp
Service StringAccount Email The GCP Service Account Email used for auth when secret_type is gcpserviceaccount.
- policy
Dir String The absolute path of the directory that contains the local resources. Default: the root directory of the image.
- secret
Type String Type of secret configured for access to the OCI Image. Must be one of gcenode, gcpserviceaccount or none.
- sync
Repo String The OCI image repository URL for the package to sync from. e.g. LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME.
- sync
Wait StringSecs Period in seconds(int64 format) between consecutive syncs. Default: 15.
FeatureMembershipConfigmanagementHierarchyController
- Enable
Hierarchical boolResource Quota Whether hierarchical resource quota is enabled in this cluster.
- Enable
Pod boolTree Labels Whether pod tree labels are enabled in this cluster.
- Enabled bool
Whether Hierarchy Controller is enabled in this cluster.
- Enable
Hierarchical boolResource Quota Whether hierarchical resource quota is enabled in this cluster.
- Enable
Pod boolTree Labels Whether pod tree labels are enabled in this cluster.
- Enabled bool
Whether Hierarchy Controller is enabled in this cluster.
- enable
Hierarchical BooleanResource Quota Whether hierarchical resource quota is enabled in this cluster.
- enable
Pod BooleanTree Labels Whether pod tree labels are enabled in this cluster.
- enabled Boolean
Whether Hierarchy Controller is enabled in this cluster.
- enable
Hierarchical booleanResource Quota Whether hierarchical resource quota is enabled in this cluster.
- enable
Pod booleanTree Labels Whether pod tree labels are enabled in this cluster.
- enabled boolean
Whether Hierarchy Controller is enabled in this cluster.
- enable_
hierarchical_ boolresource_ quota Whether hierarchical resource quota is enabled in this cluster.
- enable_
pod_ booltree_ labels Whether pod tree labels are enabled in this cluster.
- enabled bool
Whether Hierarchy Controller is enabled in this cluster.
- enable
Hierarchical BooleanResource Quota Whether hierarchical resource quota is enabled in this cluster.
- enable
Pod BooleanTree Labels Whether pod tree labels are enabled in this cluster.
- enabled Boolean
Whether Hierarchy Controller is enabled in this cluster.
FeatureMembershipConfigmanagementPolicyController
- Audit
Interval stringSeconds Sets the interval for Policy Controller Audit Scans (in seconds). When set to 0, this disables audit functionality altogether.
- Enabled bool
Enables the installation of Policy Controller. If false, the rest of PolicyController fields take no effect.
- Exemptable
Namespaces List<string> The set of namespaces that are excluded from Policy Controller checks. Namespaces do not need to currently exist on the cluster.
- Log
Denies boolEnabled Logs all denies and dry run failures.
- Monitoring
Feature
Membership Configmanagement Policy Controller Monitoring Specifies the backends Policy Controller should export metrics to. For example, to specify metrics should be exported to Cloud Monitoring and Prometheus, specify backends: ["cloudmonitoring", "prometheus"]. Default: ["cloudmonitoring", "prometheus"]
- Mutation
Enabled bool Enables mutation in policy controller. If true, mutation CRDs, webhook, and controller deployment will be deployed to the cluster.
- Referential
Rules boolEnabled Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated.
- Template
Library boolInstalled Installs the default template library along with Policy Controller.
- Audit
Interval stringSeconds Sets the interval for Policy Controller Audit Scans (in seconds). When set to 0, this disables audit functionality altogether.
- Enabled bool
Enables the installation of Policy Controller. If false, the rest of PolicyController fields take no effect.
- Exemptable
Namespaces []string The set of namespaces that are excluded from Policy Controller checks. Namespaces do not need to currently exist on the cluster.
- Log
Denies boolEnabled Logs all denies and dry run failures.
- Monitoring
Feature
Membership Configmanagement Policy Controller Monitoring Specifies the backends Policy Controller should export metrics to. For example, to specify metrics should be exported to Cloud Monitoring and Prometheus, specify backends: ["cloudmonitoring", "prometheus"]. Default: ["cloudmonitoring", "prometheus"]
- Mutation
Enabled bool Enables mutation in policy controller. If true, mutation CRDs, webhook, and controller deployment will be deployed to the cluster.
- Referential
Rules boolEnabled Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated.
- Template
Library boolInstalled Installs the default template library along with Policy Controller.
- audit
Interval StringSeconds Sets the interval for Policy Controller Audit Scans (in seconds). When set to 0, this disables audit functionality altogether.
- enabled Boolean
Enables the installation of Policy Controller. If false, the rest of PolicyController fields take no effect.
- exemptable
Namespaces List<String> The set of namespaces that are excluded from Policy Controller checks. Namespaces do not need to currently exist on the cluster.
- log
Denies BooleanEnabled Logs all denies and dry run failures.
- monitoring
Feature
Membership Configmanagement Policy Controller Monitoring Specifies the backends Policy Controller should export metrics to. For example, to specify metrics should be exported to Cloud Monitoring and Prometheus, specify backends: ["cloudmonitoring", "prometheus"]. Default: ["cloudmonitoring", "prometheus"]
- mutation
Enabled Boolean Enables mutation in policy controller. If true, mutation CRDs, webhook, and controller deployment will be deployed to the cluster.
- referential
Rules BooleanEnabled Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated.
- template
Library BooleanInstalled Installs the default template library along with Policy Controller.
- audit
Interval stringSeconds Sets the interval for Policy Controller Audit Scans (in seconds). When set to 0, this disables audit functionality altogether.
- enabled boolean
Enables the installation of Policy Controller. If false, the rest of PolicyController fields take no effect.
- exemptable
Namespaces string[] The set of namespaces that are excluded from Policy Controller checks. Namespaces do not need to currently exist on the cluster.
- log
Denies booleanEnabled Logs all denies and dry run failures.
- monitoring
Feature
Membership Configmanagement Policy Controller Monitoring Specifies the backends Policy Controller should export metrics to. For example, to specify metrics should be exported to Cloud Monitoring and Prometheus, specify backends: ["cloudmonitoring", "prometheus"]. Default: ["cloudmonitoring", "prometheus"]
- mutation
Enabled boolean Enables mutation in policy controller. If true, mutation CRDs, webhook, and controller deployment will be deployed to the cluster.
- referential
Rules booleanEnabled Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated.
- template
Library booleanInstalled Installs the default template library along with Policy Controller.
- audit_
interval_ strseconds Sets the interval for Policy Controller Audit Scans (in seconds). When set to 0, this disables audit functionality altogether.
- enabled bool
Enables the installation of Policy Controller. If false, the rest of PolicyController fields take no effect.
- exemptable_
namespaces Sequence[str] The set of namespaces that are excluded from Policy Controller checks. Namespaces do not need to currently exist on the cluster.
- log_
denies_ boolenabled Logs all denies and dry run failures.
- monitoring
Feature
Membership Configmanagement Policy Controller Monitoring Specifies the backends Policy Controller should export metrics to. For example, to specify metrics should be exported to Cloud Monitoring and Prometheus, specify backends: ["cloudmonitoring", "prometheus"]. Default: ["cloudmonitoring", "prometheus"]
- mutation_
enabled bool Enables mutation in policy controller. If true, mutation CRDs, webhook, and controller deployment will be deployed to the cluster.
- referential_
rules_ boolenabled Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated.
- template_
library_ boolinstalled Installs the default template library along with Policy Controller.
- audit
Interval StringSeconds Sets the interval for Policy Controller Audit Scans (in seconds). When set to 0, this disables audit functionality altogether.
- enabled Boolean
Enables the installation of Policy Controller. If false, the rest of PolicyController fields take no effect.
- exemptable
Namespaces List<String> The set of namespaces that are excluded from Policy Controller checks. Namespaces do not need to currently exist on the cluster.
- log
Denies BooleanEnabled Logs all denies and dry run failures.
- monitoring Property Map
Specifies the backends Policy Controller should export metrics to. For example, to specify metrics should be exported to Cloud Monitoring and Prometheus, specify backends: ["cloudmonitoring", "prometheus"]. Default: ["cloudmonitoring", "prometheus"]
- mutation
Enabled Boolean Enables mutation in policy controller. If true, mutation CRDs, webhook, and controller deployment will be deployed to the cluster.
- referential
Rules BooleanEnabled Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated.
- template
Library BooleanInstalled Installs the default template library along with Policy Controller.
FeatureMembershipConfigmanagementPolicyControllerMonitoring
- Backends List<string>
- Backends []string
- backends List<String>
- backends string[]
- backends Sequence[str]
- backends List<String>
FeatureMembershipMesh
- Control
Plane string Deprecated in favor of the
management
field- Management string
Whether to automatically manage Service Mesh. Can either be
MANAGEMENT_AUTOMATIC
orMANAGEMENT_MANUAL
.
- Control
Plane string Deprecated in favor of the
management
field- Management string
Whether to automatically manage Service Mesh. Can either be
MANAGEMENT_AUTOMATIC
orMANAGEMENT_MANUAL
.
- control
Plane String Deprecated in favor of the
management
field- management String
Whether to automatically manage Service Mesh. Can either be
MANAGEMENT_AUTOMATIC
orMANAGEMENT_MANUAL
.
- control
Plane string Deprecated in favor of the
management
field- management string
Whether to automatically manage Service Mesh. Can either be
MANAGEMENT_AUTOMATIC
orMANAGEMENT_MANUAL
.
- control_
plane str Deprecated in favor of the
management
field- management str
Whether to automatically manage Service Mesh. Can either be
MANAGEMENT_AUTOMATIC
orMANAGEMENT_MANUAL
.
- control
Plane String Deprecated in favor of the
management
field- management String
Whether to automatically manage Service Mesh. Can either be
MANAGEMENT_AUTOMATIC
orMANAGEMENT_MANUAL
.
Package Details
- Repository
- Google Cloud (GCP) Classic pulumi/pulumi-gcp
- License
- Apache-2.0
- Notes
This Pulumi package is based on the
google-beta
Terraform Provider.