gcp.gkehub.Feature
Explore with Pulumi AI
Feature represents the settings and status of any Hub Feature.
To get more information about Feature, see:
- API documentation
- How-to Guides
Example Usage
Gkehub Feature Multi Cluster Ingress
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const cluster = new gcp.container.Cluster("cluster", {
    name: "my-cluster",
    location: "us-central1-a",
    initialNodeCount: 1,
});
const membership = new gcp.gkehub.Membership("membership", {
    membershipId: "my-membership",
    endpoint: {
        gkeCluster: {
            resourceLink: pulumi.interpolate`//container.googleapis.com/${cluster.id}`,
        },
    },
});
const feature = new gcp.gkehub.Feature("feature", {
    name: "multiclusteringress",
    location: "global",
    spec: {
        multiclusteringress: {
            configMembership: membership.id,
        },
    },
});
import pulumi
import pulumi_gcp as gcp
cluster = gcp.container.Cluster("cluster",
    name="my-cluster",
    location="us-central1-a",
    initial_node_count=1)
membership = gcp.gkehub.Membership("membership",
    membership_id="my-membership",
    endpoint={
        "gke_cluster": {
            "resource_link": cluster.id.apply(lambda id: f"//container.googleapis.com/{id}"),
        },
    })
feature = gcp.gkehub.Feature("feature",
    name="multiclusteringress",
    location="global",
    spec={
        "multiclusteringress": {
            "config_membership": membership.id,
        },
    })
package main
import (
	"fmt"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/container"
	"github.com/pulumi/pulumi-gcp/sdk/v8/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{
			Name:             pulumi.String("my-cluster"),
			Location:         pulumi.String("us-central1-a"),
			InitialNodeCount: pulumi.Int(1),
		})
		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),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = gkehub.NewFeature(ctx, "feature", &gkehub.FeatureArgs{
			Name:     pulumi.String("multiclusteringress"),
			Location: pulumi.String("global"),
			Spec: &gkehub.FeatureSpecArgs{
				Multiclusteringress: &gkehub.FeatureSpecMulticlusteringressArgs{
					ConfigMembership: membership.ID(),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
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()
    {
        Name = "my-cluster",
        Location = "us-central1-a",
        InitialNodeCount = 1,
    });
    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}"),
            },
        },
    });
    var feature = new Gcp.GkeHub.Feature("feature", new()
    {
        Name = "multiclusteringress",
        Location = "global",
        Spec = new Gcp.GkeHub.Inputs.FeatureSpecArgs
        {
            Multiclusteringress = new Gcp.GkeHub.Inputs.FeatureSpecMulticlusteringressArgs
            {
                ConfigMembership = membership.Id,
            },
        },
    });
});
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.inputs.FeatureSpecArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureSpecMulticlusteringressArgs;
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()
            .name("my-cluster")
            .location("us-central1-a")
            .initialNodeCount(1)
            .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());
        var feature = new Feature("feature", FeatureArgs.builder()
            .name("multiclusteringress")
            .location("global")
            .spec(FeatureSpecArgs.builder()
                .multiclusteringress(FeatureSpecMulticlusteringressArgs.builder()
                    .configMembership(membership.id())
                    .build())
                .build())
            .build());
    }
}
resources:
  cluster:
    type: gcp:container:Cluster
    properties:
      name: my-cluster
      location: us-central1-a
      initialNodeCount: 1
  membership:
    type: gcp:gkehub:Membership
    properties:
      membershipId: my-membership
      endpoint:
        gkeCluster:
          resourceLink: //container.googleapis.com/${cluster.id}
  feature:
    type: gcp:gkehub:Feature
    properties:
      name: multiclusteringress
      location: global
      spec:
        multiclusteringress:
          configMembership: ${membership.id}
Gkehub Feature Multi Cluster Service Discovery
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const feature = new gcp.gkehub.Feature("feature", {
    name: "multiclusterservicediscovery",
    location: "global",
    labels: {
        foo: "bar",
    },
});
import pulumi
import pulumi_gcp as gcp
feature = gcp.gkehub.Feature("feature",
    name="multiclusterservicediscovery",
    location="global",
    labels={
        "foo": "bar",
    })
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/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{
			Name:     pulumi.String("multiclusterservicediscovery"),
			Location: pulumi.String("global"),
			Labels: pulumi.StringMap{
				"foo": pulumi.String("bar"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
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()
    {
        Name = "multiclusterservicediscovery",
        Location = "global",
        Labels = 
        {
            { "foo", "bar" },
        },
    });
});
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 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()
            .name("multiclusterservicediscovery")
            .location("global")
            .labels(Map.of("foo", "bar"))
            .build());
    }
}
resources:
  feature:
    type: gcp:gkehub:Feature
    properties:
      name: multiclusterservicediscovery
      location: global
      labels:
        foo: bar
Gkehub Feature Anthos Service Mesh
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const feature = new gcp.gkehub.Feature("feature", {
    name: "servicemesh",
    location: "global",
});
import pulumi
import pulumi_gcp as gcp
feature = gcp.gkehub.Feature("feature",
    name="servicemesh",
    location="global")
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/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{
			Name:     pulumi.String("servicemesh"),
			Location: pulumi.String("global"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
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()
    {
        Name = "servicemesh",
        Location = "global",
    });
});
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 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()
            .name("servicemesh")
            .location("global")
            .build());
    }
}
resources:
  feature:
    type: gcp:gkehub:Feature
    properties:
      name: servicemesh
      location: global
Enable Fleet Observability For Default Logs With Copy
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const feature = new gcp.gkehub.Feature("feature", {
    name: "fleetobservability",
    location: "global",
    spec: {
        fleetobservability: {
            loggingConfig: {
                defaultConfig: {
                    mode: "COPY",
                },
            },
        },
    },
});
import pulumi
import pulumi_gcp as gcp
feature = gcp.gkehub.Feature("feature",
    name="fleetobservability",
    location="global",
    spec={
        "fleetobservability": {
            "logging_config": {
                "default_config": {
                    "mode": "COPY",
                },
            },
        },
    })
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/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{
			Name:     pulumi.String("fleetobservability"),
			Location: pulumi.String("global"),
			Spec: &gkehub.FeatureSpecArgs{
				Fleetobservability: &gkehub.FeatureSpecFleetobservabilityArgs{
					LoggingConfig: &gkehub.FeatureSpecFleetobservabilityLoggingConfigArgs{
						DefaultConfig: &gkehub.FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs{
							Mode: pulumi.String("COPY"),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
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()
    {
        Name = "fleetobservability",
        Location = "global",
        Spec = new Gcp.GkeHub.Inputs.FeatureSpecArgs
        {
            Fleetobservability = new Gcp.GkeHub.Inputs.FeatureSpecFleetobservabilityArgs
            {
                LoggingConfig = new Gcp.GkeHub.Inputs.FeatureSpecFleetobservabilityLoggingConfigArgs
                {
                    DefaultConfig = new Gcp.GkeHub.Inputs.FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs
                    {
                        Mode = "COPY",
                    },
                },
            },
        },
    });
});
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.gcp.gkehub.inputs.FeatureSpecArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureSpecFleetobservabilityArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureSpecFleetobservabilityLoggingConfigArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs;
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()
            .name("fleetobservability")
            .location("global")
            .spec(FeatureSpecArgs.builder()
                .fleetobservability(FeatureSpecFleetobservabilityArgs.builder()
                    .loggingConfig(FeatureSpecFleetobservabilityLoggingConfigArgs.builder()
                        .defaultConfig(FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs.builder()
                            .mode("COPY")
                            .build())
                        .build())
                    .build())
                .build())
            .build());
    }
}
resources:
  feature:
    type: gcp:gkehub:Feature
    properties:
      name: fleetobservability
      location: global
      spec:
        fleetobservability:
          loggingConfig:
            defaultConfig:
              mode: COPY
Enable Fleet Observability For Scope Logs With Move
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const feature = new gcp.gkehub.Feature("feature", {
    name: "fleetobservability",
    location: "global",
    spec: {
        fleetobservability: {
            loggingConfig: {
                fleetScopeLogsConfig: {
                    mode: "MOVE",
                },
            },
        },
    },
});
import pulumi
import pulumi_gcp as gcp
feature = gcp.gkehub.Feature("feature",
    name="fleetobservability",
    location="global",
    spec={
        "fleetobservability": {
            "logging_config": {
                "fleet_scope_logs_config": {
                    "mode": "MOVE",
                },
            },
        },
    })
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/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{
			Name:     pulumi.String("fleetobservability"),
			Location: pulumi.String("global"),
			Spec: &gkehub.FeatureSpecArgs{
				Fleetobservability: &gkehub.FeatureSpecFleetobservabilityArgs{
					LoggingConfig: &gkehub.FeatureSpecFleetobservabilityLoggingConfigArgs{
						FleetScopeLogsConfig: &gkehub.FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs{
							Mode: pulumi.String("MOVE"),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
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()
    {
        Name = "fleetobservability",
        Location = "global",
        Spec = new Gcp.GkeHub.Inputs.FeatureSpecArgs
        {
            Fleetobservability = new Gcp.GkeHub.Inputs.FeatureSpecFleetobservabilityArgs
            {
                LoggingConfig = new Gcp.GkeHub.Inputs.FeatureSpecFleetobservabilityLoggingConfigArgs
                {
                    FleetScopeLogsConfig = new Gcp.GkeHub.Inputs.FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs
                    {
                        Mode = "MOVE",
                    },
                },
            },
        },
    });
});
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.gcp.gkehub.inputs.FeatureSpecArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureSpecFleetobservabilityArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureSpecFleetobservabilityLoggingConfigArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs;
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()
            .name("fleetobservability")
            .location("global")
            .spec(FeatureSpecArgs.builder()
                .fleetobservability(FeatureSpecFleetobservabilityArgs.builder()
                    .loggingConfig(FeatureSpecFleetobservabilityLoggingConfigArgs.builder()
                        .fleetScopeLogsConfig(FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs.builder()
                            .mode("MOVE")
                            .build())
                        .build())
                    .build())
                .build())
            .build());
    }
}
resources:
  feature:
    type: gcp:gkehub:Feature
    properties:
      name: fleetobservability
      location: global
      spec:
        fleetobservability:
          loggingConfig:
            fleetScopeLogsConfig:
              mode: MOVE
Enable Fleet Observability For Both Default And Scope Logs
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const feature = new gcp.gkehub.Feature("feature", {
    name: "fleetobservability",
    location: "global",
    spec: {
        fleetobservability: {
            loggingConfig: {
                defaultConfig: {
                    mode: "COPY",
                },
                fleetScopeLogsConfig: {
                    mode: "MOVE",
                },
            },
        },
    },
});
import pulumi
import pulumi_gcp as gcp
feature = gcp.gkehub.Feature("feature",
    name="fleetobservability",
    location="global",
    spec={
        "fleetobservability": {
            "logging_config": {
                "default_config": {
                    "mode": "COPY",
                },
                "fleet_scope_logs_config": {
                    "mode": "MOVE",
                },
            },
        },
    })
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/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{
			Name:     pulumi.String("fleetobservability"),
			Location: pulumi.String("global"),
			Spec: &gkehub.FeatureSpecArgs{
				Fleetobservability: &gkehub.FeatureSpecFleetobservabilityArgs{
					LoggingConfig: &gkehub.FeatureSpecFleetobservabilityLoggingConfigArgs{
						DefaultConfig: &gkehub.FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs{
							Mode: pulumi.String("COPY"),
						},
						FleetScopeLogsConfig: &gkehub.FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs{
							Mode: pulumi.String("MOVE"),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
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()
    {
        Name = "fleetobservability",
        Location = "global",
        Spec = new Gcp.GkeHub.Inputs.FeatureSpecArgs
        {
            Fleetobservability = new Gcp.GkeHub.Inputs.FeatureSpecFleetobservabilityArgs
            {
                LoggingConfig = new Gcp.GkeHub.Inputs.FeatureSpecFleetobservabilityLoggingConfigArgs
                {
                    DefaultConfig = new Gcp.GkeHub.Inputs.FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs
                    {
                        Mode = "COPY",
                    },
                    FleetScopeLogsConfig = new Gcp.GkeHub.Inputs.FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs
                    {
                        Mode = "MOVE",
                    },
                },
            },
        },
    });
});
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.gcp.gkehub.inputs.FeatureSpecArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureSpecFleetobservabilityArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureSpecFleetobservabilityLoggingConfigArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs;
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()
            .name("fleetobservability")
            .location("global")
            .spec(FeatureSpecArgs.builder()
                .fleetobservability(FeatureSpecFleetobservabilityArgs.builder()
                    .loggingConfig(FeatureSpecFleetobservabilityLoggingConfigArgs.builder()
                        .defaultConfig(FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs.builder()
                            .mode("COPY")
                            .build())
                        .fleetScopeLogsConfig(FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs.builder()
                            .mode("MOVE")
                            .build())
                        .build())
                    .build())
                .build())
            .build());
    }
}
resources:
  feature:
    type: gcp:gkehub:Feature
    properties:
      name: fleetobservability
      location: global
      spec:
        fleetobservability:
          loggingConfig:
            defaultConfig:
              mode: COPY
            fleetScopeLogsConfig:
              mode: MOVE
Enable Fleet Default Member Config Service Mesh
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const feature = new gcp.gkehub.Feature("feature", {
    name: "servicemesh",
    location: "global",
    fleetDefaultMemberConfig: {
        mesh: {
            management: "MANAGEMENT_AUTOMATIC",
        },
    },
});
import pulumi
import pulumi_gcp as gcp
feature = gcp.gkehub.Feature("feature",
    name="servicemesh",
    location="global",
    fleet_default_member_config={
        "mesh": {
            "management": "MANAGEMENT_AUTOMATIC",
        },
    })
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/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{
			Name:     pulumi.String("servicemesh"),
			Location: pulumi.String("global"),
			FleetDefaultMemberConfig: &gkehub.FeatureFleetDefaultMemberConfigArgs{
				Mesh: &gkehub.FeatureFleetDefaultMemberConfigMeshArgs{
					Management: pulumi.String("MANAGEMENT_AUTOMATIC"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
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()
    {
        Name = "servicemesh",
        Location = "global",
        FleetDefaultMemberConfig = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigArgs
        {
            Mesh = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigMeshArgs
            {
                Management = "MANAGEMENT_AUTOMATIC",
            },
        },
    });
});
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.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigMeshArgs;
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()
            .name("servicemesh")
            .location("global")
            .fleetDefaultMemberConfig(FeatureFleetDefaultMemberConfigArgs.builder()
                .mesh(FeatureFleetDefaultMemberConfigMeshArgs.builder()
                    .management("MANAGEMENT_AUTOMATIC")
                    .build())
                .build())
            .build());
    }
}
resources:
  feature:
    type: gcp:gkehub:Feature
    properties:
      name: servicemesh
      location: global
      fleetDefaultMemberConfig:
        mesh:
          management: MANAGEMENT_AUTOMATIC
Enable Fleet Default Member Config Configmanagement
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const feature = new gcp.gkehub.Feature("feature", {
    name: "configmanagement",
    location: "global",
    fleetDefaultMemberConfig: {
        configmanagement: {
            configSync: {
                git: {
                    syncRepo: "https://github.com/hashicorp/terraform",
                },
            },
        },
    },
});
import pulumi
import pulumi_gcp as gcp
feature = gcp.gkehub.Feature("feature",
    name="configmanagement",
    location="global",
    fleet_default_member_config={
        "configmanagement": {
            "config_sync": {
                "git": {
                    "sync_repo": "https://github.com/hashicorp/terraform",
                },
            },
        },
    })
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/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{
			Name:     pulumi.String("configmanagement"),
			Location: pulumi.String("global"),
			FleetDefaultMemberConfig: &gkehub.FeatureFleetDefaultMemberConfigArgs{
				Configmanagement: &gkehub.FeatureFleetDefaultMemberConfigConfigmanagementArgs{
					ConfigSync: &gkehub.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncArgs{
						Git: &gkehub.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGitArgs{
							SyncRepo: pulumi.String("https://github.com/hashicorp/terraform"),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
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()
    {
        Name = "configmanagement",
        Location = "global",
        FleetDefaultMemberConfig = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigArgs
        {
            Configmanagement = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigConfigmanagementArgs
            {
                ConfigSync = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncArgs
                {
                    Git = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGitArgs
                    {
                        SyncRepo = "https://github.com/hashicorp/terraform",
                    },
                },
            },
        },
    });
});
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.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigConfigmanagementArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGitArgs;
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()
            .name("configmanagement")
            .location("global")
            .fleetDefaultMemberConfig(FeatureFleetDefaultMemberConfigArgs.builder()
                .configmanagement(FeatureFleetDefaultMemberConfigConfigmanagementArgs.builder()
                    .configSync(FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncArgs.builder()
                        .git(FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGitArgs.builder()
                            .syncRepo("https://github.com/hashicorp/terraform")
                            .build())
                        .build())
                    .build())
                .build())
            .build());
    }
}
resources:
  feature:
    type: gcp:gkehub:Feature
    properties:
      name: configmanagement
      location: global
      fleetDefaultMemberConfig:
        configmanagement:
          configSync:
            git:
              syncRepo: https://github.com/hashicorp/terraform
Enable Fleet Default Member Config Policycontroller
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const feature = new gcp.gkehub.Feature("feature", {
    name: "policycontroller",
    location: "global",
    fleetDefaultMemberConfig: {
        policycontroller: {
            policyControllerHubConfig: {
                installSpec: "INSTALL_SPEC_ENABLED",
                exemptableNamespaces: ["foo"],
                policyContent: {
                    bundles: [{
                        bundle: "policy-essentials-v2022",
                        exemptedNamespaces: [
                            "foo",
                            "bar",
                        ],
                    }],
                    templateLibrary: {
                        installation: "ALL",
                    },
                },
                auditIntervalSeconds: 30,
                referentialRulesEnabled: true,
            },
        },
    },
});
import pulumi
import pulumi_gcp as gcp
feature = gcp.gkehub.Feature("feature",
    name="policycontroller",
    location="global",
    fleet_default_member_config={
        "policycontroller": {
            "policy_controller_hub_config": {
                "install_spec": "INSTALL_SPEC_ENABLED",
                "exemptable_namespaces": ["foo"],
                "policy_content": {
                    "bundles": [{
                        "bundle": "policy-essentials-v2022",
                        "exempted_namespaces": [
                            "foo",
                            "bar",
                        ],
                    }],
                    "template_library": {
                        "installation": "ALL",
                    },
                },
                "audit_interval_seconds": 30,
                "referential_rules_enabled": True,
            },
        },
    })
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/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{
			Name:     pulumi.String("policycontroller"),
			Location: pulumi.String("global"),
			FleetDefaultMemberConfig: &gkehub.FeatureFleetDefaultMemberConfigArgs{
				Policycontroller: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerArgs{
					PolicyControllerHubConfig: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigArgs{
						InstallSpec: pulumi.String("INSTALL_SPEC_ENABLED"),
						ExemptableNamespaces: pulumi.StringArray{
							pulumi.String("foo"),
						},
						PolicyContent: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentArgs{
							Bundles: gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentBundleArray{
								&gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentBundleArgs{
									Bundle: pulumi.String("policy-essentials-v2022"),
									ExemptedNamespaces: pulumi.StringArray{
										pulumi.String("foo"),
										pulumi.String("bar"),
									},
								},
							},
							TemplateLibrary: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryArgs{
								Installation: pulumi.String("ALL"),
							},
						},
						AuditIntervalSeconds:    pulumi.Int(30),
						ReferentialRulesEnabled: pulumi.Bool(true),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
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()
    {
        Name = "policycontroller",
        Location = "global",
        FleetDefaultMemberConfig = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigArgs
        {
            Policycontroller = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerArgs
            {
                PolicyControllerHubConfig = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigArgs
                {
                    InstallSpec = "INSTALL_SPEC_ENABLED",
                    ExemptableNamespaces = new[]
                    {
                        "foo",
                    },
                    PolicyContent = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentArgs
                    {
                        Bundles = new[]
                        {
                            new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentBundleArgs
                            {
                                Bundle = "policy-essentials-v2022",
                                ExemptedNamespaces = new[]
                                {
                                    "foo",
                                    "bar",
                                },
                            },
                        },
                        TemplateLibrary = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryArgs
                        {
                            Installation = "ALL",
                        },
                    },
                    AuditIntervalSeconds = 30,
                    ReferentialRulesEnabled = true,
                },
            },
        },
    });
});
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.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigPolicycontrollerArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryArgs;
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()
            .name("policycontroller")
            .location("global")
            .fleetDefaultMemberConfig(FeatureFleetDefaultMemberConfigArgs.builder()
                .policycontroller(FeatureFleetDefaultMemberConfigPolicycontrollerArgs.builder()
                    .policyControllerHubConfig(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigArgs.builder()
                        .installSpec("INSTALL_SPEC_ENABLED")
                        .exemptableNamespaces("foo")
                        .policyContent(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentArgs.builder()
                            .bundles(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentBundleArgs.builder()
                                .bundle("policy-essentials-v2022")
                                .exemptedNamespaces(                                
                                    "foo",
                                    "bar")
                                .build())
                            .templateLibrary(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryArgs.builder()
                                .installation("ALL")
                                .build())
                            .build())
                        .auditIntervalSeconds(30)
                        .referentialRulesEnabled(true)
                        .build())
                    .build())
                .build())
            .build());
    }
}
resources:
  feature:
    type: gcp:gkehub:Feature
    properties:
      name: policycontroller
      location: global
      fleetDefaultMemberConfig:
        policycontroller:
          policyControllerHubConfig:
            installSpec: INSTALL_SPEC_ENABLED
            exemptableNamespaces:
              - foo
            policyContent:
              bundles:
                - bundle: policy-essentials-v2022
                  exemptedNamespaces:
                    - foo
                    - bar
              templateLibrary:
                installation: ALL
            auditIntervalSeconds: 30
            referentialRulesEnabled: true
Enable Fleet Default Member Config Policycontroller Full
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const feature = new gcp.gkehub.Feature("feature", {
    name: "policycontroller",
    location: "global",
    fleetDefaultMemberConfig: {
        policycontroller: {
            policyControllerHubConfig: {
                installSpec: "INSTALL_SPEC_SUSPENDED",
                policyContent: {
                    bundles: [
                        {
                            bundle: "pci-dss-v3.2.1",
                            exemptedNamespaces: [
                                "baz",
                                "bar",
                            ],
                        },
                        {
                            bundle: "nist-sp-800-190",
                            exemptedNamespaces: [],
                        },
                    ],
                    templateLibrary: {
                        installation: "ALL",
                    },
                },
                constraintViolationLimit: 50,
                referentialRulesEnabled: true,
                logDeniesEnabled: true,
                mutationEnabled: true,
                deploymentConfigs: [
                    {
                        component: "admission",
                        replicaCount: 2,
                        podAffinity: "ANTI_AFFINITY",
                    },
                    {
                        component: "audit",
                        containerResources: {
                            limits: {
                                memory: "1Gi",
                                cpu: "1.5",
                            },
                            requests: {
                                memory: "500Mi",
                                cpu: "150m",
                            },
                        },
                        podTolerations: [{
                            key: "key1",
                            operator: "Equal",
                            value: "value1",
                            effect: "NoSchedule",
                        }],
                    },
                ],
                monitoring: {
                    backends: ["PROMETHEUS"],
                },
            },
        },
    },
});
import pulumi
import pulumi_gcp as gcp
feature = gcp.gkehub.Feature("feature",
    name="policycontroller",
    location="global",
    fleet_default_member_config={
        "policycontroller": {
            "policy_controller_hub_config": {
                "install_spec": "INSTALL_SPEC_SUSPENDED",
                "policy_content": {
                    "bundles": [
                        {
                            "bundle": "pci-dss-v3.2.1",
                            "exempted_namespaces": [
                                "baz",
                                "bar",
                            ],
                        },
                        {
                            "bundle": "nist-sp-800-190",
                            "exempted_namespaces": [],
                        },
                    ],
                    "template_library": {
                        "installation": "ALL",
                    },
                },
                "constraint_violation_limit": 50,
                "referential_rules_enabled": True,
                "log_denies_enabled": True,
                "mutation_enabled": True,
                "deployment_configs": [
                    {
                        "component": "admission",
                        "replica_count": 2,
                        "pod_affinity": "ANTI_AFFINITY",
                    },
                    {
                        "component": "audit",
                        "container_resources": {
                            "limits": {
                                "memory": "1Gi",
                                "cpu": "1.5",
                            },
                            "requests": {
                                "memory": "500Mi",
                                "cpu": "150m",
                            },
                        },
                        "pod_tolerations": [{
                            "key": "key1",
                            "operator": "Equal",
                            "value": "value1",
                            "effect": "NoSchedule",
                        }],
                    },
                ],
                "monitoring": {
                    "backends": ["PROMETHEUS"],
                },
            },
        },
    })
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/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{
			Name:     pulumi.String("policycontroller"),
			Location: pulumi.String("global"),
			FleetDefaultMemberConfig: &gkehub.FeatureFleetDefaultMemberConfigArgs{
				Policycontroller: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerArgs{
					PolicyControllerHubConfig: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigArgs{
						InstallSpec: pulumi.String("INSTALL_SPEC_SUSPENDED"),
						PolicyContent: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentArgs{
							Bundles: gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentBundleArray{
								&gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentBundleArgs{
									Bundle: pulumi.String("pci-dss-v3.2.1"),
									ExemptedNamespaces: pulumi.StringArray{
										pulumi.String("baz"),
										pulumi.String("bar"),
									},
								},
								&gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentBundleArgs{
									Bundle:             pulumi.String("nist-sp-800-190"),
									ExemptedNamespaces: pulumi.StringArray{},
								},
							},
							TemplateLibrary: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryArgs{
								Installation: pulumi.String("ALL"),
							},
						},
						ConstraintViolationLimit: pulumi.Int(50),
						ReferentialRulesEnabled:  pulumi.Bool(true),
						LogDeniesEnabled:         pulumi.Bool(true),
						MutationEnabled:          pulumi.Bool(true),
						DeploymentConfigs: gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigArray{
							&gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigArgs{
								Component:    pulumi.String("admission"),
								ReplicaCount: pulumi.Int(2),
								PodAffinity:  pulumi.String("ANTI_AFFINITY"),
							},
							&gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigArgs{
								Component: pulumi.String("audit"),
								ContainerResources: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesArgs{
									Limits: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesLimitsArgs{
										Memory: pulumi.String("1Gi"),
										Cpu:    pulumi.String("1.5"),
									},
									Requests: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesRequestsArgs{
										Memory: pulumi.String("500Mi"),
										Cpu:    pulumi.String("150m"),
									},
								},
								PodTolerations: gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigPodTolerationArray{
									&gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigPodTolerationArgs{
										Key:      pulumi.String("key1"),
										Operator: pulumi.String("Equal"),
										Value:    pulumi.String("value1"),
										Effect:   pulumi.String("NoSchedule"),
									},
								},
							},
						},
						Monitoring: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigMonitoringArgs{
							Backends: pulumi.StringArray{
								pulumi.String("PROMETHEUS"),
							},
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
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()
    {
        Name = "policycontroller",
        Location = "global",
        FleetDefaultMemberConfig = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigArgs
        {
            Policycontroller = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerArgs
            {
                PolicyControllerHubConfig = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigArgs
                {
                    InstallSpec = "INSTALL_SPEC_SUSPENDED",
                    PolicyContent = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentArgs
                    {
                        Bundles = new[]
                        {
                            new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentBundleArgs
                            {
                                Bundle = "pci-dss-v3.2.1",
                                ExemptedNamespaces = new[]
                                {
                                    "baz",
                                    "bar",
                                },
                            },
                            new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentBundleArgs
                            {
                                Bundle = "nist-sp-800-190",
                                ExemptedNamespaces = new() { },
                            },
                        },
                        TemplateLibrary = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryArgs
                        {
                            Installation = "ALL",
                        },
                    },
                    ConstraintViolationLimit = 50,
                    ReferentialRulesEnabled = true,
                    LogDeniesEnabled = true,
                    MutationEnabled = true,
                    DeploymentConfigs = new[]
                    {
                        new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigArgs
                        {
                            Component = "admission",
                            ReplicaCount = 2,
                            PodAffinity = "ANTI_AFFINITY",
                        },
                        new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigArgs
                        {
                            Component = "audit",
                            ContainerResources = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesArgs
                            {
                                Limits = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesLimitsArgs
                                {
                                    Memory = "1Gi",
                                    Cpu = "1.5",
                                },
                                Requests = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesRequestsArgs
                                {
                                    Memory = "500Mi",
                                    Cpu = "150m",
                                },
                            },
                            PodTolerations = new[]
                            {
                                new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigPodTolerationArgs
                                {
                                    Key = "key1",
                                    Operator = "Equal",
                                    Value = "value1",
                                    Effect = "NoSchedule",
                                },
                            },
                        },
                    },
                    Monitoring = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigMonitoringArgs
                    {
                        Backends = new[]
                        {
                            "PROMETHEUS",
                        },
                    },
                },
            },
        },
    });
});
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.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigPolicycontrollerArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigMonitoringArgs;
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()
            .name("policycontroller")
            .location("global")
            .fleetDefaultMemberConfig(FeatureFleetDefaultMemberConfigArgs.builder()
                .policycontroller(FeatureFleetDefaultMemberConfigPolicycontrollerArgs.builder()
                    .policyControllerHubConfig(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigArgs.builder()
                        .installSpec("INSTALL_SPEC_SUSPENDED")
                        .policyContent(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentArgs.builder()
                            .bundles(                            
                                FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentBundleArgs.builder()
                                    .bundle("pci-dss-v3.2.1")
                                    .exemptedNamespaces(                                    
                                        "baz",
                                        "bar")
                                    .build(),
                                FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentBundleArgs.builder()
                                    .bundle("nist-sp-800-190")
                                    .exemptedNamespaces()
                                    .build())
                            .templateLibrary(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryArgs.builder()
                                .installation("ALL")
                                .build())
                            .build())
                        .constraintViolationLimit(50)
                        .referentialRulesEnabled(true)
                        .logDeniesEnabled(true)
                        .mutationEnabled(true)
                        .deploymentConfigs(                        
                            FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigArgs.builder()
                                .component("admission")
                                .replicaCount(2)
                                .podAffinity("ANTI_AFFINITY")
                                .build(),
                            FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigArgs.builder()
                                .component("audit")
                                .containerResources(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesArgs.builder()
                                    .limits(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesLimitsArgs.builder()
                                        .memory("1Gi")
                                        .cpu("1.5")
                                        .build())
                                    .requests(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesRequestsArgs.builder()
                                        .memory("500Mi")
                                        .cpu("150m")
                                        .build())
                                    .build())
                                .podTolerations(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigPodTolerationArgs.builder()
                                    .key("key1")
                                    .operator("Equal")
                                    .value("value1")
                                    .effect("NoSchedule")
                                    .build())
                                .build())
                        .monitoring(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigMonitoringArgs.builder()
                            .backends("PROMETHEUS")
                            .build())
                        .build())
                    .build())
                .build())
            .build());
    }
}
resources:
  feature:
    type: gcp:gkehub:Feature
    properties:
      name: policycontroller
      location: global
      fleetDefaultMemberConfig:
        policycontroller:
          policyControllerHubConfig:
            installSpec: INSTALL_SPEC_SUSPENDED
            policyContent:
              bundles:
                - bundle: pci-dss-v3.2.1
                  exemptedNamespaces:
                    - baz
                    - bar
                - bundle: nist-sp-800-190
                  exemptedNamespaces: []
              templateLibrary:
                installation: ALL
            constraintViolationLimit: 50
            referentialRulesEnabled: true
            logDeniesEnabled: true
            mutationEnabled: true
            deploymentConfigs:
              - component: admission
                replicaCount: 2
                podAffinity: ANTI_AFFINITY
              - component: audit
                containerResources:
                  limits:
                    memory: 1Gi
                    cpu: '1.5'
                  requests:
                    memory: 500Mi
                    cpu: 150m
                podTolerations:
                  - key: key1
                    operator: Equal
                    value: value1
                    effect: NoSchedule
            monitoring:
              backends:
                - PROMETHEUS
Enable Fleet Default Member Config Policycontroller Minimal
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const feature = new gcp.gkehub.Feature("feature", {
    name: "policycontroller",
    location: "global",
    fleetDefaultMemberConfig: {
        policycontroller: {
            policyControllerHubConfig: {
                installSpec: "INSTALL_SPEC_ENABLED",
                policyContent: {},
                constraintViolationLimit: 50,
                referentialRulesEnabled: true,
                logDeniesEnabled: true,
                mutationEnabled: true,
                deploymentConfigs: [{
                    component: "admission",
                }],
                monitoring: {},
            },
        },
    },
});
import pulumi
import pulumi_gcp as gcp
feature = gcp.gkehub.Feature("feature",
    name="policycontroller",
    location="global",
    fleet_default_member_config={
        "policycontroller": {
            "policy_controller_hub_config": {
                "install_spec": "INSTALL_SPEC_ENABLED",
                "policy_content": {},
                "constraint_violation_limit": 50,
                "referential_rules_enabled": True,
                "log_denies_enabled": True,
                "mutation_enabled": True,
                "deployment_configs": [{
                    "component": "admission",
                }],
                "monitoring": {},
            },
        },
    })
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/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{
			Name:     pulumi.String("policycontroller"),
			Location: pulumi.String("global"),
			FleetDefaultMemberConfig: &gkehub.FeatureFleetDefaultMemberConfigArgs{
				Policycontroller: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerArgs{
					PolicyControllerHubConfig: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigArgs{
						InstallSpec:              pulumi.String("INSTALL_SPEC_ENABLED"),
						PolicyContent:            &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentArgs{},
						ConstraintViolationLimit: pulumi.Int(50),
						ReferentialRulesEnabled:  pulumi.Bool(true),
						LogDeniesEnabled:         pulumi.Bool(true),
						MutationEnabled:          pulumi.Bool(true),
						DeploymentConfigs: gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigArray{
							&gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigArgs{
								Component: pulumi.String("admission"),
							},
						},
						Monitoring: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigMonitoringArgs{},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
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()
    {
        Name = "policycontroller",
        Location = "global",
        FleetDefaultMemberConfig = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigArgs
        {
            Policycontroller = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerArgs
            {
                PolicyControllerHubConfig = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigArgs
                {
                    InstallSpec = "INSTALL_SPEC_ENABLED",
                    PolicyContent = null,
                    ConstraintViolationLimit = 50,
                    ReferentialRulesEnabled = true,
                    LogDeniesEnabled = true,
                    MutationEnabled = true,
                    DeploymentConfigs = new[]
                    {
                        new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigArgs
                        {
                            Component = "admission",
                        },
                    },
                    Monitoring = null,
                },
            },
        },
    });
});
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.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigPolicycontrollerArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigMonitoringArgs;
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()
            .name("policycontroller")
            .location("global")
            .fleetDefaultMemberConfig(FeatureFleetDefaultMemberConfigArgs.builder()
                .policycontroller(FeatureFleetDefaultMemberConfigPolicycontrollerArgs.builder()
                    .policyControllerHubConfig(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigArgs.builder()
                        .installSpec("INSTALL_SPEC_ENABLED")
                        .policyContent()
                        .constraintViolationLimit(50)
                        .referentialRulesEnabled(true)
                        .logDeniesEnabled(true)
                        .mutationEnabled(true)
                        .deploymentConfigs(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigArgs.builder()
                            .component("admission")
                            .build())
                        .monitoring()
                        .build())
                    .build())
                .build())
            .build());
    }
}
resources:
  feature:
    type: gcp:gkehub:Feature
    properties:
      name: policycontroller
      location: global
      fleetDefaultMemberConfig:
        policycontroller:
          policyControllerHubConfig:
            installSpec: INSTALL_SPEC_ENABLED
            policyContent: {}
            constraintViolationLimit: 50
            referentialRulesEnabled: true
            logDeniesEnabled: true
            mutationEnabled: true
            deploymentConfigs:
              - component: admission
            monitoring: {}
Gkehub Feature Clusterupgrade
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const feature = new gcp.gkehub.Feature("feature", {
    name: "clusterupgrade",
    location: "global",
    spec: {
        clusterupgrade: {
            upstreamFleets: [],
            postConditions: {
                soaking: "60s",
            },
        },
    },
});
import pulumi
import pulumi_gcp as gcp
feature = gcp.gkehub.Feature("feature",
    name="clusterupgrade",
    location="global",
    spec={
        "clusterupgrade": {
            "upstream_fleets": [],
            "post_conditions": {
                "soaking": "60s",
            },
        },
    })
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/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{
			Name:     pulumi.String("clusterupgrade"),
			Location: pulumi.String("global"),
			Spec: &gkehub.FeatureSpecArgs{
				Clusterupgrade: &gkehub.FeatureSpecClusterupgradeArgs{
					UpstreamFleets: pulumi.StringArray{},
					PostConditions: &gkehub.FeatureSpecClusterupgradePostConditionsArgs{
						Soaking: pulumi.String("60s"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
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()
    {
        Name = "clusterupgrade",
        Location = "global",
        Spec = new Gcp.GkeHub.Inputs.FeatureSpecArgs
        {
            Clusterupgrade = new Gcp.GkeHub.Inputs.FeatureSpecClusterupgradeArgs
            {
                UpstreamFleets = new() { },
                PostConditions = new Gcp.GkeHub.Inputs.FeatureSpecClusterupgradePostConditionsArgs
                {
                    Soaking = "60s",
                },
            },
        },
    });
});
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.gcp.gkehub.inputs.FeatureSpecArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureSpecClusterupgradeArgs;
import com.pulumi.gcp.gkehub.inputs.FeatureSpecClusterupgradePostConditionsArgs;
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()
            .name("clusterupgrade")
            .location("global")
            .spec(FeatureSpecArgs.builder()
                .clusterupgrade(FeatureSpecClusterupgradeArgs.builder()
                    .upstreamFleets()
                    .postConditions(FeatureSpecClusterupgradePostConditionsArgs.builder()
                        .soaking("60s")
                        .build())
                    .build())
                .build())
            .build());
    }
}
resources:
  feature:
    type: gcp:gkehub:Feature
    properties:
      name: clusterupgrade
      location: global
      spec:
        clusterupgrade:
          upstreamFleets: []
          postConditions:
            soaking: 60s
Create Feature Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Feature(name: string, args: FeatureArgs, opts?: CustomResourceOptions);@overload
def Feature(resource_name: str,
            args: FeatureArgs,
            opts: Optional[ResourceOptions] = None)
@overload
def Feature(resource_name: str,
            opts: Optional[ResourceOptions] = None,
            location: Optional[str] = None,
            fleet_default_member_config: Optional[FeatureFleetDefaultMemberConfigArgs] = None,
            labels: Optional[Mapping[str, str]] = None,
            name: Optional[str] = None,
            project: Optional[str] = None,
            spec: Optional[FeatureSpecArgs] = None)func NewFeature(ctx *Context, name string, args FeatureArgs, opts ...ResourceOption) (*Feature, error)public Feature(string name, FeatureArgs args, CustomResourceOptions? opts = null)
public Feature(String name, FeatureArgs args)
public Feature(String name, FeatureArgs args, CustomResourceOptions options)
type: gcp:gkehub:Feature
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args FeatureArgs
- 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 FeatureArgs
- 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 FeatureArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args FeatureArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args FeatureArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var featureResource = new Gcp.GkeHub.Feature("featureResource", new()
{
    Location = "string",
    FleetDefaultMemberConfig = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigArgs
    {
        Configmanagement = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigConfigmanagementArgs
        {
            ConfigSync = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncArgs
            {
                Enabled = false,
                Git = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGitArgs
                {
                    SecretType = "string",
                    GcpServiceAccountEmail = "string",
                    HttpsProxy = "string",
                    PolicyDir = "string",
                    SyncBranch = "string",
                    SyncRepo = "string",
                    SyncRev = "string",
                    SyncWaitSecs = "string",
                },
                MetricsGcpServiceAccountEmail = "string",
                Oci = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncOciArgs
                {
                    SecretType = "string",
                    GcpServiceAccountEmail = "string",
                    PolicyDir = "string",
                    SyncRepo = "string",
                    SyncWaitSecs = "string",
                },
                PreventDrift = false,
                SourceFormat = "string",
            },
            Management = "string",
            Version = "string",
        },
        Mesh = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigMeshArgs
        {
            Management = "string",
        },
        Policycontroller = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerArgs
        {
            PolicyControllerHubConfig = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigArgs
            {
                InstallSpec = "string",
                AuditIntervalSeconds = 0,
                ConstraintViolationLimit = 0,
                DeploymentConfigs = new[]
                {
                    new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigArgs
                    {
                        Component = "string",
                        ContainerResources = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesArgs
                        {
                            Limits = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesLimitsArgs
                            {
                                Cpu = "string",
                                Memory = "string",
                            },
                            Requests = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesRequestsArgs
                            {
                                Cpu = "string",
                                Memory = "string",
                            },
                        },
                        PodAffinity = "string",
                        PodTolerations = new[]
                        {
                            new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigPodTolerationArgs
                            {
                                Effect = "string",
                                Key = "string",
                                Operator = "string",
                                Value = "string",
                            },
                        },
                        ReplicaCount = 0,
                    },
                },
                ExemptableNamespaces = new[]
                {
                    "string",
                },
                LogDeniesEnabled = false,
                Monitoring = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigMonitoringArgs
                {
                    Backends = new[]
                    {
                        "string",
                    },
                },
                MutationEnabled = false,
                PolicyContent = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentArgs
                {
                    Bundles = new[]
                    {
                        new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentBundleArgs
                        {
                            Bundle = "string",
                            ExemptedNamespaces = new[]
                            {
                                "string",
                            },
                        },
                    },
                    TemplateLibrary = new Gcp.GkeHub.Inputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryArgs
                    {
                        Installation = "string",
                    },
                },
                ReferentialRulesEnabled = false,
            },
            Version = "string",
        },
    },
    Labels = 
    {
        { "string", "string" },
    },
    Name = "string",
    Project = "string",
    Spec = new Gcp.GkeHub.Inputs.FeatureSpecArgs
    {
        Clusterupgrade = new Gcp.GkeHub.Inputs.FeatureSpecClusterupgradeArgs
        {
            UpstreamFleets = new[]
            {
                "string",
            },
            GkeUpgradeOverrides = new[]
            {
                new Gcp.GkeHub.Inputs.FeatureSpecClusterupgradeGkeUpgradeOverrideArgs
                {
                    PostConditions = new Gcp.GkeHub.Inputs.FeatureSpecClusterupgradeGkeUpgradeOverridePostConditionsArgs
                    {
                        Soaking = "string",
                    },
                    Upgrade = new Gcp.GkeHub.Inputs.FeatureSpecClusterupgradeGkeUpgradeOverrideUpgradeArgs
                    {
                        Name = "string",
                        Version = "string",
                    },
                },
            },
            PostConditions = new Gcp.GkeHub.Inputs.FeatureSpecClusterupgradePostConditionsArgs
            {
                Soaking = "string",
            },
        },
        Fleetobservability = new Gcp.GkeHub.Inputs.FeatureSpecFleetobservabilityArgs
        {
            LoggingConfig = new Gcp.GkeHub.Inputs.FeatureSpecFleetobservabilityLoggingConfigArgs
            {
                DefaultConfig = new Gcp.GkeHub.Inputs.FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs
                {
                    Mode = "string",
                },
                FleetScopeLogsConfig = new Gcp.GkeHub.Inputs.FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs
                {
                    Mode = "string",
                },
            },
        },
        Multiclusteringress = new Gcp.GkeHub.Inputs.FeatureSpecMulticlusteringressArgs
        {
            ConfigMembership = "string",
        },
    },
});
example, err := gkehub.NewFeature(ctx, "featureResource", &gkehub.FeatureArgs{
	Location: pulumi.String("string"),
	FleetDefaultMemberConfig: &gkehub.FeatureFleetDefaultMemberConfigArgs{
		Configmanagement: &gkehub.FeatureFleetDefaultMemberConfigConfigmanagementArgs{
			ConfigSync: &gkehub.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncArgs{
				Enabled: pulumi.Bool(false),
				Git: &gkehub.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGitArgs{
					SecretType:             pulumi.String("string"),
					GcpServiceAccountEmail: pulumi.String("string"),
					HttpsProxy:             pulumi.String("string"),
					PolicyDir:              pulumi.String("string"),
					SyncBranch:             pulumi.String("string"),
					SyncRepo:               pulumi.String("string"),
					SyncRev:                pulumi.String("string"),
					SyncWaitSecs:           pulumi.String("string"),
				},
				MetricsGcpServiceAccountEmail: pulumi.String("string"),
				Oci: &gkehub.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncOciArgs{
					SecretType:             pulumi.String("string"),
					GcpServiceAccountEmail: pulumi.String("string"),
					PolicyDir:              pulumi.String("string"),
					SyncRepo:               pulumi.String("string"),
					SyncWaitSecs:           pulumi.String("string"),
				},
				PreventDrift: pulumi.Bool(false),
				SourceFormat: pulumi.String("string"),
			},
			Management: pulumi.String("string"),
			Version:    pulumi.String("string"),
		},
		Mesh: &gkehub.FeatureFleetDefaultMemberConfigMeshArgs{
			Management: pulumi.String("string"),
		},
		Policycontroller: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerArgs{
			PolicyControllerHubConfig: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigArgs{
				InstallSpec:              pulumi.String("string"),
				AuditIntervalSeconds:     pulumi.Int(0),
				ConstraintViolationLimit: pulumi.Int(0),
				DeploymentConfigs: gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigArray{
					&gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigArgs{
						Component: pulumi.String("string"),
						ContainerResources: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesArgs{
							Limits: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesLimitsArgs{
								Cpu:    pulumi.String("string"),
								Memory: pulumi.String("string"),
							},
							Requests: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesRequestsArgs{
								Cpu:    pulumi.String("string"),
								Memory: pulumi.String("string"),
							},
						},
						PodAffinity: pulumi.String("string"),
						PodTolerations: gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigPodTolerationArray{
							&gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigPodTolerationArgs{
								Effect:   pulumi.String("string"),
								Key:      pulumi.String("string"),
								Operator: pulumi.String("string"),
								Value:    pulumi.String("string"),
							},
						},
						ReplicaCount: pulumi.Int(0),
					},
				},
				ExemptableNamespaces: pulumi.StringArray{
					pulumi.String("string"),
				},
				LogDeniesEnabled: pulumi.Bool(false),
				Monitoring: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigMonitoringArgs{
					Backends: pulumi.StringArray{
						pulumi.String("string"),
					},
				},
				MutationEnabled: pulumi.Bool(false),
				PolicyContent: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentArgs{
					Bundles: gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentBundleArray{
						&gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentBundleArgs{
							Bundle: pulumi.String("string"),
							ExemptedNamespaces: pulumi.StringArray{
								pulumi.String("string"),
							},
						},
					},
					TemplateLibrary: &gkehub.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryArgs{
						Installation: pulumi.String("string"),
					},
				},
				ReferentialRulesEnabled: pulumi.Bool(false),
			},
			Version: pulumi.String("string"),
		},
	},
	Labels: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	Name:    pulumi.String("string"),
	Project: pulumi.String("string"),
	Spec: &gkehub.FeatureSpecArgs{
		Clusterupgrade: &gkehub.FeatureSpecClusterupgradeArgs{
			UpstreamFleets: pulumi.StringArray{
				pulumi.String("string"),
			},
			GkeUpgradeOverrides: gkehub.FeatureSpecClusterupgradeGkeUpgradeOverrideArray{
				&gkehub.FeatureSpecClusterupgradeGkeUpgradeOverrideArgs{
					PostConditions: &gkehub.FeatureSpecClusterupgradeGkeUpgradeOverridePostConditionsArgs{
						Soaking: pulumi.String("string"),
					},
					Upgrade: &gkehub.FeatureSpecClusterupgradeGkeUpgradeOverrideUpgradeArgs{
						Name:    pulumi.String("string"),
						Version: pulumi.String("string"),
					},
				},
			},
			PostConditions: &gkehub.FeatureSpecClusterupgradePostConditionsArgs{
				Soaking: pulumi.String("string"),
			},
		},
		Fleetobservability: &gkehub.FeatureSpecFleetobservabilityArgs{
			LoggingConfig: &gkehub.FeatureSpecFleetobservabilityLoggingConfigArgs{
				DefaultConfig: &gkehub.FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs{
					Mode: pulumi.String("string"),
				},
				FleetScopeLogsConfig: &gkehub.FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs{
					Mode: pulumi.String("string"),
				},
			},
		},
		Multiclusteringress: &gkehub.FeatureSpecMulticlusteringressArgs{
			ConfigMembership: pulumi.String("string"),
		},
	},
})
var featureResource = new Feature("featureResource", FeatureArgs.builder()
    .location("string")
    .fleetDefaultMemberConfig(FeatureFleetDefaultMemberConfigArgs.builder()
        .configmanagement(FeatureFleetDefaultMemberConfigConfigmanagementArgs.builder()
            .configSync(FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncArgs.builder()
                .enabled(false)
                .git(FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGitArgs.builder()
                    .secretType("string")
                    .gcpServiceAccountEmail("string")
                    .httpsProxy("string")
                    .policyDir("string")
                    .syncBranch("string")
                    .syncRepo("string")
                    .syncRev("string")
                    .syncWaitSecs("string")
                    .build())
                .metricsGcpServiceAccountEmail("string")
                .oci(FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncOciArgs.builder()
                    .secretType("string")
                    .gcpServiceAccountEmail("string")
                    .policyDir("string")
                    .syncRepo("string")
                    .syncWaitSecs("string")
                    .build())
                .preventDrift(false)
                .sourceFormat("string")
                .build())
            .management("string")
            .version("string")
            .build())
        .mesh(FeatureFleetDefaultMemberConfigMeshArgs.builder()
            .management("string")
            .build())
        .policycontroller(FeatureFleetDefaultMemberConfigPolicycontrollerArgs.builder()
            .policyControllerHubConfig(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigArgs.builder()
                .installSpec("string")
                .auditIntervalSeconds(0)
                .constraintViolationLimit(0)
                .deploymentConfigs(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigArgs.builder()
                    .component("string")
                    .containerResources(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesArgs.builder()
                        .limits(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesLimitsArgs.builder()
                            .cpu("string")
                            .memory("string")
                            .build())
                        .requests(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesRequestsArgs.builder()
                            .cpu("string")
                            .memory("string")
                            .build())
                        .build())
                    .podAffinity("string")
                    .podTolerations(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigPodTolerationArgs.builder()
                        .effect("string")
                        .key("string")
                        .operator("string")
                        .value("string")
                        .build())
                    .replicaCount(0)
                    .build())
                .exemptableNamespaces("string")
                .logDeniesEnabled(false)
                .monitoring(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigMonitoringArgs.builder()
                    .backends("string")
                    .build())
                .mutationEnabled(false)
                .policyContent(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentArgs.builder()
                    .bundles(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentBundleArgs.builder()
                        .bundle("string")
                        .exemptedNamespaces("string")
                        .build())
                    .templateLibrary(FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryArgs.builder()
                        .installation("string")
                        .build())
                    .build())
                .referentialRulesEnabled(false)
                .build())
            .version("string")
            .build())
        .build())
    .labels(Map.of("string", "string"))
    .name("string")
    .project("string")
    .spec(FeatureSpecArgs.builder()
        .clusterupgrade(FeatureSpecClusterupgradeArgs.builder()
            .upstreamFleets("string")
            .gkeUpgradeOverrides(FeatureSpecClusterupgradeGkeUpgradeOverrideArgs.builder()
                .postConditions(FeatureSpecClusterupgradeGkeUpgradeOverridePostConditionsArgs.builder()
                    .soaking("string")
                    .build())
                .upgrade(FeatureSpecClusterupgradeGkeUpgradeOverrideUpgradeArgs.builder()
                    .name("string")
                    .version("string")
                    .build())
                .build())
            .postConditions(FeatureSpecClusterupgradePostConditionsArgs.builder()
                .soaking("string")
                .build())
            .build())
        .fleetobservability(FeatureSpecFleetobservabilityArgs.builder()
            .loggingConfig(FeatureSpecFleetobservabilityLoggingConfigArgs.builder()
                .defaultConfig(FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs.builder()
                    .mode("string")
                    .build())
                .fleetScopeLogsConfig(FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs.builder()
                    .mode("string")
                    .build())
                .build())
            .build())
        .multiclusteringress(FeatureSpecMulticlusteringressArgs.builder()
            .configMembership("string")
            .build())
        .build())
    .build());
feature_resource = gcp.gkehub.Feature("featureResource",
    location="string",
    fleet_default_member_config={
        "configmanagement": {
            "config_sync": {
                "enabled": False,
                "git": {
                    "secret_type": "string",
                    "gcp_service_account_email": "string",
                    "https_proxy": "string",
                    "policy_dir": "string",
                    "sync_branch": "string",
                    "sync_repo": "string",
                    "sync_rev": "string",
                    "sync_wait_secs": "string",
                },
                "metrics_gcp_service_account_email": "string",
                "oci": {
                    "secret_type": "string",
                    "gcp_service_account_email": "string",
                    "policy_dir": "string",
                    "sync_repo": "string",
                    "sync_wait_secs": "string",
                },
                "prevent_drift": False,
                "source_format": "string",
            },
            "management": "string",
            "version": "string",
        },
        "mesh": {
            "management": "string",
        },
        "policycontroller": {
            "policy_controller_hub_config": {
                "install_spec": "string",
                "audit_interval_seconds": 0,
                "constraint_violation_limit": 0,
                "deployment_configs": [{
                    "component": "string",
                    "container_resources": {
                        "limits": {
                            "cpu": "string",
                            "memory": "string",
                        },
                        "requests": {
                            "cpu": "string",
                            "memory": "string",
                        },
                    },
                    "pod_affinity": "string",
                    "pod_tolerations": [{
                        "effect": "string",
                        "key": "string",
                        "operator": "string",
                        "value": "string",
                    }],
                    "replica_count": 0,
                }],
                "exemptable_namespaces": ["string"],
                "log_denies_enabled": False,
                "monitoring": {
                    "backends": ["string"],
                },
                "mutation_enabled": False,
                "policy_content": {
                    "bundles": [{
                        "bundle": "string",
                        "exempted_namespaces": ["string"],
                    }],
                    "template_library": {
                        "installation": "string",
                    },
                },
                "referential_rules_enabled": False,
            },
            "version": "string",
        },
    },
    labels={
        "string": "string",
    },
    name="string",
    project="string",
    spec={
        "clusterupgrade": {
            "upstream_fleets": ["string"],
            "gke_upgrade_overrides": [{
                "post_conditions": {
                    "soaking": "string",
                },
                "upgrade": {
                    "name": "string",
                    "version": "string",
                },
            }],
            "post_conditions": {
                "soaking": "string",
            },
        },
        "fleetobservability": {
            "logging_config": {
                "default_config": {
                    "mode": "string",
                },
                "fleet_scope_logs_config": {
                    "mode": "string",
                },
            },
        },
        "multiclusteringress": {
            "config_membership": "string",
        },
    })
const featureResource = new gcp.gkehub.Feature("featureResource", {
    location: "string",
    fleetDefaultMemberConfig: {
        configmanagement: {
            configSync: {
                enabled: false,
                git: {
                    secretType: "string",
                    gcpServiceAccountEmail: "string",
                    httpsProxy: "string",
                    policyDir: "string",
                    syncBranch: "string",
                    syncRepo: "string",
                    syncRev: "string",
                    syncWaitSecs: "string",
                },
                metricsGcpServiceAccountEmail: "string",
                oci: {
                    secretType: "string",
                    gcpServiceAccountEmail: "string",
                    policyDir: "string",
                    syncRepo: "string",
                    syncWaitSecs: "string",
                },
                preventDrift: false,
                sourceFormat: "string",
            },
            management: "string",
            version: "string",
        },
        mesh: {
            management: "string",
        },
        policycontroller: {
            policyControllerHubConfig: {
                installSpec: "string",
                auditIntervalSeconds: 0,
                constraintViolationLimit: 0,
                deploymentConfigs: [{
                    component: "string",
                    containerResources: {
                        limits: {
                            cpu: "string",
                            memory: "string",
                        },
                        requests: {
                            cpu: "string",
                            memory: "string",
                        },
                    },
                    podAffinity: "string",
                    podTolerations: [{
                        effect: "string",
                        key: "string",
                        operator: "string",
                        value: "string",
                    }],
                    replicaCount: 0,
                }],
                exemptableNamespaces: ["string"],
                logDeniesEnabled: false,
                monitoring: {
                    backends: ["string"],
                },
                mutationEnabled: false,
                policyContent: {
                    bundles: [{
                        bundle: "string",
                        exemptedNamespaces: ["string"],
                    }],
                    templateLibrary: {
                        installation: "string",
                    },
                },
                referentialRulesEnabled: false,
            },
            version: "string",
        },
    },
    labels: {
        string: "string",
    },
    name: "string",
    project: "string",
    spec: {
        clusterupgrade: {
            upstreamFleets: ["string"],
            gkeUpgradeOverrides: [{
                postConditions: {
                    soaking: "string",
                },
                upgrade: {
                    name: "string",
                    version: "string",
                },
            }],
            postConditions: {
                soaking: "string",
            },
        },
        fleetobservability: {
            loggingConfig: {
                defaultConfig: {
                    mode: "string",
                },
                fleetScopeLogsConfig: {
                    mode: "string",
                },
            },
        },
        multiclusteringress: {
            configMembership: "string",
        },
    },
});
type: gcp:gkehub:Feature
properties:
    fleetDefaultMemberConfig:
        configmanagement:
            configSync:
                enabled: false
                git:
                    gcpServiceAccountEmail: string
                    httpsProxy: string
                    policyDir: string
                    secretType: string
                    syncBranch: string
                    syncRepo: string
                    syncRev: string
                    syncWaitSecs: string
                metricsGcpServiceAccountEmail: string
                oci:
                    gcpServiceAccountEmail: string
                    policyDir: string
                    secretType: string
                    syncRepo: string
                    syncWaitSecs: string
                preventDrift: false
                sourceFormat: string
            management: string
            version: string
        mesh:
            management: string
        policycontroller:
            policyControllerHubConfig:
                auditIntervalSeconds: 0
                constraintViolationLimit: 0
                deploymentConfigs:
                    - component: string
                      containerResources:
                        limits:
                            cpu: string
                            memory: string
                        requests:
                            cpu: string
                            memory: string
                      podAffinity: string
                      podTolerations:
                        - effect: string
                          key: string
                          operator: string
                          value: string
                      replicaCount: 0
                exemptableNamespaces:
                    - string
                installSpec: string
                logDeniesEnabled: false
                monitoring:
                    backends:
                        - string
                mutationEnabled: false
                policyContent:
                    bundles:
                        - bundle: string
                          exemptedNamespaces:
                            - string
                    templateLibrary:
                        installation: string
                referentialRulesEnabled: false
            version: string
    labels:
        string: string
    location: string
    name: string
    project: string
    spec:
        clusterupgrade:
            gkeUpgradeOverrides:
                - postConditions:
                    soaking: string
                  upgrade:
                    name: string
                    version: string
            postConditions:
                soaking: string
            upstreamFleets:
                - string
        fleetobservability:
            loggingConfig:
                defaultConfig:
                    mode: string
                fleetScopeLogsConfig:
                    mode: string
        multiclusteringress:
            configMembership: string
Feature Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Feature resource accepts the following input properties:
- Location string
- The location for the resource
- FleetDefault FeatureMember Config Fleet Default Member Config 
- Optional. Fleet Default Membership Configuration. Structure is documented below.
- Labels Dictionary<string, string>
- GCP labels for this Feature.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field effective_labelsfor all of the labels present on the resource.
- Name string
- The full, unique name of this Feature resource
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Spec
FeatureSpec 
- Optional. Hub-wide Feature configuration. If this Feature does not support any Hub-wide configuration, this field may be unused. Structure is documented below.
- Location string
- The location for the resource
- FleetDefault FeatureMember Config Fleet Default Member Config Args 
- Optional. Fleet Default Membership Configuration. Structure is documented below.
- Labels map[string]string
- GCP labels for this Feature.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field effective_labelsfor all of the labels present on the resource.
- Name string
- The full, unique name of this Feature resource
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Spec
FeatureSpec Args 
- Optional. Hub-wide Feature configuration. If this Feature does not support any Hub-wide configuration, this field may be unused. Structure is documented below.
- location String
- The location for the resource
- fleetDefault FeatureMember Config Fleet Default Member Config 
- Optional. Fleet Default Membership Configuration. Structure is documented below.
- labels Map<String,String>
- GCP labels for this Feature.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field effective_labelsfor all of the labels present on the resource.
- name String
- The full, unique name of this Feature resource
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- spec
FeatureSpec 
- Optional. Hub-wide Feature configuration. If this Feature does not support any Hub-wide configuration, this field may be unused. Structure is documented below.
- location string
- The location for the resource
- fleetDefault FeatureMember Config Fleet Default Member Config 
- Optional. Fleet Default Membership Configuration. Structure is documented below.
- labels {[key: string]: string}
- GCP labels for this Feature.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field effective_labelsfor all of the labels present on the resource.
- name string
- The full, unique name of this Feature resource
- project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- spec
FeatureSpec 
- Optional. Hub-wide Feature configuration. If this Feature does not support any Hub-wide configuration, this field may be unused. Structure is documented below.
- location str
- The location for the resource
- fleet_default_ Featuremember_ config Fleet Default Member Config Args 
- Optional. Fleet Default Membership Configuration. Structure is documented below.
- labels Mapping[str, str]
- GCP labels for this Feature.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field effective_labelsfor all of the labels present on the resource.
- name str
- The full, unique name of this Feature resource
- project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- spec
FeatureSpec Args 
- Optional. Hub-wide Feature configuration. If this Feature does not support any Hub-wide configuration, this field may be unused. Structure is documented below.
- location String
- The location for the resource
- fleetDefault Property MapMember Config 
- Optional. Fleet Default Membership Configuration. Structure is documented below.
- labels Map<String>
- GCP labels for this Feature.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field effective_labelsfor all of the labels present on the resource.
- name String
- The full, unique name of this Feature resource
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- spec Property Map
- Optional. Hub-wide Feature configuration. If this Feature does not support any Hub-wide configuration, this field may be unused. Structure is documented below.
Outputs
All input properties are implicitly available as output properties. Additionally, the Feature resource produces the following output properties:
- CreateTime string
- Output only. When the Feature resource was created.
- DeleteTime string
- Output only. When the Feature resource was deleted.
- EffectiveLabels Dictionary<string, string>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- Id string
- The provider-assigned unique ID for this managed resource.
- PulumiLabels Dictionary<string, string>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- ResourceStates List<FeatureResource State> 
- State of the Feature resource itself. Structure is documented below.
- States
List<FeatureState> 
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- UpdateTime string
- (Output) The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
- CreateTime string
- Output only. When the Feature resource was created.
- DeleteTime string
- Output only. When the Feature resource was deleted.
- EffectiveLabels map[string]string
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- Id string
- The provider-assigned unique ID for this managed resource.
- PulumiLabels map[string]string
- The combination of labels configured directly on the resource and default labels configured on the provider.
- ResourceStates []FeatureResource State 
- State of the Feature resource itself. Structure is documented below.
- States
[]FeatureState Type 
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- UpdateTime string
- (Output) The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
- createTime String
- Output only. When the Feature resource was created.
- deleteTime String
- Output only. When the Feature resource was deleted.
- effectiveLabels Map<String,String>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- id String
- The provider-assigned unique ID for this managed resource.
- pulumiLabels Map<String,String>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- resourceStates List<FeatureResource State> 
- State of the Feature resource itself. Structure is documented below.
- states
List<FeatureState> 
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- updateTime String
- (Output) The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
- createTime string
- Output only. When the Feature resource was created.
- deleteTime string
- Output only. When the Feature resource was deleted.
- effectiveLabels {[key: string]: string}
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- id string
- The provider-assigned unique ID for this managed resource.
- pulumiLabels {[key: string]: string}
- The combination of labels configured directly on the resource and default labels configured on the provider.
- resourceStates FeatureResource State[] 
- State of the Feature resource itself. Structure is documented below.
- states
FeatureState[] 
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- updateTime string
- (Output) The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
- create_time str
- Output only. When the Feature resource was created.
- delete_time str
- Output only. When the Feature resource was deleted.
- effective_labels Mapping[str, str]
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- id str
- The provider-assigned unique ID for this managed resource.
- pulumi_labels Mapping[str, str]
- The combination of labels configured directly on the resource and default labels configured on the provider.
- resource_states Sequence[FeatureResource State] 
- State of the Feature resource itself. Structure is documented below.
- states
Sequence[FeatureState] 
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- update_time str
- (Output) The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
- createTime String
- Output only. When the Feature resource was created.
- deleteTime String
- Output only. When the Feature resource was deleted.
- effectiveLabels Map<String>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- id String
- The provider-assigned unique ID for this managed resource.
- pulumiLabels Map<String>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- resourceStates List<Property Map>
- State of the Feature resource itself. Structure is documented below.
- states List<Property Map>
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- updateTime String
- (Output) The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
Look up Existing Feature Resource
Get an existing Feature 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?: FeatureState, opts?: CustomResourceOptions): Feature@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        create_time: Optional[str] = None,
        delete_time: Optional[str] = None,
        effective_labels: Optional[Mapping[str, str]] = None,
        fleet_default_member_config: Optional[FeatureFleetDefaultMemberConfigArgs] = None,
        labels: Optional[Mapping[str, str]] = None,
        location: Optional[str] = None,
        name: Optional[str] = None,
        project: Optional[str] = None,
        pulumi_labels: Optional[Mapping[str, str]] = None,
        resource_states: Optional[Sequence[FeatureResourceStateArgs]] = None,
        spec: Optional[FeatureSpecArgs] = None,
        states: Optional[Sequence[FeatureStateArgs]] = None,
        update_time: Optional[str] = None) -> Featurefunc GetFeature(ctx *Context, name string, id IDInput, state *FeatureState, opts ...ResourceOption) (*Feature, error)public static Feature Get(string name, Input<string> id, FeatureState? state, CustomResourceOptions? opts = null)public static Feature get(String name, Output<String> id, FeatureState state, CustomResourceOptions options)resources:  _:    type: gcp:gkehub:Feature    get:      id: ${id}- 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.
- CreateTime string
- Output only. When the Feature resource was created.
- DeleteTime string
- Output only. When the Feature resource was deleted.
- EffectiveLabels Dictionary<string, string>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- FleetDefault FeatureMember Config Fleet Default Member Config 
- Optional. Fleet Default Membership Configuration. Structure is documented below.
- Labels Dictionary<string, string>
- GCP labels for this Feature.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field effective_labelsfor all of the labels present on the resource.
- Location string
- The location for the resource
- Name string
- The full, unique name of this Feature resource
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- PulumiLabels Dictionary<string, string>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- ResourceStates List<FeatureResource State> 
- State of the Feature resource itself. Structure is documented below.
- Spec
FeatureSpec 
- Optional. Hub-wide Feature configuration. If this Feature does not support any Hub-wide configuration, this field may be unused. Structure is documented below.
- States
List<FeatureState> 
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- UpdateTime string
- (Output) The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
- CreateTime string
- Output only. When the Feature resource was created.
- DeleteTime string
- Output only. When the Feature resource was deleted.
- EffectiveLabels map[string]string
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- FleetDefault FeatureMember Config Fleet Default Member Config Args 
- Optional. Fleet Default Membership Configuration. Structure is documented below.
- Labels map[string]string
- GCP labels for this Feature.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field effective_labelsfor all of the labels present on the resource.
- Location string
- The location for the resource
- Name string
- The full, unique name of this Feature resource
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- PulumiLabels map[string]string
- The combination of labels configured directly on the resource and default labels configured on the provider.
- ResourceStates []FeatureResource State Args 
- State of the Feature resource itself. Structure is documented below.
- Spec
FeatureSpec Args 
- Optional. Hub-wide Feature configuration. If this Feature does not support any Hub-wide configuration, this field may be unused. Structure is documented below.
- States
[]FeatureState Type Args 
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- UpdateTime string
- (Output) The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
- createTime String
- Output only. When the Feature resource was created.
- deleteTime String
- Output only. When the Feature resource was deleted.
- effectiveLabels Map<String,String>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- fleetDefault FeatureMember Config Fleet Default Member Config 
- Optional. Fleet Default Membership Configuration. Structure is documented below.
- labels Map<String,String>
- GCP labels for this Feature.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field effective_labelsfor all of the labels present on the resource.
- location String
- The location for the resource
- name String
- The full, unique name of this Feature resource
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- pulumiLabels Map<String,String>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- resourceStates List<FeatureResource State> 
- State of the Feature resource itself. Structure is documented below.
- spec
FeatureSpec 
- Optional. Hub-wide Feature configuration. If this Feature does not support any Hub-wide configuration, this field may be unused. Structure is documented below.
- states
List<FeatureState> 
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- updateTime String
- (Output) The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
- createTime string
- Output only. When the Feature resource was created.
- deleteTime string
- Output only. When the Feature resource was deleted.
- effectiveLabels {[key: string]: string}
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- fleetDefault FeatureMember Config Fleet Default Member Config 
- Optional. Fleet Default Membership Configuration. Structure is documented below.
- labels {[key: string]: string}
- GCP labels for this Feature.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field effective_labelsfor all of the labels present on the resource.
- location string
- The location for the resource
- name string
- The full, unique name of this Feature resource
- project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- pulumiLabels {[key: string]: string}
- The combination of labels configured directly on the resource and default labels configured on the provider.
- resourceStates FeatureResource State[] 
- State of the Feature resource itself. Structure is documented below.
- spec
FeatureSpec 
- Optional. Hub-wide Feature configuration. If this Feature does not support any Hub-wide configuration, this field may be unused. Structure is documented below.
- states
FeatureState[] 
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- updateTime string
- (Output) The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
- create_time str
- Output only. When the Feature resource was created.
- delete_time str
- Output only. When the Feature resource was deleted.
- effective_labels Mapping[str, str]
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- fleet_default_ Featuremember_ config Fleet Default Member Config Args 
- Optional. Fleet Default Membership Configuration. Structure is documented below.
- labels Mapping[str, str]
- GCP labels for this Feature.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field effective_labelsfor all of the labels present on the resource.
- location str
- The location for the resource
- name str
- The full, unique name of this Feature resource
- project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- pulumi_labels Mapping[str, str]
- The combination of labels configured directly on the resource and default labels configured on the provider.
- resource_states Sequence[FeatureResource State Args] 
- State of the Feature resource itself. Structure is documented below.
- spec
FeatureSpec Args 
- Optional. Hub-wide Feature configuration. If this Feature does not support any Hub-wide configuration, this field may be unused. Structure is documented below.
- states
Sequence[FeatureState Args] 
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- update_time str
- (Output) The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
- createTime String
- Output only. When the Feature resource was created.
- deleteTime String
- Output only. When the Feature resource was deleted.
- effectiveLabels Map<String>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- fleetDefault Property MapMember Config 
- Optional. Fleet Default Membership Configuration. Structure is documented below.
- labels Map<String>
- GCP labels for this Feature.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field effective_labelsfor all of the labels present on the resource.
- location String
- The location for the resource
- name String
- The full, unique name of this Feature resource
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- pulumiLabels Map<String>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- resourceStates List<Property Map>
- State of the Feature resource itself. Structure is documented below.
- spec Property Map
- Optional. Hub-wide Feature configuration. If this Feature does not support any Hub-wide configuration, this field may be unused. Structure is documented below.
- states List<Property Map>
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- updateTime String
- (Output) The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
Supporting Types
FeatureFleetDefaultMemberConfig, FeatureFleetDefaultMemberConfigArgs          
- Configmanagement
FeatureFleet Default Member Config Configmanagement 
- Config Management spec Structure is documented below.
- Mesh
FeatureFleet Default Member Config Mesh 
- Service Mesh spec Structure is documented below.
- Policycontroller
FeatureFleet Default Member Config Policycontroller 
- Policy Controller spec Structure is documented below.
- Configmanagement
FeatureFleet Default Member Config Configmanagement 
- Config Management spec Structure is documented below.
- Mesh
FeatureFleet Default Member Config Mesh 
- Service Mesh spec Structure is documented below.
- Policycontroller
FeatureFleet Default Member Config Policycontroller 
- Policy Controller spec Structure is documented below.
- configmanagement
FeatureFleet Default Member Config Configmanagement 
- Config Management spec Structure is documented below.
- mesh
FeatureFleet Default Member Config Mesh 
- Service Mesh spec Structure is documented below.
- policycontroller
FeatureFleet Default Member Config Policycontroller 
- Policy Controller spec Structure is documented below.
- configmanagement
FeatureFleet Default Member Config Configmanagement 
- Config Management spec Structure is documented below.
- mesh
FeatureFleet Default Member Config Mesh 
- Service Mesh spec Structure is documented below.
- policycontroller
FeatureFleet Default Member Config Policycontroller 
- Policy Controller spec Structure is documented below.
- configmanagement
FeatureFleet Default Member Config Configmanagement 
- Config Management spec Structure is documented below.
- mesh
FeatureFleet Default Member Config Mesh 
- Service Mesh spec Structure is documented below.
- policycontroller
FeatureFleet Default Member Config Policycontroller 
- Policy Controller spec Structure is documented below.
- configmanagement Property Map
- Config Management spec Structure is documented below.
- mesh Property Map
- Service Mesh spec Structure is documented below.
- policycontroller Property Map
- Policy Controller spec Structure is documented below.
FeatureFleetDefaultMemberConfigConfigmanagement, FeatureFleetDefaultMemberConfigConfigmanagementArgs            
- ConfigSync FeatureFleet Default Member Config Configmanagement Config Sync 
- ConfigSync configuration for the cluster Structure is documented below.
- Management string
- Set this field to MANAGEMENT_AUTOMATIC to enable Config Sync auto-upgrades, and set this field to MANAGEMENT_MANUAL or MANAGEMENT_UNSPECIFIED to disable Config Sync auto-upgrades.
Possible values are: MANAGEMENT_UNSPECIFIED,MANAGEMENT_AUTOMATIC,MANAGEMENT_MANUAL.
- Version string
- Version of Config Sync installed
- ConfigSync FeatureFleet Default Member Config Configmanagement Config Sync 
- ConfigSync configuration for the cluster Structure is documented below.
- Management string
- Set this field to MANAGEMENT_AUTOMATIC to enable Config Sync auto-upgrades, and set this field to MANAGEMENT_MANUAL or MANAGEMENT_UNSPECIFIED to disable Config Sync auto-upgrades.
Possible values are: MANAGEMENT_UNSPECIFIED,MANAGEMENT_AUTOMATIC,MANAGEMENT_MANUAL.
- Version string
- Version of Config Sync installed
- configSync FeatureFleet Default Member Config Configmanagement Config Sync 
- ConfigSync configuration for the cluster Structure is documented below.
- management String
- Set this field to MANAGEMENT_AUTOMATIC to enable Config Sync auto-upgrades, and set this field to MANAGEMENT_MANUAL or MANAGEMENT_UNSPECIFIED to disable Config Sync auto-upgrades.
Possible values are: MANAGEMENT_UNSPECIFIED,MANAGEMENT_AUTOMATIC,MANAGEMENT_MANUAL.
- version String
- Version of Config Sync installed
- configSync FeatureFleet Default Member Config Configmanagement Config Sync 
- ConfigSync configuration for the cluster Structure is documented below.
- management string
- Set this field to MANAGEMENT_AUTOMATIC to enable Config Sync auto-upgrades, and set this field to MANAGEMENT_MANUAL or MANAGEMENT_UNSPECIFIED to disable Config Sync auto-upgrades.
Possible values are: MANAGEMENT_UNSPECIFIED,MANAGEMENT_AUTOMATIC,MANAGEMENT_MANUAL.
- version string
- Version of Config Sync installed
- config_sync FeatureFleet Default Member Config Configmanagement Config Sync 
- ConfigSync configuration for the cluster Structure is documented below.
- management str
- Set this field to MANAGEMENT_AUTOMATIC to enable Config Sync auto-upgrades, and set this field to MANAGEMENT_MANUAL or MANAGEMENT_UNSPECIFIED to disable Config Sync auto-upgrades.
Possible values are: MANAGEMENT_UNSPECIFIED,MANAGEMENT_AUTOMATIC,MANAGEMENT_MANUAL.
- version str
- Version of Config Sync installed
- configSync Property Map
- ConfigSync configuration for the cluster Structure is documented below.
- management String
- Set this field to MANAGEMENT_AUTOMATIC to enable Config Sync auto-upgrades, and set this field to MANAGEMENT_MANUAL or MANAGEMENT_UNSPECIFIED to disable Config Sync auto-upgrades.
Possible values are: MANAGEMENT_UNSPECIFIED,MANAGEMENT_AUTOMATIC,MANAGEMENT_MANUAL.
- version String
- Version of Config Sync installed
FeatureFleetDefaultMemberConfigConfigmanagementConfigSync, FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncArgs                
- Enabled bool
- Enables the installation of ConfigSync. If set to true, ConfigSync resources will be created and the other ConfigSync fields will be applied if exist. If set to false, all other ConfigSync fields will be ignored, ConfigSync resources will be deleted. If omitted, ConfigSync resources will be managed depends on the presence of the git or oci field.
- Git
FeatureFleet Default Member Config Configmanagement Config Sync Git 
- Git repo configuration for the cluster Structure is documented below.
- MetricsGcp stringService Account Email 
- The Email of the Google Cloud Service Account (GSA) used for exporting Config Sync metrics to Cloud Monitoring. The GSA should have the Monitoring Metric Writer(roles/monitoring.metricWriter) IAM role. The Kubernetes ServiceAccount defaultin the namespaceconfig-management-monitoringshould be bound to the GSA.
- Oci
FeatureFleet Default Member Config Configmanagement Config Sync Oci 
- OCI repo configuration for the cluster Structure is documented below.
- PreventDrift bool
- 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.
- SourceFormat string
- Specifies whether the Config Sync Repo is in hierarchical or unstructured mode
- Enabled bool
- Enables the installation of ConfigSync. If set to true, ConfigSync resources will be created and the other ConfigSync fields will be applied if exist. If set to false, all other ConfigSync fields will be ignored, ConfigSync resources will be deleted. If omitted, ConfigSync resources will be managed depends on the presence of the git or oci field.
- Git
FeatureFleet Default Member Config Configmanagement Config Sync Git 
- Git repo configuration for the cluster Structure is documented below.
- MetricsGcp stringService Account Email 
- The Email of the Google Cloud Service Account (GSA) used for exporting Config Sync metrics to Cloud Monitoring. The GSA should have the Monitoring Metric Writer(roles/monitoring.metricWriter) IAM role. The Kubernetes ServiceAccount defaultin the namespaceconfig-management-monitoringshould be bound to the GSA.
- Oci
FeatureFleet Default Member Config Configmanagement Config Sync Oci 
- OCI repo configuration for the cluster Structure is documented below.
- PreventDrift bool
- 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.
- SourceFormat string
- Specifies whether the Config Sync Repo is in hierarchical or unstructured mode
- enabled Boolean
- Enables the installation of ConfigSync. If set to true, ConfigSync resources will be created and the other ConfigSync fields will be applied if exist. If set to false, all other ConfigSync fields will be ignored, ConfigSync resources will be deleted. If omitted, ConfigSync resources will be managed depends on the presence of the git or oci field.
- git
FeatureFleet Default Member Config Configmanagement Config Sync Git 
- Git repo configuration for the cluster Structure is documented below.
- metricsGcp StringService Account Email 
- The Email of the Google Cloud Service Account (GSA) used for exporting Config Sync metrics to Cloud Monitoring. The GSA should have the Monitoring Metric Writer(roles/monitoring.metricWriter) IAM role. The Kubernetes ServiceAccount defaultin the namespaceconfig-management-monitoringshould be bound to the GSA.
- oci
FeatureFleet Default Member Config Configmanagement Config Sync Oci 
- OCI repo configuration for the cluster Structure is documented below.
- preventDrift Boolean
- 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.
- sourceFormat String
- Specifies whether the Config Sync Repo is in hierarchical or unstructured mode
- enabled boolean
- Enables the installation of ConfigSync. If set to true, ConfigSync resources will be created and the other ConfigSync fields will be applied if exist. If set to false, all other ConfigSync fields will be ignored, ConfigSync resources will be deleted. If omitted, ConfigSync resources will be managed depends on the presence of the git or oci field.
- git
FeatureFleet Default Member Config Configmanagement Config Sync Git 
- Git repo configuration for the cluster Structure is documented below.
- metricsGcp stringService Account Email 
- The Email of the Google Cloud Service Account (GSA) used for exporting Config Sync metrics to Cloud Monitoring. The GSA should have the Monitoring Metric Writer(roles/monitoring.metricWriter) IAM role. The Kubernetes ServiceAccount defaultin the namespaceconfig-management-monitoringshould be bound to the GSA.
- oci
FeatureFleet Default Member Config Configmanagement Config Sync Oci 
- OCI repo configuration for the cluster Structure is documented below.
- preventDrift boolean
- 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.
- sourceFormat string
- Specifies whether the Config Sync Repo is in hierarchical or unstructured mode
- enabled bool
- Enables the installation of ConfigSync. If set to true, ConfigSync resources will be created and the other ConfigSync fields will be applied if exist. If set to false, all other ConfigSync fields will be ignored, ConfigSync resources will be deleted. If omitted, ConfigSync resources will be managed depends on the presence of the git or oci field.
- git
FeatureFleet Default Member Config Configmanagement Config Sync Git 
- Git repo configuration for the cluster Structure is documented below.
- metrics_gcp_ strservice_ account_ email 
- The Email of the Google Cloud Service Account (GSA) used for exporting Config Sync metrics to Cloud Monitoring. The GSA should have the Monitoring Metric Writer(roles/monitoring.metricWriter) IAM role. The Kubernetes ServiceAccount defaultin the namespaceconfig-management-monitoringshould be bound to the GSA.
- oci
FeatureFleet Default Member Config Configmanagement Config Sync Oci 
- OCI repo configuration for the cluster Structure is documented below.
- prevent_drift bool
- 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
- enabled Boolean
- Enables the installation of ConfigSync. If set to true, ConfigSync resources will be created and the other ConfigSync fields will be applied if exist. If set to false, all other ConfigSync fields will be ignored, ConfigSync resources will be deleted. If omitted, ConfigSync resources will be managed depends on the presence of the git or oci field.
- git Property Map
- Git repo configuration for the cluster Structure is documented below.
- metricsGcp StringService Account Email 
- The Email of the Google Cloud Service Account (GSA) used for exporting Config Sync metrics to Cloud Monitoring. The GSA should have the Monitoring Metric Writer(roles/monitoring.metricWriter) IAM role. The Kubernetes ServiceAccount defaultin the namespaceconfig-management-monitoringshould be bound to the GSA.
- oci Property Map
- OCI repo configuration for the cluster Structure is documented below.
- preventDrift Boolean
- 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.
- sourceFormat String
- Specifies whether the Config Sync Repo is in hierarchical or unstructured mode
FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGit, FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGitArgs                  
- SecretType string
- Type of secret configured for access to the Git repo
- GcpService stringAccount Email 
- The Google Cloud Service Account Email used for auth when secretType is gcpServiceAccount
- HttpsProxy string
- URL for the HTTPS Proxy to be used when communicating with the Git repo
- PolicyDir string
- The path within the Git repository that represents the top level of the repo to sync
- SyncBranch string
- The branch of the repository to sync from. Default: master
- SyncRepo string
- The URL of the Git repository to use as the source of truth
- SyncRev string
- Git revision (tag or hash) to check out. Default HEAD
- SyncWait stringSecs 
- Period in seconds between consecutive syncs. Default: 15
- SecretType string
- Type of secret configured for access to the Git repo
- GcpService stringAccount Email 
- The Google Cloud Service Account Email used for auth when secretType is gcpServiceAccount
- HttpsProxy string
- URL for the HTTPS Proxy to be used when communicating with the Git repo
- PolicyDir string
- The path within the Git repository that represents the top level of the repo to sync
- SyncBranch string
- The branch of the repository to sync from. Default: master
- SyncRepo string
- The URL of the Git repository to use as the source of truth
- SyncRev string
- Git revision (tag or hash) to check out. Default HEAD
- SyncWait stringSecs 
- Period in seconds between consecutive syncs. Default: 15
- secretType String
- Type of secret configured for access to the Git repo
- gcpService StringAccount Email 
- The Google Cloud Service Account Email used for auth when secretType is gcpServiceAccount
- httpsProxy String
- URL for the HTTPS Proxy to be used when communicating with the Git repo
- policyDir String
- The path within the Git repository that represents the top level of the repo to sync
- syncBranch String
- The branch of the repository to sync from. Default: master
- syncRepo String
- The URL of the Git repository to use as the source of truth
- syncRev String
- Git revision (tag or hash) to check out. Default HEAD
- syncWait StringSecs 
- Period in seconds between consecutive syncs. Default: 15
- secretType string
- Type of secret configured for access to the Git repo
- gcpService stringAccount Email 
- The Google Cloud Service Account Email used for auth when secretType is gcpServiceAccount
- httpsProxy string
- URL for the HTTPS Proxy to be used when communicating with the Git repo
- policyDir string
- The path within the Git repository that represents the top level of the repo to sync
- syncBranch string
- The branch of the repository to sync from. Default: master
- syncRepo string
- The URL of the Git repository to use as the source of truth
- syncRev string
- Git revision (tag or hash) to check out. Default HEAD
- syncWait stringSecs 
- Period in seconds between consecutive syncs. Default: 15
- secret_type str
- Type of secret configured for access to the Git repo
- gcp_service_ straccount_ email 
- The Google Cloud 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
- 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
- secretType String
- Type of secret configured for access to the Git repo
- gcpService StringAccount Email 
- The Google Cloud Service Account Email used for auth when secretType is gcpServiceAccount
- httpsProxy String
- URL for the HTTPS Proxy to be used when communicating with the Git repo
- policyDir String
- The path within the Git repository that represents the top level of the repo to sync
- syncBranch String
- The branch of the repository to sync from. Default: master
- syncRepo String
- The URL of the Git repository to use as the source of truth
- syncRev String
- Git revision (tag or hash) to check out. Default HEAD
- syncWait StringSecs 
- Period in seconds between consecutive syncs. Default: 15
FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncOci, FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncOciArgs                  
- SecretType string
- Type of secret configured for access to the Git repo
- GcpService stringAccount Email 
- The Google Cloud Service Account Email used for auth when secretType is gcpServiceAccount
- PolicyDir string
- The absolute path of the directory that contains the local resources. Default: the root directory of the image
- SyncRepo string
- The OCI image repository URL for the package to sync from
- SyncWait stringSecs 
- Period in seconds between consecutive syncs. Default: 15
- Version string
- (Optional, Deprecated) Version of Config Sync installed - Warning: The - configmanagement.config_sync.oci.versionfield is deprecated and will be removed in a future major release. Please use- configmanagement.versionfield to specify the version of Config Sync installed instead.
- SecretType string
- Type of secret configured for access to the Git repo
- GcpService stringAccount Email 
- The Google Cloud Service Account Email used for auth when secretType is gcpServiceAccount
- PolicyDir string
- The absolute path of the directory that contains the local resources. Default: the root directory of the image
- SyncRepo string
- The OCI image repository URL for the package to sync from
- SyncWait stringSecs 
- Period in seconds between consecutive syncs. Default: 15
- Version string
- (Optional, Deprecated) Version of Config Sync installed - Warning: The - configmanagement.config_sync.oci.versionfield is deprecated and will be removed in a future major release. Please use- configmanagement.versionfield to specify the version of Config Sync installed instead.
- secretType String
- Type of secret configured for access to the Git repo
- gcpService StringAccount Email 
- The Google Cloud Service Account Email used for auth when secretType is gcpServiceAccount
- policyDir String
- The absolute path of the directory that contains the local resources. Default: the root directory of the image
- syncRepo String
- The OCI image repository URL for the package to sync from
- syncWait StringSecs 
- Period in seconds between consecutive syncs. Default: 15
- version String
- (Optional, Deprecated) Version of Config Sync installed - Warning: The - configmanagement.config_sync.oci.versionfield is deprecated and will be removed in a future major release. Please use- configmanagement.versionfield to specify the version of Config Sync installed instead.
- secretType string
- Type of secret configured for access to the Git repo
- gcpService stringAccount Email 
- The Google Cloud Service Account Email used for auth when secretType is gcpServiceAccount
- policyDir string
- The absolute path of the directory that contains the local resources. Default: the root directory of the image
- syncRepo string
- The OCI image repository URL for the package to sync from
- syncWait stringSecs 
- Period in seconds between consecutive syncs. Default: 15
- version string
- (Optional, Deprecated) Version of Config Sync installed - Warning: The - configmanagement.config_sync.oci.versionfield is deprecated and will be removed in a future major release. Please use- configmanagement.versionfield to specify the version of Config Sync installed instead.
- secret_type str
- Type of secret configured for access to the Git repo
- gcp_service_ straccount_ email 
- The Google Cloud Service Account Email used for auth when secretType is gcpServiceAccount
- policy_dir str
- The absolute path of the directory that contains the local resources. Default: the root directory of the image
- sync_repo str
- The OCI image repository URL for the package to sync from
- sync_wait_ strsecs 
- Period in seconds between consecutive syncs. Default: 15
- version str
- (Optional, Deprecated) Version of Config Sync installed - Warning: The - configmanagement.config_sync.oci.versionfield is deprecated and will be removed in a future major release. Please use- configmanagement.versionfield to specify the version of Config Sync installed instead.
- secretType String
- Type of secret configured for access to the Git repo
- gcpService StringAccount Email 
- The Google Cloud Service Account Email used for auth when secretType is gcpServiceAccount
- policyDir String
- The absolute path of the directory that contains the local resources. Default: the root directory of the image
- syncRepo String
- The OCI image repository URL for the package to sync from
- syncWait StringSecs 
- Period in seconds between consecutive syncs. Default: 15
- version String
- (Optional, Deprecated) Version of Config Sync installed - Warning: The - configmanagement.config_sync.oci.versionfield is deprecated and will be removed in a future major release. Please use- configmanagement.versionfield to specify the version of Config Sync installed instead.
FeatureFleetDefaultMemberConfigMesh, FeatureFleetDefaultMemberConfigMeshArgs            
- Management string
- Whether to automatically manage Service Mesh
Possible values are: MANAGEMENT_UNSPECIFIED,MANAGEMENT_AUTOMATIC,MANAGEMENT_MANUAL.
- Management string
- Whether to automatically manage Service Mesh
Possible values are: MANAGEMENT_UNSPECIFIED,MANAGEMENT_AUTOMATIC,MANAGEMENT_MANUAL.
- management String
- Whether to automatically manage Service Mesh
Possible values are: MANAGEMENT_UNSPECIFIED,MANAGEMENT_AUTOMATIC,MANAGEMENT_MANUAL.
- management string
- Whether to automatically manage Service Mesh
Possible values are: MANAGEMENT_UNSPECIFIED,MANAGEMENT_AUTOMATIC,MANAGEMENT_MANUAL.
- management str
- Whether to automatically manage Service Mesh
Possible values are: MANAGEMENT_UNSPECIFIED,MANAGEMENT_AUTOMATIC,MANAGEMENT_MANUAL.
- management String
- Whether to automatically manage Service Mesh
Possible values are: MANAGEMENT_UNSPECIFIED,MANAGEMENT_AUTOMATIC,MANAGEMENT_MANUAL.
FeatureFleetDefaultMemberConfigPolicycontroller, FeatureFleetDefaultMemberConfigPolicycontrollerArgs            
- PolicyController FeatureHub Config Fleet Default Member Config Policycontroller Policy Controller Hub Config 
- Configuration of Policy Controller Structure is documented below.
- Version string
- Configures the version of Policy Controller
- PolicyController FeatureHub Config Fleet Default Member Config Policycontroller Policy Controller Hub Config 
- Configuration of Policy Controller Structure is documented below.
- Version string
- Configures the version of Policy Controller
- policyController FeatureHub Config Fleet Default Member Config Policycontroller Policy Controller Hub Config 
- Configuration of Policy Controller Structure is documented below.
- version String
- Configures the version of Policy Controller
- policyController FeatureHub Config Fleet Default Member Config Policycontroller Policy Controller Hub Config 
- Configuration of Policy Controller Structure is documented below.
- version string
- Configures the version of Policy Controller
- policy_controller_ Featurehub_ config Fleet Default Member Config Policycontroller Policy Controller Hub Config 
- Configuration of Policy Controller Structure is documented below.
- version str
- Configures the version of Policy Controller
- policyController Property MapHub Config 
- Configuration of Policy Controller Structure is documented below.
- version String
- Configures the version of Policy Controller
FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfig, FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigArgs                    
- InstallSpec string
- Configures the mode of the Policy Controller installation
Possible values are: INSTALL_SPEC_UNSPECIFIED,INSTALL_SPEC_NOT_INSTALLED,INSTALL_SPEC_ENABLED,INSTALL_SPEC_SUSPENDED,INSTALL_SPEC_DETACHED.
- AuditInterval intSeconds 
- Interval for Policy Controller Audit scans (in seconds). When set to 0, this disables audit functionality altogether.
- ConstraintViolation intLimit 
- The maximum number of audit violations to be stored in a constraint. If not set, the internal default of 20 will be used.
- DeploymentConfigs List<FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config> 
- Map of deployment configs to deployments ("admission", "audit", "mutation"). Structure is documented below.
- ExemptableNamespaces List<string>
- The set of namespaces that are excluded from Policy Controller checks. Namespaces do not need to currently exist on the cluster.
- LogDenies boolEnabled 
- Logs all denies and dry run failures.
- Monitoring
FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Monitoring 
- Monitoring specifies the configuration of monitoring Policy Controller. Structure is documented below.
- MutationEnabled bool
- Enables the ability to mutate resources using Policy Controller.
- PolicyContent FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Policy Content 
- Specifies the desired policy content on the cluster. Structure is documented below.
- ReferentialRules boolEnabled 
- Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated.
- InstallSpec string
- Configures the mode of the Policy Controller installation
Possible values are: INSTALL_SPEC_UNSPECIFIED,INSTALL_SPEC_NOT_INSTALLED,INSTALL_SPEC_ENABLED,INSTALL_SPEC_SUSPENDED,INSTALL_SPEC_DETACHED.
- AuditInterval intSeconds 
- Interval for Policy Controller Audit scans (in seconds). When set to 0, this disables audit functionality altogether.
- ConstraintViolation intLimit 
- The maximum number of audit violations to be stored in a constraint. If not set, the internal default of 20 will be used.
- DeploymentConfigs []FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config 
- Map of deployment configs to deployments ("admission", "audit", "mutation"). Structure is documented below.
- ExemptableNamespaces []string
- The set of namespaces that are excluded from Policy Controller checks. Namespaces do not need to currently exist on the cluster.
- LogDenies boolEnabled 
- Logs all denies and dry run failures.
- Monitoring
FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Monitoring 
- Monitoring specifies the configuration of monitoring Policy Controller. Structure is documented below.
- MutationEnabled bool
- Enables the ability to mutate resources using Policy Controller.
- PolicyContent FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Policy Content 
- Specifies the desired policy content on the cluster. Structure is documented below.
- ReferentialRules boolEnabled 
- Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated.
- installSpec String
- Configures the mode of the Policy Controller installation
Possible values are: INSTALL_SPEC_UNSPECIFIED,INSTALL_SPEC_NOT_INSTALLED,INSTALL_SPEC_ENABLED,INSTALL_SPEC_SUSPENDED,INSTALL_SPEC_DETACHED.
- auditInterval IntegerSeconds 
- Interval for Policy Controller Audit scans (in seconds). When set to 0, this disables audit functionality altogether.
- constraintViolation IntegerLimit 
- The maximum number of audit violations to be stored in a constraint. If not set, the internal default of 20 will be used.
- deploymentConfigs List<FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config> 
- Map of deployment configs to deployments ("admission", "audit", "mutation"). Structure is documented below.
- exemptableNamespaces List<String>
- The set of namespaces that are excluded from Policy Controller checks. Namespaces do not need to currently exist on the cluster.
- logDenies BooleanEnabled 
- Logs all denies and dry run failures.
- monitoring
FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Monitoring 
- Monitoring specifies the configuration of monitoring Policy Controller. Structure is documented below.
- mutationEnabled Boolean
- Enables the ability to mutate resources using Policy Controller.
- policyContent FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Policy Content 
- Specifies the desired policy content on the cluster. Structure is documented below.
- referentialRules BooleanEnabled 
- Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated.
- installSpec string
- Configures the mode of the Policy Controller installation
Possible values are: INSTALL_SPEC_UNSPECIFIED,INSTALL_SPEC_NOT_INSTALLED,INSTALL_SPEC_ENABLED,INSTALL_SPEC_SUSPENDED,INSTALL_SPEC_DETACHED.
- auditInterval numberSeconds 
- Interval for Policy Controller Audit scans (in seconds). When set to 0, this disables audit functionality altogether.
- constraintViolation numberLimit 
- The maximum number of audit violations to be stored in a constraint. If not set, the internal default of 20 will be used.
- deploymentConfigs FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config[] 
- Map of deployment configs to deployments ("admission", "audit", "mutation"). Structure is documented below.
- exemptableNamespaces string[]
- The set of namespaces that are excluded from Policy Controller checks. Namespaces do not need to currently exist on the cluster.
- logDenies booleanEnabled 
- Logs all denies and dry run failures.
- monitoring
FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Monitoring 
- Monitoring specifies the configuration of monitoring Policy Controller. Structure is documented below.
- mutationEnabled boolean
- Enables the ability to mutate resources using Policy Controller.
- policyContent FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Policy Content 
- Specifies the desired policy content on the cluster. Structure is documented below.
- referentialRules booleanEnabled 
- Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated.
- install_spec str
- Configures the mode of the Policy Controller installation
Possible values are: INSTALL_SPEC_UNSPECIFIED,INSTALL_SPEC_NOT_INSTALLED,INSTALL_SPEC_ENABLED,INSTALL_SPEC_SUSPENDED,INSTALL_SPEC_DETACHED.
- audit_interval_ intseconds 
- Interval for Policy Controller Audit scans (in seconds). When set to 0, this disables audit functionality altogether.
- constraint_violation_ intlimit 
- The maximum number of audit violations to be stored in a constraint. If not set, the internal default of 20 will be used.
- deployment_configs Sequence[FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config] 
- Map of deployment configs to deployments ("admission", "audit", "mutation"). Structure is documented below.
- 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
FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Monitoring 
- Monitoring specifies the configuration of monitoring Policy Controller. Structure is documented below.
- mutation_enabled bool
- Enables the ability to mutate resources using Policy Controller.
- policy_content FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Policy Content 
- Specifies the desired policy content on the cluster. Structure is documented below.
- referential_rules_ boolenabled 
- Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated.
- installSpec String
- Configures the mode of the Policy Controller installation
Possible values are: INSTALL_SPEC_UNSPECIFIED,INSTALL_SPEC_NOT_INSTALLED,INSTALL_SPEC_ENABLED,INSTALL_SPEC_SUSPENDED,INSTALL_SPEC_DETACHED.
- auditInterval NumberSeconds 
- Interval for Policy Controller Audit scans (in seconds). When set to 0, this disables audit functionality altogether.
- constraintViolation NumberLimit 
- The maximum number of audit violations to be stored in a constraint. If not set, the internal default of 20 will be used.
- deploymentConfigs List<Property Map>
- Map of deployment configs to deployments ("admission", "audit", "mutation"). Structure is documented below.
- exemptableNamespaces List<String>
- The set of namespaces that are excluded from Policy Controller checks. Namespaces do not need to currently exist on the cluster.
- logDenies BooleanEnabled 
- Logs all denies and dry run failures.
- monitoring Property Map
- Monitoring specifies the configuration of monitoring Policy Controller. Structure is documented below.
- mutationEnabled Boolean
- Enables the ability to mutate resources using Policy Controller.
- policyContent Property Map
- Specifies the desired policy content on the cluster. Structure is documented below.
- referentialRules BooleanEnabled 
- Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated.
FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfig, FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigArgs                        
- Component string
- The identifier for this object. Format specified above.
- ContainerResources FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config Container Resources 
- Container resource requirements. Structure is documented below.
- PodAffinity string
- Pod affinity configuration.
Possible values are: AFFINITY_UNSPECIFIED,NO_AFFINITY,ANTI_AFFINITY.
- PodTolerations List<FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config Pod Toleration> 
- Pod tolerations of node taints. Structure is documented below.
- ReplicaCount int
- Pod replica count.
- Component string
- The identifier for this object. Format specified above.
- ContainerResources FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config Container Resources 
- Container resource requirements. Structure is documented below.
- PodAffinity string
- Pod affinity configuration.
Possible values are: AFFINITY_UNSPECIFIED,NO_AFFINITY,ANTI_AFFINITY.
- PodTolerations []FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config Pod Toleration 
- Pod tolerations of node taints. Structure is documented below.
- ReplicaCount int
- Pod replica count.
- component String
- The identifier for this object. Format specified above.
- containerResources FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config Container Resources 
- Container resource requirements. Structure is documented below.
- podAffinity String
- Pod affinity configuration.
Possible values are: AFFINITY_UNSPECIFIED,NO_AFFINITY,ANTI_AFFINITY.
- podTolerations List<FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config Pod Toleration> 
- Pod tolerations of node taints. Structure is documented below.
- replicaCount Integer
- Pod replica count.
- component string
- The identifier for this object. Format specified above.
- containerResources FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config Container Resources 
- Container resource requirements. Structure is documented below.
- podAffinity string
- Pod affinity configuration.
Possible values are: AFFINITY_UNSPECIFIED,NO_AFFINITY,ANTI_AFFINITY.
- podTolerations FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config Pod Toleration[] 
- Pod tolerations of node taints. Structure is documented below.
- replicaCount number
- Pod replica count.
- component str
- The identifier for this object. Format specified above.
- container_resources FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config Container Resources 
- Container resource requirements. Structure is documented below.
- pod_affinity str
- Pod affinity configuration.
Possible values are: AFFINITY_UNSPECIFIED,NO_AFFINITY,ANTI_AFFINITY.
- pod_tolerations Sequence[FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config Pod Toleration] 
- Pod tolerations of node taints. Structure is documented below.
- replica_count int
- Pod replica count.
- component String
- The identifier for this object. Format specified above.
- containerResources Property Map
- Container resource requirements. Structure is documented below.
- podAffinity String
- Pod affinity configuration.
Possible values are: AFFINITY_UNSPECIFIED,NO_AFFINITY,ANTI_AFFINITY.
- podTolerations List<Property Map>
- Pod tolerations of node taints. Structure is documented below.
- replicaCount Number
- Pod replica count.
FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResources, FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesArgs                            
- Limits
FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config Container Resources Limits 
- Limits describes the maximum amount of compute resources allowed for use by the running container. Structure is documented below.
- Requests
FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config Container Resources Requests 
- Requests describes the amount of compute resources reserved for the container by the kube-scheduler. Structure is documented below.
- Limits
FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config Container Resources Limits 
- Limits describes the maximum amount of compute resources allowed for use by the running container. Structure is documented below.
- Requests
FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config Container Resources Requests 
- Requests describes the amount of compute resources reserved for the container by the kube-scheduler. Structure is documented below.
- limits
FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config Container Resources Limits 
- Limits describes the maximum amount of compute resources allowed for use by the running container. Structure is documented below.
- requests
FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config Container Resources Requests 
- Requests describes the amount of compute resources reserved for the container by the kube-scheduler. Structure is documented below.
- limits
FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config Container Resources Limits 
- Limits describes the maximum amount of compute resources allowed for use by the running container. Structure is documented below.
- requests
FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config Container Resources Requests 
- Requests describes the amount of compute resources reserved for the container by the kube-scheduler. Structure is documented below.
- limits
FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config Container Resources Limits 
- Limits describes the maximum amount of compute resources allowed for use by the running container. Structure is documented below.
- requests
FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Deployment Config Container Resources Requests 
- Requests describes the amount of compute resources reserved for the container by the kube-scheduler. Structure is documented below.
- limits Property Map
- Limits describes the maximum amount of compute resources allowed for use by the running container. Structure is documented below.
- requests Property Map
- Requests describes the amount of compute resources reserved for the container by the kube-scheduler. Structure is documented below.
FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesLimits, FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesLimitsArgs                              
FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesRequests, FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigContainerResourcesRequestsArgs                              
FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigPodToleration, FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfigPodTolerationArgs                            
FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigMonitoring, FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigMonitoringArgs                      
- Backends List<string>
- Specifies the list of backends Policy Controller will export to. An empty list would effectively disable metrics export.
Each value may be one of: MONITORING_BACKEND_UNSPECIFIED,PROMETHEUS,CLOUD_MONITORING.
- Backends []string
- Specifies the list of backends Policy Controller will export to. An empty list would effectively disable metrics export.
Each value may be one of: MONITORING_BACKEND_UNSPECIFIED,PROMETHEUS,CLOUD_MONITORING.
- backends List<String>
- Specifies the list of backends Policy Controller will export to. An empty list would effectively disable metrics export.
Each value may be one of: MONITORING_BACKEND_UNSPECIFIED,PROMETHEUS,CLOUD_MONITORING.
- backends string[]
- Specifies the list of backends Policy Controller will export to. An empty list would effectively disable metrics export.
Each value may be one of: MONITORING_BACKEND_UNSPECIFIED,PROMETHEUS,CLOUD_MONITORING.
- backends Sequence[str]
- Specifies the list of backends Policy Controller will export to. An empty list would effectively disable metrics export.
Each value may be one of: MONITORING_BACKEND_UNSPECIFIED,PROMETHEUS,CLOUD_MONITORING.
- backends List<String>
- Specifies the list of backends Policy Controller will export to. An empty list would effectively disable metrics export.
Each value may be one of: MONITORING_BACKEND_UNSPECIFIED,PROMETHEUS,CLOUD_MONITORING.
FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContent, FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentArgs                        
- Bundles
List<FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Policy Content Bundle> 
- Configures which bundles to install and their corresponding install specs. Structure is documented below.
- TemplateLibrary FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Policy Content Template Library 
- Configures the installation of the Template Library. Structure is documented below.
- Bundles
[]FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Policy Content Bundle 
- Configures which bundles to install and their corresponding install specs. Structure is documented below.
- TemplateLibrary FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Policy Content Template Library 
- Configures the installation of the Template Library. Structure is documented below.
- bundles
List<FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Policy Content Bundle> 
- Configures which bundles to install and their corresponding install specs. Structure is documented below.
- templateLibrary FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Policy Content Template Library 
- Configures the installation of the Template Library. Structure is documented below.
- bundles
FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Policy Content Bundle[] 
- Configures which bundles to install and their corresponding install specs. Structure is documented below.
- templateLibrary FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Policy Content Template Library 
- Configures the installation of the Template Library. Structure is documented below.
- bundles
Sequence[FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Policy Content Bundle] 
- Configures which bundles to install and their corresponding install specs. Structure is documented below.
- template_library FeatureFleet Default Member Config Policycontroller Policy Controller Hub Config Policy Content Template Library 
- Configures the installation of the Template Library. Structure is documented below.
- bundles List<Property Map>
- Configures which bundles to install and their corresponding install specs. Structure is documented below.
- templateLibrary Property Map
- Configures the installation of the Template Library. Structure is documented below.
FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentBundle, FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentBundleArgs                          
- Bundle string
- The identifier for this object. Format specified above.
- ExemptedNamespaces List<string>
- The set of namespaces to be exempted from the bundle.
- Bundle string
- The identifier for this object. Format specified above.
- ExemptedNamespaces []string
- The set of namespaces to be exempted from the bundle.
- bundle String
- The identifier for this object. Format specified above.
- exemptedNamespaces List<String>
- The set of namespaces to be exempted from the bundle.
- bundle string
- The identifier for this object. Format specified above.
- exemptedNamespaces string[]
- The set of namespaces to be exempted from the bundle.
- bundle str
- The identifier for this object. Format specified above.
- exempted_namespaces Sequence[str]
- The set of namespaces to be exempted from the bundle.
- bundle String
- The identifier for this object. Format specified above.
- exemptedNamespaces List<String>
- The set of namespaces to be exempted from the bundle.
FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibrary, FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryArgs                            
- Installation string
- Configures the manner in which the template library is installed on the cluster.
Possible values are: INSTALLATION_UNSPECIFIED,NOT_INSTALLED,ALL.
- Installation string
- Configures the manner in which the template library is installed on the cluster.
Possible values are: INSTALLATION_UNSPECIFIED,NOT_INSTALLED,ALL.
- installation String
- Configures the manner in which the template library is installed on the cluster.
Possible values are: INSTALLATION_UNSPECIFIED,NOT_INSTALLED,ALL.
- installation string
- Configures the manner in which the template library is installed on the cluster.
Possible values are: INSTALLATION_UNSPECIFIED,NOT_INSTALLED,ALL.
- installation str
- Configures the manner in which the template library is installed on the cluster.
Possible values are: INSTALLATION_UNSPECIFIED,NOT_INSTALLED,ALL.
- installation String
- Configures the manner in which the template library is installed on the cluster.
Possible values are: INSTALLATION_UNSPECIFIED,NOT_INSTALLED,ALL.
FeatureResourceState, FeatureResourceStateArgs      
- HasResources bool
- (Output) Whether this Feature has outstanding resources that need to be cleaned up before it can be disabled.
- State string
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- HasResources bool
- (Output) Whether this Feature has outstanding resources that need to be cleaned up before it can be disabled.
- State string
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- hasResources Boolean
- (Output) Whether this Feature has outstanding resources that need to be cleaned up before it can be disabled.
- state String
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- hasResources boolean
- (Output) Whether this Feature has outstanding resources that need to be cleaned up before it can be disabled.
- state string
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- has_resources bool
- (Output) Whether this Feature has outstanding resources that need to be cleaned up before it can be disabled.
- state str
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- hasResources Boolean
- (Output) Whether this Feature has outstanding resources that need to be cleaned up before it can be disabled.
- state String
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
FeatureSpec, FeatureSpecArgs    
- Clusterupgrade
FeatureSpec Clusterupgrade 
- Clusterupgrade feature spec. Structure is documented below.
- Fleetobservability
FeatureSpec Fleetobservability 
- Fleet Observability feature spec. Structure is documented below.
- Multiclusteringress
FeatureSpec Multiclusteringress 
- Multicluster Ingress-specific spec. Structure is documented below.
- Clusterupgrade
FeatureSpec Clusterupgrade 
- Clusterupgrade feature spec. Structure is documented below.
- Fleetobservability
FeatureSpec Fleetobservability 
- Fleet Observability feature spec. Structure is documented below.
- Multiclusteringress
FeatureSpec Multiclusteringress 
- Multicluster Ingress-specific spec. Structure is documented below.
- clusterupgrade
FeatureSpec Clusterupgrade 
- Clusterupgrade feature spec. Structure is documented below.
- fleetobservability
FeatureSpec Fleetobservability 
- Fleet Observability feature spec. Structure is documented below.
- multiclusteringress
FeatureSpec Multiclusteringress 
- Multicluster Ingress-specific spec. Structure is documented below.
- clusterupgrade
FeatureSpec Clusterupgrade 
- Clusterupgrade feature spec. Structure is documented below.
- fleetobservability
FeatureSpec Fleetobservability 
- Fleet Observability feature spec. Structure is documented below.
- multiclusteringress
FeatureSpec Multiclusteringress 
- Multicluster Ingress-specific spec. Structure is documented below.
- clusterupgrade
FeatureSpec Clusterupgrade 
- Clusterupgrade feature spec. Structure is documented below.
- fleetobservability
FeatureSpec Fleetobservability 
- Fleet Observability feature spec. Structure is documented below.
- multiclusteringress
FeatureSpec Multiclusteringress 
- Multicluster Ingress-specific spec. Structure is documented below.
- clusterupgrade Property Map
- Clusterupgrade feature spec. Structure is documented below.
- fleetobservability Property Map
- Fleet Observability feature spec. Structure is documented below.
- multiclusteringress Property Map
- Multicluster Ingress-specific spec. Structure is documented below.
FeatureSpecClusterupgrade, FeatureSpecClusterupgradeArgs      
- UpstreamFleets List<string>
- Specified if other fleet should be considered as a source of upgrades. Currently, at most one upstream fleet is allowed. The fleet name should be either fleet project number or id.
- GkeUpgrade List<FeatureOverrides Spec Clusterupgrade Gke Upgrade Override> 
- Configuration overrides for individual upgrades. Structure is documented below.
- PostConditions FeatureSpec Clusterupgrade Post Conditions 
- Post conditions to override for the specified upgrade. Structure is documented below.
- UpstreamFleets []string
- Specified if other fleet should be considered as a source of upgrades. Currently, at most one upstream fleet is allowed. The fleet name should be either fleet project number or id.
- GkeUpgrade []FeatureOverrides Spec Clusterupgrade Gke Upgrade Override 
- Configuration overrides for individual upgrades. Structure is documented below.
- PostConditions FeatureSpec Clusterupgrade Post Conditions 
- Post conditions to override for the specified upgrade. Structure is documented below.
- upstreamFleets List<String>
- Specified if other fleet should be considered as a source of upgrades. Currently, at most one upstream fleet is allowed. The fleet name should be either fleet project number or id.
- gkeUpgrade List<FeatureOverrides Spec Clusterupgrade Gke Upgrade Override> 
- Configuration overrides for individual upgrades. Structure is documented below.
- postConditions FeatureSpec Clusterupgrade Post Conditions 
- Post conditions to override for the specified upgrade. Structure is documented below.
- upstreamFleets string[]
- Specified if other fleet should be considered as a source of upgrades. Currently, at most one upstream fleet is allowed. The fleet name should be either fleet project number or id.
- gkeUpgrade FeatureOverrides Spec Clusterupgrade Gke Upgrade Override[] 
- Configuration overrides for individual upgrades. Structure is documented below.
- postConditions FeatureSpec Clusterupgrade Post Conditions 
- Post conditions to override for the specified upgrade. Structure is documented below.
- upstream_fleets Sequence[str]
- Specified if other fleet should be considered as a source of upgrades. Currently, at most one upstream fleet is allowed. The fleet name should be either fleet project number or id.
- gke_upgrade_ Sequence[Featureoverrides Spec Clusterupgrade Gke Upgrade Override] 
- Configuration overrides for individual upgrades. Structure is documented below.
- post_conditions FeatureSpec Clusterupgrade Post Conditions 
- Post conditions to override for the specified upgrade. Structure is documented below.
- upstreamFleets List<String>
- Specified if other fleet should be considered as a source of upgrades. Currently, at most one upstream fleet is allowed. The fleet name should be either fleet project number or id.
- gkeUpgrade List<Property Map>Overrides 
- Configuration overrides for individual upgrades. Structure is documented below.
- postConditions Property Map
- Post conditions to override for the specified upgrade. Structure is documented below.
FeatureSpecClusterupgradeGkeUpgradeOverride, FeatureSpecClusterupgradeGkeUpgradeOverrideArgs            
- PostConditions FeatureSpec Clusterupgrade Gke Upgrade Override Post Conditions 
- Post conditions to override for the specified upgrade. Structure is documented below.
- Upgrade
FeatureSpec Clusterupgrade Gke Upgrade Override Upgrade 
- Which upgrade to override. Structure is documented below.
- PostConditions FeatureSpec Clusterupgrade Gke Upgrade Override Post Conditions 
- Post conditions to override for the specified upgrade. Structure is documented below.
- Upgrade
FeatureSpec Clusterupgrade Gke Upgrade Override Upgrade 
- Which upgrade to override. Structure is documented below.
- postConditions FeatureSpec Clusterupgrade Gke Upgrade Override Post Conditions 
- Post conditions to override for the specified upgrade. Structure is documented below.
- upgrade
FeatureSpec Clusterupgrade Gke Upgrade Override Upgrade 
- Which upgrade to override. Structure is documented below.
- postConditions FeatureSpec Clusterupgrade Gke Upgrade Override Post Conditions 
- Post conditions to override for the specified upgrade. Structure is documented below.
- upgrade
FeatureSpec Clusterupgrade Gke Upgrade Override Upgrade 
- Which upgrade to override. Structure is documented below.
- post_conditions FeatureSpec Clusterupgrade Gke Upgrade Override Post Conditions 
- Post conditions to override for the specified upgrade. Structure is documented below.
- upgrade
FeatureSpec Clusterupgrade Gke Upgrade Override Upgrade 
- Which upgrade to override. Structure is documented below.
- postConditions Property Map
- Post conditions to override for the specified upgrade. Structure is documented below.
- upgrade Property Map
- Which upgrade to override. Structure is documented below.
FeatureSpecClusterupgradeGkeUpgradeOverridePostConditions, FeatureSpecClusterupgradeGkeUpgradeOverridePostConditionsArgs                
- Soaking string
- Amount of time to "soak" after a rollout has been finished before marking it COMPLETE. Cannot exceed 30 days.
- Soaking string
- Amount of time to "soak" after a rollout has been finished before marking it COMPLETE. Cannot exceed 30 days.
- soaking String
- Amount of time to "soak" after a rollout has been finished before marking it COMPLETE. Cannot exceed 30 days.
- soaking string
- Amount of time to "soak" after a rollout has been finished before marking it COMPLETE. Cannot exceed 30 days.
- soaking str
- Amount of time to "soak" after a rollout has been finished before marking it COMPLETE. Cannot exceed 30 days.
- soaking String
- Amount of time to "soak" after a rollout has been finished before marking it COMPLETE. Cannot exceed 30 days.
FeatureSpecClusterupgradeGkeUpgradeOverrideUpgrade, FeatureSpecClusterupgradeGkeUpgradeOverrideUpgradeArgs              
FeatureSpecClusterupgradePostConditions, FeatureSpecClusterupgradePostConditionsArgs          
- Soaking string
- Amount of time to "soak" after a rollout has been finished before marking it COMPLETE. Cannot exceed 30 days.
- Soaking string
- Amount of time to "soak" after a rollout has been finished before marking it COMPLETE. Cannot exceed 30 days.
- soaking String
- Amount of time to "soak" after a rollout has been finished before marking it COMPLETE. Cannot exceed 30 days.
- soaking string
- Amount of time to "soak" after a rollout has been finished before marking it COMPLETE. Cannot exceed 30 days.
- soaking str
- Amount of time to "soak" after a rollout has been finished before marking it COMPLETE. Cannot exceed 30 days.
- soaking String
- Amount of time to "soak" after a rollout has been finished before marking it COMPLETE. Cannot exceed 30 days.
FeatureSpecFleetobservability, FeatureSpecFleetobservabilityArgs      
- LoggingConfig FeatureSpec Fleetobservability Logging Config 
- Specified if fleet logging feature is enabled for the entire fleet. If UNSPECIFIED, fleet logging feature is disabled for the entire fleet. Structure is documented below.
- LoggingConfig FeatureSpec Fleetobservability Logging Config 
- Specified if fleet logging feature is enabled for the entire fleet. If UNSPECIFIED, fleet logging feature is disabled for the entire fleet. Structure is documented below.
- loggingConfig FeatureSpec Fleetobservability Logging Config 
- Specified if fleet logging feature is enabled for the entire fleet. If UNSPECIFIED, fleet logging feature is disabled for the entire fleet. Structure is documented below.
- loggingConfig FeatureSpec Fleetobservability Logging Config 
- Specified if fleet logging feature is enabled for the entire fleet. If UNSPECIFIED, fleet logging feature is disabled for the entire fleet. Structure is documented below.
- logging_config FeatureSpec Fleetobservability Logging Config 
- Specified if fleet logging feature is enabled for the entire fleet. If UNSPECIFIED, fleet logging feature is disabled for the entire fleet. Structure is documented below.
- loggingConfig Property Map
- Specified if fleet logging feature is enabled for the entire fleet. If UNSPECIFIED, fleet logging feature is disabled for the entire fleet. Structure is documented below.
FeatureSpecFleetobservabilityLoggingConfig, FeatureSpecFleetobservabilityLoggingConfigArgs          
- DefaultConfig FeatureSpec Fleetobservability Logging Config Default Config 
- Specified if applying the default routing config to logs not specified in other configs. Structure is documented below.
- FleetScope FeatureLogs Config Spec Fleetobservability Logging Config Fleet Scope Logs Config 
- Specified if applying the routing config to all logs for all fleet scopes. Structure is documented below.
- DefaultConfig FeatureSpec Fleetobservability Logging Config Default Config 
- Specified if applying the default routing config to logs not specified in other configs. Structure is documented below.
- FleetScope FeatureLogs Config Spec Fleetobservability Logging Config Fleet Scope Logs Config 
- Specified if applying the routing config to all logs for all fleet scopes. Structure is documented below.
- defaultConfig FeatureSpec Fleetobservability Logging Config Default Config 
- Specified if applying the default routing config to logs not specified in other configs. Structure is documented below.
- fleetScope FeatureLogs Config Spec Fleetobservability Logging Config Fleet Scope Logs Config 
- Specified if applying the routing config to all logs for all fleet scopes. Structure is documented below.
- defaultConfig FeatureSpec Fleetobservability Logging Config Default Config 
- Specified if applying the default routing config to logs not specified in other configs. Structure is documented below.
- fleetScope FeatureLogs Config Spec Fleetobservability Logging Config Fleet Scope Logs Config 
- Specified if applying the routing config to all logs for all fleet scopes. Structure is documented below.
- default_config FeatureSpec Fleetobservability Logging Config Default Config 
- Specified if applying the default routing config to logs not specified in other configs. Structure is documented below.
- fleet_scope_ Featurelogs_ config Spec Fleetobservability Logging Config Fleet Scope Logs Config 
- Specified if applying the routing config to all logs for all fleet scopes. Structure is documented below.
- defaultConfig Property Map
- Specified if applying the default routing config to logs not specified in other configs. Structure is documented below.
- fleetScope Property MapLogs Config 
- Specified if applying the routing config to all logs for all fleet scopes. Structure is documented below.
FeatureSpecFleetobservabilityLoggingConfigDefaultConfig, FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs              
- Mode string
- Specified if fleet logging feature is enabled.
Possible values are: MODE_UNSPECIFIED,COPY,MOVE.
- Mode string
- Specified if fleet logging feature is enabled.
Possible values are: MODE_UNSPECIFIED,COPY,MOVE.
- mode String
- Specified if fleet logging feature is enabled.
Possible values are: MODE_UNSPECIFIED,COPY,MOVE.
- mode string
- Specified if fleet logging feature is enabled.
Possible values are: MODE_UNSPECIFIED,COPY,MOVE.
- mode str
- Specified if fleet logging feature is enabled.
Possible values are: MODE_UNSPECIFIED,COPY,MOVE.
- mode String
- Specified if fleet logging feature is enabled.
Possible values are: MODE_UNSPECIFIED,COPY,MOVE.
FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfig, FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs                  
- Mode string
- Specified if fleet logging feature is enabled.
Possible values are: MODE_UNSPECIFIED,COPY,MOVE.
- Mode string
- Specified if fleet logging feature is enabled.
Possible values are: MODE_UNSPECIFIED,COPY,MOVE.
- mode String
- Specified if fleet logging feature is enabled.
Possible values are: MODE_UNSPECIFIED,COPY,MOVE.
- mode string
- Specified if fleet logging feature is enabled.
Possible values are: MODE_UNSPECIFIED,COPY,MOVE.
- mode str
- Specified if fleet logging feature is enabled.
Possible values are: MODE_UNSPECIFIED,COPY,MOVE.
- mode String
- Specified if fleet logging feature is enabled.
Possible values are: MODE_UNSPECIFIED,COPY,MOVE.
FeatureSpecMulticlusteringress, FeatureSpecMulticlusteringressArgs      
- ConfigMembership string
- Fully-qualified Membership name which hosts the MultiClusterIngress CRD. Example: projects/foo-proj/locations/global/memberships/bar
- ConfigMembership string
- Fully-qualified Membership name which hosts the MultiClusterIngress CRD. Example: projects/foo-proj/locations/global/memberships/bar
- configMembership String
- Fully-qualified Membership name which hosts the MultiClusterIngress CRD. Example: projects/foo-proj/locations/global/memberships/bar
- configMembership string
- Fully-qualified Membership name which hosts the MultiClusterIngress CRD. Example: projects/foo-proj/locations/global/memberships/bar
- config_membership str
- Fully-qualified Membership name which hosts the MultiClusterIngress CRD. Example: projects/foo-proj/locations/global/memberships/bar
- configMembership String
- Fully-qualified Membership name which hosts the MultiClusterIngress CRD. Example: projects/foo-proj/locations/global/memberships/bar
FeatureState, FeatureStateArgs    
- States
List<FeatureState State> 
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- States
[]FeatureState State 
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- states
List<FeatureState State> 
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- states
FeatureState State[] 
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- states
Sequence[FeatureState State] 
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
- states List<Property Map>
- (Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.
FeatureStateState, FeatureStateStateArgs      
- Code string
- (Output) The high-level, machine-readable status of this Feature.
- Description string
- (Output) A human-readable description of the current status.
- UpdateTime string
- (Output) The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
- Code string
- (Output) The high-level, machine-readable status of this Feature.
- Description string
- (Output) A human-readable description of the current status.
- UpdateTime string
- (Output) The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
- code String
- (Output) The high-level, machine-readable status of this Feature.
- description String
- (Output) A human-readable description of the current status.
- updateTime String
- (Output) The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
- code string
- (Output) The high-level, machine-readable status of this Feature.
- description string
- (Output) A human-readable description of the current status.
- updateTime string
- (Output) The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
- code str
- (Output) The high-level, machine-readable status of this Feature.
- description str
- (Output) A human-readable description of the current status.
- update_time str
- (Output) The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
- code String
- (Output) The high-level, machine-readable status of this Feature.
- description String
- (Output) A human-readable description of the current status.
- updateTime String
- (Output) The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
Import
Feature can be imported using any of these accepted formats:
- projects/{{project}}/locations/{{location}}/features/{{name}}
- {{project}}/{{location}}/{{name}}
- {{location}}/{{name}}
When using the pulumi import command, Feature can be imported using one of the formats above. For example:
$ pulumi import gcp:gkehub/feature:Feature default projects/{{project}}/locations/{{location}}/features/{{name}}
$ pulumi import gcp:gkehub/feature:Feature default {{project}}/{{location}}/{{name}}
$ pulumi import gcp:gkehub/feature:Feature default {{location}}/{{name}}
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Google Cloud (GCP) Classic pulumi/pulumi-gcp
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the google-betaTerraform Provider.