1. Packages
  2. Packages
  3. Harness Provider
  4. API Docs
  5. chaos
  6. FaultTemplate
Viewing docs for Harness v0.12.0
published on Tuesday, Apr 21, 2026 by Pulumi
harness logo
Viewing docs for Harness v0.12.0
published on Tuesday, Apr 21, 2026 by Pulumi

    Resource for managing Harness Chaos Fault Templates. Phase 1: Core fields (identity, name, description, tags, category, infrastructure, basic spec)

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as harness from "@pulumi/harness";
    
    // ============================================================================
    // Harness Chaos Fault Template Resource Examples
    // ============================================================================
    //
    // Fault templates define reusable chaos faults for experiments.
    // These examples are based on TESTED configurations from the e2e-test suite.
    //
    // Key Points:
    // - Faults inject failures into systems (pod delete, network latency, etc.)
    // - Type is usually "Custom" for custom faults
    // - Category and infrastructures define where fault can run
    // ============================================================================
    // ----------------------------------------------------------------------------
    // Example 1: Basic Kubernetes Fault (TESTED ✅)
    // ----------------------------------------------------------------------------
    // Most common pattern: Custom Kubernetes fault with container spec
    const kubernetesFault = new harness.chaos.FaultTemplate("kubernetes_fault", {
        orgId: _this.id,
        projectId: thisHarnessPlatformProject.id,
        hubIdentity: projectLevel.identity,
        identity: "k8s-fault-template",
        name: "Kubernetes Fault Template",
        description: "Custom Kubernetes fault for chaos injection",
        categories: ["Kubernetes"],
        infrastructures: ["KubernetesV2"],
        type: "Custom",
        permissionsRequired: "Basic",
        tags: [
            "kubernetes",
            "fault",
            "custom",
        ],
        links: [{
            name: "Documentation",
            url: "https://docs.harness.io/chaos",
        }],
        spec: {
            chaos: {
                faultName: "byoc-injector",
                params: [
                    {
                        name: "CHAOS_DURATION",
                        value: "30s",
                    },
                    {
                        name: "CHAOS_INTERVAL",
                        value: "5s",
                    },
                ],
                kubernetes: {
                    image: "chaosnative/go-runner:ci",
                    commands: [
                        "/bin/bash",
                        "-c",
                    ],
                    args: ["echo 'Running chaos fault'; sleep 30"],
                    imagePullPolicy: "IfNotPresent",
                    resources: {
                        limits: {
                            cpu: "150m",
                            memory: "150Mi",
                        },
                        requests: {
                            cpu: "100m",
                            memory: "100Mi",
                        },
                    },
                },
            },
        },
    }, {
        dependsOn: [projectLevel],
    });
    // ----------------------------------------------------------------------------
    // Example 2: Fault with Environment Variables (TESTED ✅)
    // ----------------------------------------------------------------------------
    // Fault with environment variables for configuration
    const faultWithEnv = new harness.chaos.FaultTemplate("fault_with_env", {
        orgId: _this.id,
        projectId: thisHarnessPlatformProject.id,
        hubIdentity: projectLevel.identity,
        identity: "fault-with-env-template",
        name: "Fault with Environment Variables",
        description: "Fault template with environment configuration",
        categories: ["Kubernetes"],
        infrastructures: ["KubernetesV2"],
        type: "Custom",
        permissionsRequired: "Basic",
        tags: [
            "kubernetes",
            "env",
            "config",
        ],
        links: [{
            name: "Documentation",
            url: "https://docs.harness.io/chaos",
        }],
        spec: {
            chaos: {
                faultName: "byoc-injector",
                params: [
                    {
                        name: "CHAOS_DURATION",
                        value: "15s",
                    },
                    {
                        name: "CHAOS_INTERVAL",
                        value: "3s",
                    },
                    {
                        name: "TARGET_NAMESPACE",
                        value: "<+input>.default('default')",
                    },
                ],
                kubernetes: {
                    image: "chaosnative/go-runner:ci",
                    commands: [
                        "/bin/bash",
                        "-c",
                    ],
                    args: ["echo 'Fault with env vars'; sleep 15"],
                    imagePullPolicy: "IfNotPresent",
                    envs: [
                        {
                            name: "TARGET_NAMESPACE",
                            value: "<+input>.default('default')",
                        },
                        {
                            name: "CHAOS_MODE",
                            value: "pod",
                        },
                    ],
                    resources: {
                        limits: {
                            cpu: "200m",
                            memory: "200Mi",
                        },
                    },
                },
            },
        },
        variables: [{
            name: "target_namespace",
            value: "<+input>",
            type: "string",
            required: false,
            description: "Target namespace for chaos injection",
        }],
    }, {
        dependsOn: [projectLevel],
    });
    // ----------------------------------------------------------------------------
    // Example 3: Fault with Advanced Configuration (TESTED ✅)
    // ----------------------------------------------------------------------------
    // Fault with node selector, labels, and annotations
    const advancedFault = new harness.chaos.FaultTemplate("advanced_fault", {
        orgId: _this.id,
        projectId: thisHarnessPlatformProject.id,
        hubIdentity: projectLevel.identity,
        identity: "advanced-fault-template",
        name: "Advanced Fault Template",
        description: "Fault with advanced Kubernetes configuration",
        categories: ["Kubernetes"],
        infrastructures: ["KubernetesV2"],
        type: "Custom",
        permissionsRequired: "Basic",
        tags: [
            "kubernetes",
            "advanced",
            "production",
        ],
        links: [
            {
                name: "Documentation",
                url: "https://docs.harness.io/chaos",
            },
            {
                name: "Support",
                url: "https://support.harness.io",
            },
        ],
        spec: {
            chaos: {
                faultName: "byoc-injector",
                params: [
                    {
                        name: "CHAOS_DURATION",
                        value: "<+input>.default('30s')",
                    },
                    {
                        name: "CHAOS_INTERVAL",
                        value: "<+input>.default('5s')",
                    },
                ],
                kubernetes: {
                    image: "chaosnative/go-runner:ci",
                    commands: [
                        "/bin/bash",
                        "-c",
                    ],
                    args: ["echo 'Advanced chaos fault'; sleep 30"],
                    imagePullPolicy: "IfNotPresent",
                    nodeSelector: {
                        disktype: "ssd",
                        zone: "us-west-1a",
                    },
                    labels: {
                        app: "chaos-fault",
                        environment: "production",
                        "managed-by": "terraform",
                    },
                    annotations: {
                        description: "Advanced chaos fault",
                        owner: "chaos-team",
                    },
                    resources: {
                        limits: {
                            cpu: "250m",
                            memory: "256Mi",
                        },
                        requests: {
                            cpu: "125m",
                            memory: "128Mi",
                        },
                    },
                },
            },
        },
        variables: [
            {
                name: "chaos_duration",
                value: "<+input>",
                type: "string",
                required: true,
                description: "Duration of chaos injection",
            },
            {
                name: "chaos_interval",
                value: "<+input>",
                type: "string",
                required: false,
                description: "Interval between chaos injections",
            },
        ],
    }, {
        dependsOn: [projectLevel],
    });
    
    import pulumi
    import pulumi_harness as harness
    
    # ============================================================================
    # Harness Chaos Fault Template Resource Examples
    # ============================================================================
    #
    # Fault templates define reusable chaos faults for experiments.
    # These examples are based on TESTED configurations from the e2e-test suite.
    #
    # Key Points:
    # - Faults inject failures into systems (pod delete, network latency, etc.)
    # - Type is usually "Custom" for custom faults
    # - Category and infrastructures define where fault can run
    # ============================================================================
    # ----------------------------------------------------------------------------
    # Example 1: Basic Kubernetes Fault (TESTED ✅)
    # ----------------------------------------------------------------------------
    # Most common pattern: Custom Kubernetes fault with container spec
    kubernetes_fault = harness.chaos.FaultTemplate("kubernetes_fault",
        org_id=this["id"],
        project_id=this_harness_platform_project["id"],
        hub_identity=project_level["identity"],
        identity="k8s-fault-template",
        name="Kubernetes Fault Template",
        description="Custom Kubernetes fault for chaos injection",
        categories=["Kubernetes"],
        infrastructures=["KubernetesV2"],
        type="Custom",
        permissions_required="Basic",
        tags=[
            "kubernetes",
            "fault",
            "custom",
        ],
        links=[{
            "name": "Documentation",
            "url": "https://docs.harness.io/chaos",
        }],
        spec={
            "chaos": {
                "fault_name": "byoc-injector",
                "params": [
                    {
                        "name": "CHAOS_DURATION",
                        "value": "30s",
                    },
                    {
                        "name": "CHAOS_INTERVAL",
                        "value": "5s",
                    },
                ],
                "kubernetes": {
                    "image": "chaosnative/go-runner:ci",
                    "commands": [
                        "/bin/bash",
                        "-c",
                    ],
                    "args": ["echo 'Running chaos fault'; sleep 30"],
                    "image_pull_policy": "IfNotPresent",
                    "resources": {
                        "limits": {
                            "cpu": "150m",
                            "memory": "150Mi",
                        },
                        "requests": {
                            "cpu": "100m",
                            "memory": "100Mi",
                        },
                    },
                },
            },
        },
        opts = pulumi.ResourceOptions(depends_on=[project_level]))
    # ----------------------------------------------------------------------------
    # Example 2: Fault with Environment Variables (TESTED ✅)
    # ----------------------------------------------------------------------------
    # Fault with environment variables for configuration
    fault_with_env = harness.chaos.FaultTemplate("fault_with_env",
        org_id=this["id"],
        project_id=this_harness_platform_project["id"],
        hub_identity=project_level["identity"],
        identity="fault-with-env-template",
        name="Fault with Environment Variables",
        description="Fault template with environment configuration",
        categories=["Kubernetes"],
        infrastructures=["KubernetesV2"],
        type="Custom",
        permissions_required="Basic",
        tags=[
            "kubernetes",
            "env",
            "config",
        ],
        links=[{
            "name": "Documentation",
            "url": "https://docs.harness.io/chaos",
        }],
        spec={
            "chaos": {
                "fault_name": "byoc-injector",
                "params": [
                    {
                        "name": "CHAOS_DURATION",
                        "value": "15s",
                    },
                    {
                        "name": "CHAOS_INTERVAL",
                        "value": "3s",
                    },
                    {
                        "name": "TARGET_NAMESPACE",
                        "value": "<+input>.default('default')",
                    },
                ],
                "kubernetes": {
                    "image": "chaosnative/go-runner:ci",
                    "commands": [
                        "/bin/bash",
                        "-c",
                    ],
                    "args": ["echo 'Fault with env vars'; sleep 15"],
                    "image_pull_policy": "IfNotPresent",
                    "envs": [
                        {
                            "name": "TARGET_NAMESPACE",
                            "value": "<+input>.default('default')",
                        },
                        {
                            "name": "CHAOS_MODE",
                            "value": "pod",
                        },
                    ],
                    "resources": {
                        "limits": {
                            "cpu": "200m",
                            "memory": "200Mi",
                        },
                    },
                },
            },
        },
        variables=[{
            "name": "target_namespace",
            "value": "<+input>",
            "type": "string",
            "required": False,
            "description": "Target namespace for chaos injection",
        }],
        opts = pulumi.ResourceOptions(depends_on=[project_level]))
    # ----------------------------------------------------------------------------
    # Example 3: Fault with Advanced Configuration (TESTED ✅)
    # ----------------------------------------------------------------------------
    # Fault with node selector, labels, and annotations
    advanced_fault = harness.chaos.FaultTemplate("advanced_fault",
        org_id=this["id"],
        project_id=this_harness_platform_project["id"],
        hub_identity=project_level["identity"],
        identity="advanced-fault-template",
        name="Advanced Fault Template",
        description="Fault with advanced Kubernetes configuration",
        categories=["Kubernetes"],
        infrastructures=["KubernetesV2"],
        type="Custom",
        permissions_required="Basic",
        tags=[
            "kubernetes",
            "advanced",
            "production",
        ],
        links=[
            {
                "name": "Documentation",
                "url": "https://docs.harness.io/chaos",
            },
            {
                "name": "Support",
                "url": "https://support.harness.io",
            },
        ],
        spec={
            "chaos": {
                "fault_name": "byoc-injector",
                "params": [
                    {
                        "name": "CHAOS_DURATION",
                        "value": "<+input>.default('30s')",
                    },
                    {
                        "name": "CHAOS_INTERVAL",
                        "value": "<+input>.default('5s')",
                    },
                ],
                "kubernetes": {
                    "image": "chaosnative/go-runner:ci",
                    "commands": [
                        "/bin/bash",
                        "-c",
                    ],
                    "args": ["echo 'Advanced chaos fault'; sleep 30"],
                    "image_pull_policy": "IfNotPresent",
                    "node_selector": {
                        "disktype": "ssd",
                        "zone": "us-west-1a",
                    },
                    "labels": {
                        "app": "chaos-fault",
                        "environment": "production",
                        "managed-by": "terraform",
                    },
                    "annotations": {
                        "description": "Advanced chaos fault",
                        "owner": "chaos-team",
                    },
                    "resources": {
                        "limits": {
                            "cpu": "250m",
                            "memory": "256Mi",
                        },
                        "requests": {
                            "cpu": "125m",
                            "memory": "128Mi",
                        },
                    },
                },
            },
        },
        variables=[
            {
                "name": "chaos_duration",
                "value": "<+input>",
                "type": "string",
                "required": True,
                "description": "Duration of chaos injection",
            },
            {
                "name": "chaos_interval",
                "value": "<+input>",
                "type": "string",
                "required": False,
                "description": "Interval between chaos injections",
            },
        ],
        opts = pulumi.ResourceOptions(depends_on=[project_level]))
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-harness/sdk/go/harness/chaos"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// ============================================================================
    		// Harness Chaos Fault Template Resource Examples
    		// ============================================================================
    		//
    		// Fault templates define reusable chaos faults for experiments.
    		// These examples are based on TESTED configurations from the e2e-test suite.
    		//
    		// Key Points:
    		// - Faults inject failures into systems (pod delete, network latency, etc.)
    		// - Type is usually "Custom" for custom faults
    		// - Category and infrastructures define where fault can run
    		// ============================================================================
    		// ----------------------------------------------------------------------------
    		// Example 1: Basic Kubernetes Fault (TESTED ✅)
    		// ----------------------------------------------------------------------------
    		// Most common pattern: Custom Kubernetes fault with container spec
    		_, err := chaos.NewFaultTemplate(ctx, "kubernetes_fault", &chaos.FaultTemplateArgs{
    			OrgId:       pulumi.Any(this.Id),
    			ProjectId:   pulumi.Any(thisHarnessPlatformProject.Id),
    			HubIdentity: pulumi.Any(projectLevel.Identity),
    			Identity:    pulumi.String("k8s-fault-template"),
    			Name:        pulumi.String("Kubernetes Fault Template"),
    			Description: pulumi.String("Custom Kubernetes fault for chaos injection"),
    			Categories: pulumi.StringArray{
    				pulumi.String("Kubernetes"),
    			},
    			Infrastructures: pulumi.StringArray{
    				pulumi.String("KubernetesV2"),
    			},
    			Type:                pulumi.String("Custom"),
    			PermissionsRequired: pulumi.String("Basic"),
    			Tags: pulumi.StringArray{
    				pulumi.String("kubernetes"),
    				pulumi.String("fault"),
    				pulumi.String("custom"),
    			},
    			Links: chaos.FaultTemplateLinkArray{
    				&chaos.FaultTemplateLinkArgs{
    					Name: pulumi.String("Documentation"),
    					Url:  pulumi.String("https://docs.harness.io/chaos"),
    				},
    			},
    			Spec: &chaos.FaultTemplateSpecArgs{
    				Chaos: &chaos.FaultTemplateSpecChaosArgs{
    					FaultName: pulumi.String("byoc-injector"),
    					Params: chaos.FaultTemplateSpecChaosParamArray{
    						&chaos.FaultTemplateSpecChaosParamArgs{
    							Name:  pulumi.String("CHAOS_DURATION"),
    							Value: pulumi.String("30s"),
    						},
    						&chaos.FaultTemplateSpecChaosParamArgs{
    							Name:  pulumi.String("CHAOS_INTERVAL"),
    							Value: pulumi.String("5s"),
    						},
    					},
    					Kubernetes: &chaos.FaultTemplateSpecChaosKubernetesArgs{
    						Image: pulumi.String("chaosnative/go-runner:ci"),
    						Commands: pulumi.StringArray{
    							pulumi.String("/bin/bash"),
    							pulumi.String("-c"),
    						},
    						Args: pulumi.StringArray{
    							pulumi.String("echo 'Running chaos fault'; sleep 30"),
    						},
    						ImagePullPolicy: pulumi.String("IfNotPresent"),
    						Resources: &chaos.FaultTemplateSpecChaosKubernetesResourcesArgs{
    							Limits: pulumi.StringMap{
    								"cpu":    pulumi.String("150m"),
    								"memory": pulumi.String("150Mi"),
    							},
    							Requests: pulumi.StringMap{
    								"cpu":    pulumi.String("100m"),
    								"memory": pulumi.String("100Mi"),
    							},
    						},
    					},
    				},
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			projectLevel,
    		}))
    		if err != nil {
    			return err
    		}
    		// ----------------------------------------------------------------------------
    		// Example 2: Fault with Environment Variables (TESTED ✅)
    		// ----------------------------------------------------------------------------
    		// Fault with environment variables for configuration
    		_, err = chaos.NewFaultTemplate(ctx, "fault_with_env", &chaos.FaultTemplateArgs{
    			OrgId:       pulumi.Any(this.Id),
    			ProjectId:   pulumi.Any(thisHarnessPlatformProject.Id),
    			HubIdentity: pulumi.Any(projectLevel.Identity),
    			Identity:    pulumi.String("fault-with-env-template"),
    			Name:        pulumi.String("Fault with Environment Variables"),
    			Description: pulumi.String("Fault template with environment configuration"),
    			Categories: pulumi.StringArray{
    				pulumi.String("Kubernetes"),
    			},
    			Infrastructures: pulumi.StringArray{
    				pulumi.String("KubernetesV2"),
    			},
    			Type:                pulumi.String("Custom"),
    			PermissionsRequired: pulumi.String("Basic"),
    			Tags: pulumi.StringArray{
    				pulumi.String("kubernetes"),
    				pulumi.String("env"),
    				pulumi.String("config"),
    			},
    			Links: chaos.FaultTemplateLinkArray{
    				&chaos.FaultTemplateLinkArgs{
    					Name: pulumi.String("Documentation"),
    					Url:  pulumi.String("https://docs.harness.io/chaos"),
    				},
    			},
    			Spec: &chaos.FaultTemplateSpecArgs{
    				Chaos: &chaos.FaultTemplateSpecChaosArgs{
    					FaultName: pulumi.String("byoc-injector"),
    					Params: chaos.FaultTemplateSpecChaosParamArray{
    						&chaos.FaultTemplateSpecChaosParamArgs{
    							Name:  pulumi.String("CHAOS_DURATION"),
    							Value: pulumi.String("15s"),
    						},
    						&chaos.FaultTemplateSpecChaosParamArgs{
    							Name:  pulumi.String("CHAOS_INTERVAL"),
    							Value: pulumi.String("3s"),
    						},
    						&chaos.FaultTemplateSpecChaosParamArgs{
    							Name:  pulumi.String("TARGET_NAMESPACE"),
    							Value: pulumi.String("<+input>.default('default')"),
    						},
    					},
    					Kubernetes: &chaos.FaultTemplateSpecChaosKubernetesArgs{
    						Image: pulumi.String("chaosnative/go-runner:ci"),
    						Commands: pulumi.StringArray{
    							pulumi.String("/bin/bash"),
    							pulumi.String("-c"),
    						},
    						Args: pulumi.StringArray{
    							pulumi.String("echo 'Fault with env vars'; sleep 15"),
    						},
    						ImagePullPolicy: pulumi.String("IfNotPresent"),
    						Envs: chaos.FaultTemplateSpecChaosKubernetesEnvArray{
    							&chaos.FaultTemplateSpecChaosKubernetesEnvArgs{
    								Name:  pulumi.String("TARGET_NAMESPACE"),
    								Value: pulumi.String("<+input>.default('default')"),
    							},
    							&chaos.FaultTemplateSpecChaosKubernetesEnvArgs{
    								Name:  pulumi.String("CHAOS_MODE"),
    								Value: pulumi.String("pod"),
    							},
    						},
    						Resources: &chaos.FaultTemplateSpecChaosKubernetesResourcesArgs{
    							Limits: pulumi.StringMap{
    								"cpu":    pulumi.String("200m"),
    								"memory": pulumi.String("200Mi"),
    							},
    						},
    					},
    				},
    			},
    			Variables: chaos.FaultTemplateVariableArray{
    				&chaos.FaultTemplateVariableArgs{
    					Name:        pulumi.String("target_namespace"),
    					Value:       pulumi.String("<+input>"),
    					Type:        pulumi.String("string"),
    					Required:    pulumi.Bool(false),
    					Description: pulumi.String("Target namespace for chaos injection"),
    				},
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			projectLevel,
    		}))
    		if err != nil {
    			return err
    		}
    		// ----------------------------------------------------------------------------
    		// Example 3: Fault with Advanced Configuration (TESTED ✅)
    		// ----------------------------------------------------------------------------
    		// Fault with node selector, labels, and annotations
    		_, err = chaos.NewFaultTemplate(ctx, "advanced_fault", &chaos.FaultTemplateArgs{
    			OrgId:       pulumi.Any(this.Id),
    			ProjectId:   pulumi.Any(thisHarnessPlatformProject.Id),
    			HubIdentity: pulumi.Any(projectLevel.Identity),
    			Identity:    pulumi.String("advanced-fault-template"),
    			Name:        pulumi.String("Advanced Fault Template"),
    			Description: pulumi.String("Fault with advanced Kubernetes configuration"),
    			Categories: pulumi.StringArray{
    				pulumi.String("Kubernetes"),
    			},
    			Infrastructures: pulumi.StringArray{
    				pulumi.String("KubernetesV2"),
    			},
    			Type:                pulumi.String("Custom"),
    			PermissionsRequired: pulumi.String("Basic"),
    			Tags: pulumi.StringArray{
    				pulumi.String("kubernetes"),
    				pulumi.String("advanced"),
    				pulumi.String("production"),
    			},
    			Links: chaos.FaultTemplateLinkArray{
    				&chaos.FaultTemplateLinkArgs{
    					Name: pulumi.String("Documentation"),
    					Url:  pulumi.String("https://docs.harness.io/chaos"),
    				},
    				&chaos.FaultTemplateLinkArgs{
    					Name: pulumi.String("Support"),
    					Url:  pulumi.String("https://support.harness.io"),
    				},
    			},
    			Spec: &chaos.FaultTemplateSpecArgs{
    				Chaos: &chaos.FaultTemplateSpecChaosArgs{
    					FaultName: pulumi.String("byoc-injector"),
    					Params: chaos.FaultTemplateSpecChaosParamArray{
    						&chaos.FaultTemplateSpecChaosParamArgs{
    							Name:  pulumi.String("CHAOS_DURATION"),
    							Value: pulumi.String("<+input>.default('30s')"),
    						},
    						&chaos.FaultTemplateSpecChaosParamArgs{
    							Name:  pulumi.String("CHAOS_INTERVAL"),
    							Value: pulumi.String("<+input>.default('5s')"),
    						},
    					},
    					Kubernetes: &chaos.FaultTemplateSpecChaosKubernetesArgs{
    						Image: pulumi.String("chaosnative/go-runner:ci"),
    						Commands: pulumi.StringArray{
    							pulumi.String("/bin/bash"),
    							pulumi.String("-c"),
    						},
    						Args: pulumi.StringArray{
    							pulumi.String("echo 'Advanced chaos fault'; sleep 30"),
    						},
    						ImagePullPolicy: pulumi.String("IfNotPresent"),
    						NodeSelector: pulumi.StringMap{
    							"disktype": pulumi.String("ssd"),
    							"zone":     pulumi.String("us-west-1a"),
    						},
    						Labels: pulumi.StringMap{
    							"app":         pulumi.String("chaos-fault"),
    							"environment": pulumi.String("production"),
    							"managed-by":  pulumi.String("terraform"),
    						},
    						Annotations: pulumi.StringMap{
    							"description": pulumi.String("Advanced chaos fault"),
    							"owner":       pulumi.String("chaos-team"),
    						},
    						Resources: &chaos.FaultTemplateSpecChaosKubernetesResourcesArgs{
    							Limits: pulumi.StringMap{
    								"cpu":    pulumi.String("250m"),
    								"memory": pulumi.String("256Mi"),
    							},
    							Requests: pulumi.StringMap{
    								"cpu":    pulumi.String("125m"),
    								"memory": pulumi.String("128Mi"),
    							},
    						},
    					},
    				},
    			},
    			Variables: chaos.FaultTemplateVariableArray{
    				&chaos.FaultTemplateVariableArgs{
    					Name:        pulumi.String("chaos_duration"),
    					Value:       pulumi.String("<+input>"),
    					Type:        pulumi.String("string"),
    					Required:    pulumi.Bool(true),
    					Description: pulumi.String("Duration of chaos injection"),
    				},
    				&chaos.FaultTemplateVariableArgs{
    					Name:        pulumi.String("chaos_interval"),
    					Value:       pulumi.String("<+input>"),
    					Type:        pulumi.String("string"),
    					Required:    pulumi.Bool(false),
    					Description: pulumi.String("Interval between chaos injections"),
    				},
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			projectLevel,
    		}))
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Harness = Pulumi.Harness;
    
    return await Deployment.RunAsync(() => 
    {
        // ============================================================================
        // Harness Chaos Fault Template Resource Examples
        // ============================================================================
        //
        // Fault templates define reusable chaos faults for experiments.
        // These examples are based on TESTED configurations from the e2e-test suite.
        //
        // Key Points:
        // - Faults inject failures into systems (pod delete, network latency, etc.)
        // - Type is usually "Custom" for custom faults
        // - Category and infrastructures define where fault can run
        // ============================================================================
        // ----------------------------------------------------------------------------
        // Example 1: Basic Kubernetes Fault (TESTED ✅)
        // ----------------------------------------------------------------------------
        // Most common pattern: Custom Kubernetes fault with container spec
        var kubernetesFault = new Harness.Chaos.FaultTemplate("kubernetes_fault", new()
        {
            OrgId = @this.Id,
            ProjectId = thisHarnessPlatformProject.Id,
            HubIdentity = projectLevel.Identity,
            Identity = "k8s-fault-template",
            Name = "Kubernetes Fault Template",
            Description = "Custom Kubernetes fault for chaos injection",
            Categories = new[]
            {
                "Kubernetes",
            },
            Infrastructures = new[]
            {
                "KubernetesV2",
            },
            Type = "Custom",
            PermissionsRequired = "Basic",
            Tags = new[]
            {
                "kubernetes",
                "fault",
                "custom",
            },
            Links = new[]
            {
                new Harness.Chaos.Inputs.FaultTemplateLinkArgs
                {
                    Name = "Documentation",
                    Url = "https://docs.harness.io/chaos",
                },
            },
            Spec = new Harness.Chaos.Inputs.FaultTemplateSpecArgs
            {
                Chaos = new Harness.Chaos.Inputs.FaultTemplateSpecChaosArgs
                {
                    FaultName = "byoc-injector",
                    Params = new[]
                    {
                        new Harness.Chaos.Inputs.FaultTemplateSpecChaosParamArgs
                        {
                            Name = "CHAOS_DURATION",
                            Value = "30s",
                        },
                        new Harness.Chaos.Inputs.FaultTemplateSpecChaosParamArgs
                        {
                            Name = "CHAOS_INTERVAL",
                            Value = "5s",
                        },
                    },
                    Kubernetes = new Harness.Chaos.Inputs.FaultTemplateSpecChaosKubernetesArgs
                    {
                        Image = "chaosnative/go-runner:ci",
                        Commands = new[]
                        {
                            "/bin/bash",
                            "-c",
                        },
                        Args = new[]
                        {
                            "echo 'Running chaos fault'; sleep 30",
                        },
                        ImagePullPolicy = "IfNotPresent",
                        Resources = new Harness.Chaos.Inputs.FaultTemplateSpecChaosKubernetesResourcesArgs
                        {
                            Limits = 
                            {
                                { "cpu", "150m" },
                                { "memory", "150Mi" },
                            },
                            Requests = 
                            {
                                { "cpu", "100m" },
                                { "memory", "100Mi" },
                            },
                        },
                    },
                },
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                projectLevel,
            },
        });
    
        // ----------------------------------------------------------------------------
        // Example 2: Fault with Environment Variables (TESTED ✅)
        // ----------------------------------------------------------------------------
        // Fault with environment variables for configuration
        var faultWithEnv = new Harness.Chaos.FaultTemplate("fault_with_env", new()
        {
            OrgId = @this.Id,
            ProjectId = thisHarnessPlatformProject.Id,
            HubIdentity = projectLevel.Identity,
            Identity = "fault-with-env-template",
            Name = "Fault with Environment Variables",
            Description = "Fault template with environment configuration",
            Categories = new[]
            {
                "Kubernetes",
            },
            Infrastructures = new[]
            {
                "KubernetesV2",
            },
            Type = "Custom",
            PermissionsRequired = "Basic",
            Tags = new[]
            {
                "kubernetes",
                "env",
                "config",
            },
            Links = new[]
            {
                new Harness.Chaos.Inputs.FaultTemplateLinkArgs
                {
                    Name = "Documentation",
                    Url = "https://docs.harness.io/chaos",
                },
            },
            Spec = new Harness.Chaos.Inputs.FaultTemplateSpecArgs
            {
                Chaos = new Harness.Chaos.Inputs.FaultTemplateSpecChaosArgs
                {
                    FaultName = "byoc-injector",
                    Params = new[]
                    {
                        new Harness.Chaos.Inputs.FaultTemplateSpecChaosParamArgs
                        {
                            Name = "CHAOS_DURATION",
                            Value = "15s",
                        },
                        new Harness.Chaos.Inputs.FaultTemplateSpecChaosParamArgs
                        {
                            Name = "CHAOS_INTERVAL",
                            Value = "3s",
                        },
                        new Harness.Chaos.Inputs.FaultTemplateSpecChaosParamArgs
                        {
                            Name = "TARGET_NAMESPACE",
                            Value = "<+input>.default('default')",
                        },
                    },
                    Kubernetes = new Harness.Chaos.Inputs.FaultTemplateSpecChaosKubernetesArgs
                    {
                        Image = "chaosnative/go-runner:ci",
                        Commands = new[]
                        {
                            "/bin/bash",
                            "-c",
                        },
                        Args = new[]
                        {
                            "echo 'Fault with env vars'; sleep 15",
                        },
                        ImagePullPolicy = "IfNotPresent",
                        Envs = new[]
                        {
                            new Harness.Chaos.Inputs.FaultTemplateSpecChaosKubernetesEnvArgs
                            {
                                Name = "TARGET_NAMESPACE",
                                Value = "<+input>.default('default')",
                            },
                            new Harness.Chaos.Inputs.FaultTemplateSpecChaosKubernetesEnvArgs
                            {
                                Name = "CHAOS_MODE",
                                Value = "pod",
                            },
                        },
                        Resources = new Harness.Chaos.Inputs.FaultTemplateSpecChaosKubernetesResourcesArgs
                        {
                            Limits = 
                            {
                                { "cpu", "200m" },
                                { "memory", "200Mi" },
                            },
                        },
                    },
                },
            },
            Variables = new[]
            {
                new Harness.Chaos.Inputs.FaultTemplateVariableArgs
                {
                    Name = "target_namespace",
                    Value = "<+input>",
                    Type = "string",
                    Required = false,
                    Description = "Target namespace for chaos injection",
                },
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                projectLevel,
            },
        });
    
        // ----------------------------------------------------------------------------
        // Example 3: Fault with Advanced Configuration (TESTED ✅)
        // ----------------------------------------------------------------------------
        // Fault with node selector, labels, and annotations
        var advancedFault = new Harness.Chaos.FaultTemplate("advanced_fault", new()
        {
            OrgId = @this.Id,
            ProjectId = thisHarnessPlatformProject.Id,
            HubIdentity = projectLevel.Identity,
            Identity = "advanced-fault-template",
            Name = "Advanced Fault Template",
            Description = "Fault with advanced Kubernetes configuration",
            Categories = new[]
            {
                "Kubernetes",
            },
            Infrastructures = new[]
            {
                "KubernetesV2",
            },
            Type = "Custom",
            PermissionsRequired = "Basic",
            Tags = new[]
            {
                "kubernetes",
                "advanced",
                "production",
            },
            Links = new[]
            {
                new Harness.Chaos.Inputs.FaultTemplateLinkArgs
                {
                    Name = "Documentation",
                    Url = "https://docs.harness.io/chaos",
                },
                new Harness.Chaos.Inputs.FaultTemplateLinkArgs
                {
                    Name = "Support",
                    Url = "https://support.harness.io",
                },
            },
            Spec = new Harness.Chaos.Inputs.FaultTemplateSpecArgs
            {
                Chaos = new Harness.Chaos.Inputs.FaultTemplateSpecChaosArgs
                {
                    FaultName = "byoc-injector",
                    Params = new[]
                    {
                        new Harness.Chaos.Inputs.FaultTemplateSpecChaosParamArgs
                        {
                            Name = "CHAOS_DURATION",
                            Value = "<+input>.default('30s')",
                        },
                        new Harness.Chaos.Inputs.FaultTemplateSpecChaosParamArgs
                        {
                            Name = "CHAOS_INTERVAL",
                            Value = "<+input>.default('5s')",
                        },
                    },
                    Kubernetes = new Harness.Chaos.Inputs.FaultTemplateSpecChaosKubernetesArgs
                    {
                        Image = "chaosnative/go-runner:ci",
                        Commands = new[]
                        {
                            "/bin/bash",
                            "-c",
                        },
                        Args = new[]
                        {
                            "echo 'Advanced chaos fault'; sleep 30",
                        },
                        ImagePullPolicy = "IfNotPresent",
                        NodeSelector = 
                        {
                            { "disktype", "ssd" },
                            { "zone", "us-west-1a" },
                        },
                        Labels = 
                        {
                            { "app", "chaos-fault" },
                            { "environment", "production" },
                            { "managed-by", "terraform" },
                        },
                        Annotations = 
                        {
                            { "description", "Advanced chaos fault" },
                            { "owner", "chaos-team" },
                        },
                        Resources = new Harness.Chaos.Inputs.FaultTemplateSpecChaosKubernetesResourcesArgs
                        {
                            Limits = 
                            {
                                { "cpu", "250m" },
                                { "memory", "256Mi" },
                            },
                            Requests = 
                            {
                                { "cpu", "125m" },
                                { "memory", "128Mi" },
                            },
                        },
                    },
                },
            },
            Variables = new[]
            {
                new Harness.Chaos.Inputs.FaultTemplateVariableArgs
                {
                    Name = "chaos_duration",
                    Value = "<+input>",
                    Type = "string",
                    Required = true,
                    Description = "Duration of chaos injection",
                },
                new Harness.Chaos.Inputs.FaultTemplateVariableArgs
                {
                    Name = "chaos_interval",
                    Value = "<+input>",
                    Type = "string",
                    Required = false,
                    Description = "Interval between chaos injections",
                },
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                projectLevel,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.harness.chaos.FaultTemplate;
    import com.pulumi.harness.chaos.FaultTemplateArgs;
    import com.pulumi.harness.chaos.inputs.FaultTemplateLinkArgs;
    import com.pulumi.harness.chaos.inputs.FaultTemplateSpecArgs;
    import com.pulumi.harness.chaos.inputs.FaultTemplateSpecChaosArgs;
    import com.pulumi.harness.chaos.inputs.FaultTemplateSpecChaosKubernetesArgs;
    import com.pulumi.harness.chaos.inputs.FaultTemplateSpecChaosKubernetesResourcesArgs;
    import com.pulumi.harness.chaos.inputs.FaultTemplateVariableArgs;
    import com.pulumi.resources.CustomResourceOptions;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            // ============================================================================
            // Harness Chaos Fault Template Resource Examples
            // ============================================================================
            //
            // Fault templates define reusable chaos faults for experiments.
            // These examples are based on TESTED configurations from the e2e-test suite.
            //
            // Key Points:
            // - Faults inject failures into systems (pod delete, network latency, etc.)
            // - Type is usually "Custom" for custom faults
            // - Category and infrastructures define where fault can run
            // ============================================================================
            // ----------------------------------------------------------------------------
            // Example 1: Basic Kubernetes Fault (TESTED ✅)
            // ----------------------------------------------------------------------------
            // Most common pattern: Custom Kubernetes fault with container spec
            var kubernetesFault = new FaultTemplate("kubernetesFault", FaultTemplateArgs.builder()
                .orgId(this_.id())
                .projectId(thisHarnessPlatformProject.id())
                .hubIdentity(projectLevel.identity())
                .identity("k8s-fault-template")
                .name("Kubernetes Fault Template")
                .description("Custom Kubernetes fault for chaos injection")
                .categories("Kubernetes")
                .infrastructures("KubernetesV2")
                .type("Custom")
                .permissionsRequired("Basic")
                .tags(            
                    "kubernetes",
                    "fault",
                    "custom")
                .links(FaultTemplateLinkArgs.builder()
                    .name("Documentation")
                    .url("https://docs.harness.io/chaos")
                    .build())
                .spec(FaultTemplateSpecArgs.builder()
                    .chaos(FaultTemplateSpecChaosArgs.builder()
                        .faultName("byoc-injector")
                        .params(                    
                            FaultTemplateSpecChaosParamArgs.builder()
                                .name("CHAOS_DURATION")
                                .value("30s")
                                .build(),
                            FaultTemplateSpecChaosParamArgs.builder()
                                .name("CHAOS_INTERVAL")
                                .value("5s")
                                .build())
                        .kubernetes(FaultTemplateSpecChaosKubernetesArgs.builder()
                            .image("chaosnative/go-runner:ci")
                            .commands(                        
                                "/bin/bash",
                                "-c")
                            .args("echo 'Running chaos fault'; sleep 30")
                            .imagePullPolicy("IfNotPresent")
                            .resources(FaultTemplateSpecChaosKubernetesResourcesArgs.builder()
                                .limits(Map.ofEntries(
                                    Map.entry("cpu", "150m"),
                                    Map.entry("memory", "150Mi")
                                ))
                                .requests(Map.ofEntries(
                                    Map.entry("cpu", "100m"),
                                    Map.entry("memory", "100Mi")
                                ))
                                .build())
                            .build())
                        .build())
                    .build())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(projectLevel)
                    .build());
    
            // ----------------------------------------------------------------------------
            // Example 2: Fault with Environment Variables (TESTED ✅)
            // ----------------------------------------------------------------------------
            // Fault with environment variables for configuration
            var faultWithEnv = new FaultTemplate("faultWithEnv", FaultTemplateArgs.builder()
                .orgId(this_.id())
                .projectId(thisHarnessPlatformProject.id())
                .hubIdentity(projectLevel.identity())
                .identity("fault-with-env-template")
                .name("Fault with Environment Variables")
                .description("Fault template with environment configuration")
                .categories("Kubernetes")
                .infrastructures("KubernetesV2")
                .type("Custom")
                .permissionsRequired("Basic")
                .tags(            
                    "kubernetes",
                    "env",
                    "config")
                .links(FaultTemplateLinkArgs.builder()
                    .name("Documentation")
                    .url("https://docs.harness.io/chaos")
                    .build())
                .spec(FaultTemplateSpecArgs.builder()
                    .chaos(FaultTemplateSpecChaosArgs.builder()
                        .faultName("byoc-injector")
                        .params(                    
                            FaultTemplateSpecChaosParamArgs.builder()
                                .name("CHAOS_DURATION")
                                .value("15s")
                                .build(),
                            FaultTemplateSpecChaosParamArgs.builder()
                                .name("CHAOS_INTERVAL")
                                .value("3s")
                                .build(),
                            FaultTemplateSpecChaosParamArgs.builder()
                                .name("TARGET_NAMESPACE")
                                .value("<+input>.default('default')")
                                .build())
                        .kubernetes(FaultTemplateSpecChaosKubernetesArgs.builder()
                            .image("chaosnative/go-runner:ci")
                            .commands(                        
                                "/bin/bash",
                                "-c")
                            .args("echo 'Fault with env vars'; sleep 15")
                            .imagePullPolicy("IfNotPresent")
                            .envs(                        
                                FaultTemplateSpecChaosKubernetesEnvArgs.builder()
                                    .name("TARGET_NAMESPACE")
                                    .value("<+input>.default('default')")
                                    .build(),
                                FaultTemplateSpecChaosKubernetesEnvArgs.builder()
                                    .name("CHAOS_MODE")
                                    .value("pod")
                                    .build())
                            .resources(FaultTemplateSpecChaosKubernetesResourcesArgs.builder()
                                .limits(Map.ofEntries(
                                    Map.entry("cpu", "200m"),
                                    Map.entry("memory", "200Mi")
                                ))
                                .build())
                            .build())
                        .build())
                    .build())
                .variables(FaultTemplateVariableArgs.builder()
                    .name("target_namespace")
                    .value("<+input>")
                    .type("string")
                    .required(false)
                    .description("Target namespace for chaos injection")
                    .build())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(projectLevel)
                    .build());
    
            // ----------------------------------------------------------------------------
            // Example 3: Fault with Advanced Configuration (TESTED ✅)
            // ----------------------------------------------------------------------------
            // Fault with node selector, labels, and annotations
            var advancedFault = new FaultTemplate("advancedFault", FaultTemplateArgs.builder()
                .orgId(this_.id())
                .projectId(thisHarnessPlatformProject.id())
                .hubIdentity(projectLevel.identity())
                .identity("advanced-fault-template")
                .name("Advanced Fault Template")
                .description("Fault with advanced Kubernetes configuration")
                .categories("Kubernetes")
                .infrastructures("KubernetesV2")
                .type("Custom")
                .permissionsRequired("Basic")
                .tags(            
                    "kubernetes",
                    "advanced",
                    "production")
                .links(            
                    FaultTemplateLinkArgs.builder()
                        .name("Documentation")
                        .url("https://docs.harness.io/chaos")
                        .build(),
                    FaultTemplateLinkArgs.builder()
                        .name("Support")
                        .url("https://support.harness.io")
                        .build())
                .spec(FaultTemplateSpecArgs.builder()
                    .chaos(FaultTemplateSpecChaosArgs.builder()
                        .faultName("byoc-injector")
                        .params(                    
                            FaultTemplateSpecChaosParamArgs.builder()
                                .name("CHAOS_DURATION")
                                .value("<+input>.default('30s')")
                                .build(),
                            FaultTemplateSpecChaosParamArgs.builder()
                                .name("CHAOS_INTERVAL")
                                .value("<+input>.default('5s')")
                                .build())
                        .kubernetes(FaultTemplateSpecChaosKubernetesArgs.builder()
                            .image("chaosnative/go-runner:ci")
                            .commands(                        
                                "/bin/bash",
                                "-c")
                            .args("echo 'Advanced chaos fault'; sleep 30")
                            .imagePullPolicy("IfNotPresent")
                            .nodeSelector(Map.ofEntries(
                                Map.entry("disktype", "ssd"),
                                Map.entry("zone", "us-west-1a")
                            ))
                            .labels(Map.ofEntries(
                                Map.entry("app", "chaos-fault"),
                                Map.entry("environment", "production"),
                                Map.entry("managed-by", "terraform")
                            ))
                            .annotations(Map.ofEntries(
                                Map.entry("description", "Advanced chaos fault"),
                                Map.entry("owner", "chaos-team")
                            ))
                            .resources(FaultTemplateSpecChaosKubernetesResourcesArgs.builder()
                                .limits(Map.ofEntries(
                                    Map.entry("cpu", "250m"),
                                    Map.entry("memory", "256Mi")
                                ))
                                .requests(Map.ofEntries(
                                    Map.entry("cpu", "125m"),
                                    Map.entry("memory", "128Mi")
                                ))
                                .build())
                            .build())
                        .build())
                    .build())
                .variables(            
                    FaultTemplateVariableArgs.builder()
                        .name("chaos_duration")
                        .value("<+input>")
                        .type("string")
                        .required(true)
                        .description("Duration of chaos injection")
                        .build(),
                    FaultTemplateVariableArgs.builder()
                        .name("chaos_interval")
                        .value("<+input>")
                        .type("string")
                        .required(false)
                        .description("Interval between chaos injections")
                        .build())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(projectLevel)
                    .build());
    
        }
    }
    
    resources:
      # ============================================================================
      # Harness Chaos Fault Template Resource Examples
      # ============================================================================
      #
      # Fault templates define reusable chaos faults for experiments.
      # These examples are based on TESTED configurations from the e2e-test suite.
      #
      # Key Points:
      # - Faults inject failures into systems (pod delete, network latency, etc.)
      # - Type is usually "Custom" for custom faults
      # - Category and infrastructures define where fault can run
      # ============================================================================
    
      # ----------------------------------------------------------------------------
      # Example 1: Basic Kubernetes Fault (TESTED ✅)
      # ----------------------------------------------------------------------------
      # Most common pattern: Custom Kubernetes fault with container spec
      kubernetesFault:
        type: harness:chaos:FaultTemplate
        name: kubernetes_fault
        properties:
          orgId: ${this.id}
          projectId: ${thisHarnessPlatformProject.id}
          hubIdentity: ${projectLevel.identity}
          identity: k8s-fault-template
          name: Kubernetes Fault Template
          description: Custom Kubernetes fault for chaos injection
          categories:
            - Kubernetes
          infrastructures:
            - KubernetesV2
          type: Custom
          permissionsRequired: Basic
          tags:
            - kubernetes
            - fault
            - custom
          links:
            - name: Documentation
              url: https://docs.harness.io/chaos
          spec:
            chaos:
              faultName: byoc-injector
              params:
                - name: CHAOS_DURATION
                  value: 30s
                - name: CHAOS_INTERVAL
                  value: 5s
              kubernetes:
                image: chaosnative/go-runner:ci
                commands:
                  - /bin/bash
                  - -c
                args:
                  - echo 'Running chaos fault'; sleep 30
                imagePullPolicy: IfNotPresent
                resources:
                  limits:
                    cpu: 150m
                    memory: 150Mi
                  requests:
                    cpu: 100m
                    memory: 100Mi
        options:
          dependsOn:
            - ${projectLevel}
      # ----------------------------------------------------------------------------
      # Example 2: Fault with Environment Variables (TESTED ✅)
      # ----------------------------------------------------------------------------
      # Fault with environment variables for configuration
      faultWithEnv:
        type: harness:chaos:FaultTemplate
        name: fault_with_env
        properties:
          orgId: ${this.id}
          projectId: ${thisHarnessPlatformProject.id}
          hubIdentity: ${projectLevel.identity}
          identity: fault-with-env-template
          name: Fault with Environment Variables
          description: Fault template with environment configuration
          categories:
            - Kubernetes
          infrastructures:
            - KubernetesV2
          type: Custom
          permissionsRequired: Basic
          tags:
            - kubernetes
            - env
            - config
          links:
            - name: Documentation
              url: https://docs.harness.io/chaos
          spec:
            chaos:
              faultName: byoc-injector
              params:
                - name: CHAOS_DURATION
                  value: 15s
                - name: CHAOS_INTERVAL
                  value: 3s
                - name: TARGET_NAMESPACE
                  value: <+input>.default('default')
              kubernetes:
                image: chaosnative/go-runner:ci
                commands:
                  - /bin/bash
                  - -c
                args:
                  - echo 'Fault with env vars'; sleep 15
                imagePullPolicy: IfNotPresent
                envs:
                  - name: TARGET_NAMESPACE
                    value: <+input>.default('default')
                  - name: CHAOS_MODE
                    value: pod
                resources:
                  limits:
                    cpu: 200m
                    memory: 200Mi
          variables:
            - name: target_namespace
              value: <+input>
              type: string
              required: false
              description: Target namespace for chaos injection
        options:
          dependsOn:
            - ${projectLevel}
      # ----------------------------------------------------------------------------
      # Example 3: Fault with Advanced Configuration (TESTED ✅)
      # ----------------------------------------------------------------------------
      # Fault with node selector, labels, and annotations
      advancedFault:
        type: harness:chaos:FaultTemplate
        name: advanced_fault
        properties:
          orgId: ${this.id}
          projectId: ${thisHarnessPlatformProject.id}
          hubIdentity: ${projectLevel.identity}
          identity: advanced-fault-template
          name: Advanced Fault Template
          description: Fault with advanced Kubernetes configuration
          categories:
            - Kubernetes
          infrastructures:
            - KubernetesV2
          type: Custom
          permissionsRequired: Basic
          tags:
            - kubernetes
            - advanced
            - production
          links:
            - name: Documentation
              url: https://docs.harness.io/chaos
            - name: Support
              url: https://support.harness.io
          spec:
            chaos:
              faultName: byoc-injector
              params:
                - name: CHAOS_DURATION
                  value: <+input>.default('30s')
                - name: CHAOS_INTERVAL
                  value: <+input>.default('5s')
              kubernetes:
                image: chaosnative/go-runner:ci
                commands:
                  - /bin/bash
                  - -c
                args:
                  - echo 'Advanced chaos fault'; sleep 30
                imagePullPolicy: IfNotPresent
                nodeSelector:
                  disktype: ssd
                  zone: us-west-1a
                labels:
                  app: chaos-fault
                  environment: production
                  managed-by: terraform
                annotations:
                  description: Advanced chaos fault
                  owner: chaos-team
                resources:
                  limits:
                    cpu: 250m
                    memory: 256Mi
                  requests:
                    cpu: 125m
                    memory: 128Mi
          variables:
            - name: chaos_duration
              value: <+input>
              type: string
              required: true
              description: Duration of chaos injection
            - name: chaos_interval
              value: <+input>
              type: string
              required: false
              description: Interval between chaos injections
        options:
          dependsOn:
            - ${projectLevel}
    

    Create FaultTemplate Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new FaultTemplate(name: string, args: FaultTemplateArgs, opts?: CustomResourceOptions);
    @overload
    def FaultTemplate(resource_name: str,
                      args: FaultTemplateArgs,
                      opts: Optional[ResourceOptions] = None)
    
    @overload
    def FaultTemplate(resource_name: str,
                      opts: Optional[ResourceOptions] = None,
                      hub_identity: Optional[str] = None,
                      identity: Optional[str] = None,
                      links: Optional[Sequence[FaultTemplateLinkArgs]] = None,
                      permissions_required: Optional[str] = None,
                      categories: Optional[Sequence[str]] = None,
                      infrastructures: Optional[Sequence[str]] = None,
                      keywords: Optional[Sequence[str]] = None,
                      kind: Optional[str] = None,
                      api_version: Optional[str] = None,
                      name: Optional[str] = None,
                      org_id: Optional[str] = None,
                      description: Optional[str] = None,
                      platforms: Optional[Sequence[str]] = None,
                      project_id: Optional[str] = None,
                      revision: Optional[str] = None,
                      spec: Optional[FaultTemplateSpecArgs] = None,
                      tags: Optional[Sequence[str]] = None,
                      type: Optional[str] = None,
                      variables: Optional[Sequence[FaultTemplateVariableArgs]] = None)
    func NewFaultTemplate(ctx *Context, name string, args FaultTemplateArgs, opts ...ResourceOption) (*FaultTemplate, error)
    public FaultTemplate(string name, FaultTemplateArgs args, CustomResourceOptions? opts = null)
    public FaultTemplate(String name, FaultTemplateArgs args)
    public FaultTemplate(String name, FaultTemplateArgs args, CustomResourceOptions options)
    
    type: harness:chaos:FaultTemplate
    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 FaultTemplateArgs
    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 FaultTemplateArgs
    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 FaultTemplateArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args FaultTemplateArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args FaultTemplateArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    FaultTemplate 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 FaultTemplate resource accepts the following input properties:

    HubIdentity string
    Hub identity reference
    Identity string
    Unique identifier for the fault template (immutable)
    ApiVersion string
    API version
    Categories List<string>
    Fault categories
    Description string
    Description of the fault template
    Infrastructures List<string>
    List of supported infrastructures
    Keywords List<string>
    Search keywords
    Kind string
    Resource kind
    Links List<FaultTemplateLink>
    Related links
    Name string
    Name of the fault template
    OrgId string
    Organization identifier
    PermissionsRequired string
    Required permissions for the fault
    Platforms List<string>
    Supported platforms
    ProjectId string
    Project identifier
    Revision string
    Template revision (defaults to v1 if not specified)
    Spec FaultTemplateSpec
    Fault specification
    Tags List<string>
    Tags for the fault template
    Type string
    Fault type
    Variables List<FaultTemplateVariable>
    Template variables
    HubIdentity string
    Hub identity reference
    Identity string
    Unique identifier for the fault template (immutable)
    ApiVersion string
    API version
    Categories []string
    Fault categories
    Description string
    Description of the fault template
    Infrastructures []string
    List of supported infrastructures
    Keywords []string
    Search keywords
    Kind string
    Resource kind
    Links []FaultTemplateLinkArgs
    Related links
    Name string
    Name of the fault template
    OrgId string
    Organization identifier
    PermissionsRequired string
    Required permissions for the fault
    Platforms []string
    Supported platforms
    ProjectId string
    Project identifier
    Revision string
    Template revision (defaults to v1 if not specified)
    Spec FaultTemplateSpecArgs
    Fault specification
    Tags []string
    Tags for the fault template
    Type string
    Fault type
    Variables []FaultTemplateVariableArgs
    Template variables
    hubIdentity String
    Hub identity reference
    identity String
    Unique identifier for the fault template (immutable)
    apiVersion String
    API version
    categories List<String>
    Fault categories
    description String
    Description of the fault template
    infrastructures List<String>
    List of supported infrastructures
    keywords List<String>
    Search keywords
    kind String
    Resource kind
    links List<FaultTemplateLink>
    Related links
    name String
    Name of the fault template
    orgId String
    Organization identifier
    permissionsRequired String
    Required permissions for the fault
    platforms List<String>
    Supported platforms
    projectId String
    Project identifier
    revision String
    Template revision (defaults to v1 if not specified)
    spec FaultTemplateSpec
    Fault specification
    tags List<String>
    Tags for the fault template
    type String
    Fault type
    variables List<FaultTemplateVariable>
    Template variables
    hubIdentity string
    Hub identity reference
    identity string
    Unique identifier for the fault template (immutable)
    apiVersion string
    API version
    categories string[]
    Fault categories
    description string
    Description of the fault template
    infrastructures string[]
    List of supported infrastructures
    keywords string[]
    Search keywords
    kind string
    Resource kind
    links FaultTemplateLink[]
    Related links
    name string
    Name of the fault template
    orgId string
    Organization identifier
    permissionsRequired string
    Required permissions for the fault
    platforms string[]
    Supported platforms
    projectId string
    Project identifier
    revision string
    Template revision (defaults to v1 if not specified)
    spec FaultTemplateSpec
    Fault specification
    tags string[]
    Tags for the fault template
    type string
    Fault type
    variables FaultTemplateVariable[]
    Template variables
    hub_identity str
    Hub identity reference
    identity str
    Unique identifier for the fault template (immutable)
    api_version str
    API version
    categories Sequence[str]
    Fault categories
    description str
    Description of the fault template
    infrastructures Sequence[str]
    List of supported infrastructures
    keywords Sequence[str]
    Search keywords
    kind str
    Resource kind
    links Sequence[FaultTemplateLinkArgs]
    Related links
    name str
    Name of the fault template
    org_id str
    Organization identifier
    permissions_required str
    Required permissions for the fault
    platforms Sequence[str]
    Supported platforms
    project_id str
    Project identifier
    revision str
    Template revision (defaults to v1 if not specified)
    spec FaultTemplateSpecArgs
    Fault specification
    tags Sequence[str]
    Tags for the fault template
    type str
    Fault type
    variables Sequence[FaultTemplateVariableArgs]
    Template variables
    hubIdentity String
    Hub identity reference
    identity String
    Unique identifier for the fault template (immutable)
    apiVersion String
    API version
    categories List<String>
    Fault categories
    description String
    Description of the fault template
    infrastructures List<String>
    List of supported infrastructures
    keywords List<String>
    Search keywords
    kind String
    Resource kind
    links List<Property Map>
    Related links
    name String
    Name of the fault template
    orgId String
    Organization identifier
    permissionsRequired String
    Required permissions for the fault
    platforms List<String>
    Supported platforms
    projectId String
    Project identifier
    revision String
    Template revision (defaults to v1 if not specified)
    spec Property Map
    Fault specification
    tags List<String>
    Tags for the fault template
    type String
    Fault type
    variables List<Property Map>
    Template variables

    Outputs

    All input properties are implicitly available as output properties. Additionally, the FaultTemplate resource produces the following output properties:

    AccountId string
    Account identifier
    CreatedAt int
    Creation timestamp
    CreatedBy string
    Creator user ID
    HubRef string
    Hub reference (computed)
    Id string
    The provider-assigned unique ID for this managed resource.
    IsEnterprise bool
    Whether this is an enterprise-only template
    IsRemoved bool
    Soft delete flag
    UpdatedAt int
    Update timestamp
    UpdatedBy string
    Updater user ID
    AccountId string
    Account identifier
    CreatedAt int
    Creation timestamp
    CreatedBy string
    Creator user ID
    HubRef string
    Hub reference (computed)
    Id string
    The provider-assigned unique ID for this managed resource.
    IsEnterprise bool
    Whether this is an enterprise-only template
    IsRemoved bool
    Soft delete flag
    UpdatedAt int
    Update timestamp
    UpdatedBy string
    Updater user ID
    accountId String
    Account identifier
    createdAt Integer
    Creation timestamp
    createdBy String
    Creator user ID
    hubRef String
    Hub reference (computed)
    id String
    The provider-assigned unique ID for this managed resource.
    isEnterprise Boolean
    Whether this is an enterprise-only template
    isRemoved Boolean
    Soft delete flag
    updatedAt Integer
    Update timestamp
    updatedBy String
    Updater user ID
    accountId string
    Account identifier
    createdAt number
    Creation timestamp
    createdBy string
    Creator user ID
    hubRef string
    Hub reference (computed)
    id string
    The provider-assigned unique ID for this managed resource.
    isEnterprise boolean
    Whether this is an enterprise-only template
    isRemoved boolean
    Soft delete flag
    updatedAt number
    Update timestamp
    updatedBy string
    Updater user ID
    account_id str
    Account identifier
    created_at int
    Creation timestamp
    created_by str
    Creator user ID
    hub_ref str
    Hub reference (computed)
    id str
    The provider-assigned unique ID for this managed resource.
    is_enterprise bool
    Whether this is an enterprise-only template
    is_removed bool
    Soft delete flag
    updated_at int
    Update timestamp
    updated_by str
    Updater user ID
    accountId String
    Account identifier
    createdAt Number
    Creation timestamp
    createdBy String
    Creator user ID
    hubRef String
    Hub reference (computed)
    id String
    The provider-assigned unique ID for this managed resource.
    isEnterprise Boolean
    Whether this is an enterprise-only template
    isRemoved Boolean
    Soft delete flag
    updatedAt Number
    Update timestamp
    updatedBy String
    Updater user ID

    Look up Existing FaultTemplate Resource

    Get an existing FaultTemplate 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?: FaultTemplateState, opts?: CustomResourceOptions): FaultTemplate
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            account_id: Optional[str] = None,
            api_version: Optional[str] = None,
            categories: Optional[Sequence[str]] = None,
            created_at: Optional[int] = None,
            created_by: Optional[str] = None,
            description: Optional[str] = None,
            hub_identity: Optional[str] = None,
            hub_ref: Optional[str] = None,
            identity: Optional[str] = None,
            infrastructures: Optional[Sequence[str]] = None,
            is_enterprise: Optional[bool] = None,
            is_removed: Optional[bool] = None,
            keywords: Optional[Sequence[str]] = None,
            kind: Optional[str] = None,
            links: Optional[Sequence[FaultTemplateLinkArgs]] = None,
            name: Optional[str] = None,
            org_id: Optional[str] = None,
            permissions_required: Optional[str] = None,
            platforms: Optional[Sequence[str]] = None,
            project_id: Optional[str] = None,
            revision: Optional[str] = None,
            spec: Optional[FaultTemplateSpecArgs] = None,
            tags: Optional[Sequence[str]] = None,
            type: Optional[str] = None,
            updated_at: Optional[int] = None,
            updated_by: Optional[str] = None,
            variables: Optional[Sequence[FaultTemplateVariableArgs]] = None) -> FaultTemplate
    func GetFaultTemplate(ctx *Context, name string, id IDInput, state *FaultTemplateState, opts ...ResourceOption) (*FaultTemplate, error)
    public static FaultTemplate Get(string name, Input<string> id, FaultTemplateState? state, CustomResourceOptions? opts = null)
    public static FaultTemplate get(String name, Output<String> id, FaultTemplateState state, CustomResourceOptions options)
    resources:  _:    type: harness:chaos:FaultTemplate    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.
    The following state arguments are supported:
    AccountId string
    Account identifier
    ApiVersion string
    API version
    Categories List<string>
    Fault categories
    CreatedAt int
    Creation timestamp
    CreatedBy string
    Creator user ID
    Description string
    Description of the fault template
    HubIdentity string
    Hub identity reference
    HubRef string
    Hub reference (computed)
    Identity string
    Unique identifier for the fault template (immutable)
    Infrastructures List<string>
    List of supported infrastructures
    IsEnterprise bool
    Whether this is an enterprise-only template
    IsRemoved bool
    Soft delete flag
    Keywords List<string>
    Search keywords
    Kind string
    Resource kind
    Links List<FaultTemplateLink>
    Related links
    Name string
    Name of the fault template
    OrgId string
    Organization identifier
    PermissionsRequired string
    Required permissions for the fault
    Platforms List<string>
    Supported platforms
    ProjectId string
    Project identifier
    Revision string
    Template revision (defaults to v1 if not specified)
    Spec FaultTemplateSpec
    Fault specification
    Tags List<string>
    Tags for the fault template
    Type string
    Fault type
    UpdatedAt int
    Update timestamp
    UpdatedBy string
    Updater user ID
    Variables List<FaultTemplateVariable>
    Template variables
    AccountId string
    Account identifier
    ApiVersion string
    API version
    Categories []string
    Fault categories
    CreatedAt int
    Creation timestamp
    CreatedBy string
    Creator user ID
    Description string
    Description of the fault template
    HubIdentity string
    Hub identity reference
    HubRef string
    Hub reference (computed)
    Identity string
    Unique identifier for the fault template (immutable)
    Infrastructures []string
    List of supported infrastructures
    IsEnterprise bool
    Whether this is an enterprise-only template
    IsRemoved bool
    Soft delete flag
    Keywords []string
    Search keywords
    Kind string
    Resource kind
    Links []FaultTemplateLinkArgs
    Related links
    Name string
    Name of the fault template
    OrgId string
    Organization identifier
    PermissionsRequired string
    Required permissions for the fault
    Platforms []string
    Supported platforms
    ProjectId string
    Project identifier
    Revision string
    Template revision (defaults to v1 if not specified)
    Spec FaultTemplateSpecArgs
    Fault specification
    Tags []string
    Tags for the fault template
    Type string
    Fault type
    UpdatedAt int
    Update timestamp
    UpdatedBy string
    Updater user ID
    Variables []FaultTemplateVariableArgs
    Template variables
    accountId String
    Account identifier
    apiVersion String
    API version
    categories List<String>
    Fault categories
    createdAt Integer
    Creation timestamp
    createdBy String
    Creator user ID
    description String
    Description of the fault template
    hubIdentity String
    Hub identity reference
    hubRef String
    Hub reference (computed)
    identity String
    Unique identifier for the fault template (immutable)
    infrastructures List<String>
    List of supported infrastructures
    isEnterprise Boolean
    Whether this is an enterprise-only template
    isRemoved Boolean
    Soft delete flag
    keywords List<String>
    Search keywords
    kind String
    Resource kind
    links List<FaultTemplateLink>
    Related links
    name String
    Name of the fault template
    orgId String
    Organization identifier
    permissionsRequired String
    Required permissions for the fault
    platforms List<String>
    Supported platforms
    projectId String
    Project identifier
    revision String
    Template revision (defaults to v1 if not specified)
    spec FaultTemplateSpec
    Fault specification
    tags List<String>
    Tags for the fault template
    type String
    Fault type
    updatedAt Integer
    Update timestamp
    updatedBy String
    Updater user ID
    variables List<FaultTemplateVariable>
    Template variables
    accountId string
    Account identifier
    apiVersion string
    API version
    categories string[]
    Fault categories
    createdAt number
    Creation timestamp
    createdBy string
    Creator user ID
    description string
    Description of the fault template
    hubIdentity string
    Hub identity reference
    hubRef string
    Hub reference (computed)
    identity string
    Unique identifier for the fault template (immutable)
    infrastructures string[]
    List of supported infrastructures
    isEnterprise boolean
    Whether this is an enterprise-only template
    isRemoved boolean
    Soft delete flag
    keywords string[]
    Search keywords
    kind string
    Resource kind
    links FaultTemplateLink[]
    Related links
    name string
    Name of the fault template
    orgId string
    Organization identifier
    permissionsRequired string
    Required permissions for the fault
    platforms string[]
    Supported platforms
    projectId string
    Project identifier
    revision string
    Template revision (defaults to v1 if not specified)
    spec FaultTemplateSpec
    Fault specification
    tags string[]
    Tags for the fault template
    type string
    Fault type
    updatedAt number
    Update timestamp
    updatedBy string
    Updater user ID
    variables FaultTemplateVariable[]
    Template variables
    account_id str
    Account identifier
    api_version str
    API version
    categories Sequence[str]
    Fault categories
    created_at int
    Creation timestamp
    created_by str
    Creator user ID
    description str
    Description of the fault template
    hub_identity str
    Hub identity reference
    hub_ref str
    Hub reference (computed)
    identity str
    Unique identifier for the fault template (immutable)
    infrastructures Sequence[str]
    List of supported infrastructures
    is_enterprise bool
    Whether this is an enterprise-only template
    is_removed bool
    Soft delete flag
    keywords Sequence[str]
    Search keywords
    kind str
    Resource kind
    links Sequence[FaultTemplateLinkArgs]
    Related links
    name str
    Name of the fault template
    org_id str
    Organization identifier
    permissions_required str
    Required permissions for the fault
    platforms Sequence[str]
    Supported platforms
    project_id str
    Project identifier
    revision str
    Template revision (defaults to v1 if not specified)
    spec FaultTemplateSpecArgs
    Fault specification
    tags Sequence[str]
    Tags for the fault template
    type str
    Fault type
    updated_at int
    Update timestamp
    updated_by str
    Updater user ID
    variables Sequence[FaultTemplateVariableArgs]
    Template variables
    accountId String
    Account identifier
    apiVersion String
    API version
    categories List<String>
    Fault categories
    createdAt Number
    Creation timestamp
    createdBy String
    Creator user ID
    description String
    Description of the fault template
    hubIdentity String
    Hub identity reference
    hubRef String
    Hub reference (computed)
    identity String
    Unique identifier for the fault template (immutable)
    infrastructures List<String>
    List of supported infrastructures
    isEnterprise Boolean
    Whether this is an enterprise-only template
    isRemoved Boolean
    Soft delete flag
    keywords List<String>
    Search keywords
    kind String
    Resource kind
    links List<Property Map>
    Related links
    name String
    Name of the fault template
    orgId String
    Organization identifier
    permissionsRequired String
    Required permissions for the fault
    platforms List<String>
    Supported platforms
    projectId String
    Project identifier
    revision String
    Template revision (defaults to v1 if not specified)
    spec Property Map
    Fault specification
    tags List<String>
    Tags for the fault template
    type String
    Fault type
    updatedAt Number
    Update timestamp
    updatedBy String
    Updater user ID
    variables List<Property Map>
    Template variables

    Supporting Types

    Name string
    Link name
    Url string
    Link URL
    Name string
    Link name
    Url string
    Link URL
    name String
    Link name
    url String
    Link URL
    name string
    Link name
    url string
    Link URL
    name str
    Link name
    url str
    Link URL
    name String
    Link name
    url String
    Link URL

    FaultTemplateSpec, FaultTemplateSpecArgs

    Chaos FaultTemplateSpecChaos
    Chaos configuration
    Target FaultTemplateSpecTarget
    Target configuration
    Chaos FaultTemplateSpecChaos
    Chaos configuration
    Target FaultTemplateSpecTarget
    Target configuration
    chaos FaultTemplateSpecChaos
    Chaos configuration
    target FaultTemplateSpecTarget
    Target configuration
    chaos FaultTemplateSpecChaos
    Chaos configuration
    target FaultTemplateSpecTarget
    Target configuration
    chaos FaultTemplateSpecChaos
    Chaos configuration
    target FaultTemplateSpecTarget
    Target configuration
    chaos Property Map
    Chaos configuration
    target Property Map
    Target configuration

    FaultTemplateSpecChaos, FaultTemplateSpecChaosArgs

    Auth FaultTemplateSpecChaosAuth
    Authentication configuration
    FaultName string
    Name of the fault. Note: API may return a default value (e.g., 'byoc-injector') instead of the configured value due to API limitations.
    Kubernetes FaultTemplateSpecChaosKubernetes
    Kubernetes-specific chaos configuration
    Params List<FaultTemplateSpecChaosParam>
    Fault parameters
    StatusCheckTimeouts FaultTemplateSpecChaosStatusCheckTimeouts
    Status check timeout configuration
    Tls FaultTemplateSpecChaosTls
    TLS configuration
    Auth FaultTemplateSpecChaosAuth
    Authentication configuration
    FaultName string
    Name of the fault. Note: API may return a default value (e.g., 'byoc-injector') instead of the configured value due to API limitations.
    Kubernetes FaultTemplateSpecChaosKubernetes
    Kubernetes-specific chaos configuration
    Params []FaultTemplateSpecChaosParam
    Fault parameters
    StatusCheckTimeouts FaultTemplateSpecChaosStatusCheckTimeouts
    Status check timeout configuration
    Tls FaultTemplateSpecChaosTls
    TLS configuration
    auth FaultTemplateSpecChaosAuth
    Authentication configuration
    faultName String
    Name of the fault. Note: API may return a default value (e.g., 'byoc-injector') instead of the configured value due to API limitations.
    kubernetes FaultTemplateSpecChaosKubernetes
    Kubernetes-specific chaos configuration
    params List<FaultTemplateSpecChaosParam>
    Fault parameters
    statusCheckTimeouts FaultTemplateSpecChaosStatusCheckTimeouts
    Status check timeout configuration
    tls FaultTemplateSpecChaosTls
    TLS configuration
    auth FaultTemplateSpecChaosAuth
    Authentication configuration
    faultName string
    Name of the fault. Note: API may return a default value (e.g., 'byoc-injector') instead of the configured value due to API limitations.
    kubernetes FaultTemplateSpecChaosKubernetes
    Kubernetes-specific chaos configuration
    params FaultTemplateSpecChaosParam[]
    Fault parameters
    statusCheckTimeouts FaultTemplateSpecChaosStatusCheckTimeouts
    Status check timeout configuration
    tls FaultTemplateSpecChaosTls
    TLS configuration
    auth FaultTemplateSpecChaosAuth
    Authentication configuration
    fault_name str
    Name of the fault. Note: API may return a default value (e.g., 'byoc-injector') instead of the configured value due to API limitations.
    kubernetes FaultTemplateSpecChaosKubernetes
    Kubernetes-specific chaos configuration
    params Sequence[FaultTemplateSpecChaosParam]
    Fault parameters
    status_check_timeouts FaultTemplateSpecChaosStatusCheckTimeouts
    Status check timeout configuration
    tls FaultTemplateSpecChaosTls
    TLS configuration
    auth Property Map
    Authentication configuration
    faultName String
    Name of the fault. Note: API may return a default value (e.g., 'byoc-injector') instead of the configured value due to API limitations.
    kubernetes Property Map
    Kubernetes-specific chaos configuration
    params List<Property Map>
    Fault parameters
    statusCheckTimeouts Property Map
    Status check timeout configuration
    tls Property Map
    TLS configuration

    FaultTemplateSpecChaosAuth, FaultTemplateSpecChaosAuthArgs

    aws Property Map
    AWS authentication
    azure Property Map
    Azure authentication
    gcp Property Map
    GCP authentication
    redis Property Map
    Redis authentication
    ssh Property Map
    SSH authentication
    vmware Property Map
    VMware authentication

    FaultTemplateSpecChaosAuthAws, FaultTemplateSpecChaosAuthAwsArgs

    AccessKeyId string
    AWS access key ID
    Region string
    AWS region
    SecretAccessKey string
    AWS secret access key
    AccessKeyId string
    AWS access key ID
    Region string
    AWS region
    SecretAccessKey string
    AWS secret access key
    accessKeyId String
    AWS access key ID
    region String
    AWS region
    secretAccessKey String
    AWS secret access key
    accessKeyId string
    AWS access key ID
    region string
    AWS region
    secretAccessKey string
    AWS secret access key
    access_key_id str
    AWS access key ID
    region str
    AWS region
    secret_access_key str
    AWS secret access key
    accessKeyId String
    AWS access key ID
    region String
    AWS region
    secretAccessKey String
    AWS secret access key

    FaultTemplateSpecChaosAuthAzure, FaultTemplateSpecChaosAuthAzureArgs

    ClientId string
    Azure client ID
    ClientSecret string
    Azure client secret
    SubscriptionId string
    Azure subscription ID
    TenantId string
    Azure tenant ID
    ClientId string
    Azure client ID
    ClientSecret string
    Azure client secret
    SubscriptionId string
    Azure subscription ID
    TenantId string
    Azure tenant ID
    clientId String
    Azure client ID
    clientSecret String
    Azure client secret
    subscriptionId String
    Azure subscription ID
    tenantId String
    Azure tenant ID
    clientId string
    Azure client ID
    clientSecret string
    Azure client secret
    subscriptionId string
    Azure subscription ID
    tenantId string
    Azure tenant ID
    client_id str
    Azure client ID
    client_secret str
    Azure client secret
    subscription_id str
    Azure subscription ID
    tenant_id str
    Azure tenant ID
    clientId String
    Azure client ID
    clientSecret String
    Azure client secret
    subscriptionId String
    Azure subscription ID
    tenantId String
    Azure tenant ID

    FaultTemplateSpecChaosAuthGcp, FaultTemplateSpecChaosAuthGcpArgs

    ProjectId string
    GCP project ID
    ServiceAccountKey string
    GCP service account key (JSON)
    ProjectId string
    GCP project ID
    ServiceAccountKey string
    GCP service account key (JSON)
    projectId String
    GCP project ID
    serviceAccountKey String
    GCP service account key (JSON)
    projectId string
    GCP project ID
    serviceAccountKey string
    GCP service account key (JSON)
    project_id str
    GCP project ID
    service_account_key str
    GCP service account key (JSON)
    projectId String
    GCP project ID
    serviceAccountKey String
    GCP service account key (JSON)

    FaultTemplateSpecChaosAuthRedis, FaultTemplateSpecChaosAuthRedisArgs

    Password string
    Redis password
    Username string
    Redis username
    Password string
    Redis password
    Username string
    Redis username
    password String
    Redis password
    username String
    Redis username
    password string
    Redis password
    username string
    Redis username
    password str
    Redis password
    username str
    Redis username
    password String
    Redis password
    username String
    Redis username

    FaultTemplateSpecChaosAuthSsh, FaultTemplateSpecChaosAuthSshArgs

    Username string
    SSH username
    Password string
    SSH password
    PrivateKey string
    SSH private key
    Username string
    SSH username
    Password string
    SSH password
    PrivateKey string
    SSH private key
    username String
    SSH username
    password String
    SSH password
    privateKey String
    SSH private key
    username string
    SSH username
    password string
    SSH password
    privateKey string
    SSH private key
    username str
    SSH username
    password str
    SSH password
    private_key str
    SSH private key
    username String
    SSH username
    password String
    SSH password
    privateKey String
    SSH private key

    FaultTemplateSpecChaosAuthVmware, FaultTemplateSpecChaosAuthVmwareArgs

    Password string
    VMware password
    Username string
    VMware username
    VcenterServer string
    vCenter server address
    Password string
    VMware password
    Username string
    VMware username
    VcenterServer string
    vCenter server address
    password String
    VMware password
    username String
    VMware username
    vcenterServer String
    vCenter server address
    password string
    VMware password
    username string
    VMware username
    vcenterServer string
    vCenter server address
    password str
    VMware password
    username str
    VMware username
    vcenter_server str
    vCenter server address
    password String
    VMware password
    username String
    VMware username
    vcenterServer String
    vCenter server address

    FaultTemplateSpecChaosKubernetes, FaultTemplateSpecChaosKubernetesArgs

    Annotations Dictionary<string, string>
    Pod annotations
    Args List<string>
    Container arguments
    Commands List<string>
    Container command
    ConfigMaps List<FaultTemplateSpecChaosKubernetesConfigMap>
    ConfigMap volumes
    ContainerSecurityContext FaultTemplateSpecChaosKubernetesContainerSecurityContext
    Container security context
    Envs List<FaultTemplateSpecChaosKubernetesEnv>
    Environment variables
    HostFileVolumes List<FaultTemplateSpecChaosKubernetesHostFileVolume>
    Host path volumes
    HostIpc bool
    Use host IPC namespace
    HostNetwork bool
    Use host network namespace
    HostPid bool
    Use host PID namespace
    Image string
    Container image for chaos experiment
    ImagePullPolicy string
    Image pull policy
    ImagePullSecrets List<string>
    Image pull secrets
    Labels Dictionary<string, string>
    Pod labels
    NodeSelector Dictionary<string, string>
    Node selector for pod scheduling
    PodSecurityContext FaultTemplateSpecChaosKubernetesPodSecurityContext
    Pod security context
    Resources FaultTemplateSpecChaosKubernetesResources
    Resource requirements
    Secrets List<FaultTemplateSpecChaosKubernetesSecret>
    Secret volumes
    Tolerations List<FaultTemplateSpecChaosKubernetesToleration>
    Pod tolerations
    Annotations map[string]string
    Pod annotations
    Args []string
    Container arguments
    Commands []string
    Container command
    ConfigMaps []FaultTemplateSpecChaosKubernetesConfigMap
    ConfigMap volumes
    ContainerSecurityContext FaultTemplateSpecChaosKubernetesContainerSecurityContext
    Container security context
    Envs []FaultTemplateSpecChaosKubernetesEnv
    Environment variables
    HostFileVolumes []FaultTemplateSpecChaosKubernetesHostFileVolume
    Host path volumes
    HostIpc bool
    Use host IPC namespace
    HostNetwork bool
    Use host network namespace
    HostPid bool
    Use host PID namespace
    Image string
    Container image for chaos experiment
    ImagePullPolicy string
    Image pull policy
    ImagePullSecrets []string
    Image pull secrets
    Labels map[string]string
    Pod labels
    NodeSelector map[string]string
    Node selector for pod scheduling
    PodSecurityContext FaultTemplateSpecChaosKubernetesPodSecurityContext
    Pod security context
    Resources FaultTemplateSpecChaosKubernetesResources
    Resource requirements
    Secrets []FaultTemplateSpecChaosKubernetesSecret
    Secret volumes
    Tolerations []FaultTemplateSpecChaosKubernetesToleration
    Pod tolerations
    annotations Map<String,String>
    Pod annotations
    args List<String>
    Container arguments
    commands List<String>
    Container command
    configMaps List<FaultTemplateSpecChaosKubernetesConfigMap>
    ConfigMap volumes
    containerSecurityContext FaultTemplateSpecChaosKubernetesContainerSecurityContext
    Container security context
    envs List<FaultTemplateSpecChaosKubernetesEnv>
    Environment variables
    hostFileVolumes List<FaultTemplateSpecChaosKubernetesHostFileVolume>
    Host path volumes
    hostIpc Boolean
    Use host IPC namespace
    hostNetwork Boolean
    Use host network namespace
    hostPid Boolean
    Use host PID namespace
    image String
    Container image for chaos experiment
    imagePullPolicy String
    Image pull policy
    imagePullSecrets List<String>
    Image pull secrets
    labels Map<String,String>
    Pod labels
    nodeSelector Map<String,String>
    Node selector for pod scheduling
    podSecurityContext FaultTemplateSpecChaosKubernetesPodSecurityContext
    Pod security context
    resources FaultTemplateSpecChaosKubernetesResources
    Resource requirements
    secrets List<FaultTemplateSpecChaosKubernetesSecret>
    Secret volumes
    tolerations List<FaultTemplateSpecChaosKubernetesToleration>
    Pod tolerations
    annotations {[key: string]: string}
    Pod annotations
    args string[]
    Container arguments
    commands string[]
    Container command
    configMaps FaultTemplateSpecChaosKubernetesConfigMap[]
    ConfigMap volumes
    containerSecurityContext FaultTemplateSpecChaosKubernetesContainerSecurityContext
    Container security context
    envs FaultTemplateSpecChaosKubernetesEnv[]
    Environment variables
    hostFileVolumes FaultTemplateSpecChaosKubernetesHostFileVolume[]
    Host path volumes
    hostIpc boolean
    Use host IPC namespace
    hostNetwork boolean
    Use host network namespace
    hostPid boolean
    Use host PID namespace
    image string
    Container image for chaos experiment
    imagePullPolicy string
    Image pull policy
    imagePullSecrets string[]
    Image pull secrets
    labels {[key: string]: string}
    Pod labels
    nodeSelector {[key: string]: string}
    Node selector for pod scheduling
    podSecurityContext FaultTemplateSpecChaosKubernetesPodSecurityContext
    Pod security context
    resources FaultTemplateSpecChaosKubernetesResources
    Resource requirements
    secrets FaultTemplateSpecChaosKubernetesSecret[]
    Secret volumes
    tolerations FaultTemplateSpecChaosKubernetesToleration[]
    Pod tolerations
    annotations Mapping[str, str]
    Pod annotations
    args Sequence[str]
    Container arguments
    commands Sequence[str]
    Container command
    config_maps Sequence[FaultTemplateSpecChaosKubernetesConfigMap]
    ConfigMap volumes
    container_security_context FaultTemplateSpecChaosKubernetesContainerSecurityContext
    Container security context
    envs Sequence[FaultTemplateSpecChaosKubernetesEnv]
    Environment variables
    host_file_volumes Sequence[FaultTemplateSpecChaosKubernetesHostFileVolume]
    Host path volumes
    host_ipc bool
    Use host IPC namespace
    host_network bool
    Use host network namespace
    host_pid bool
    Use host PID namespace
    image str
    Container image for chaos experiment
    image_pull_policy str
    Image pull policy
    image_pull_secrets Sequence[str]
    Image pull secrets
    labels Mapping[str, str]
    Pod labels
    node_selector Mapping[str, str]
    Node selector for pod scheduling
    pod_security_context FaultTemplateSpecChaosKubernetesPodSecurityContext
    Pod security context
    resources FaultTemplateSpecChaosKubernetesResources
    Resource requirements
    secrets Sequence[FaultTemplateSpecChaosKubernetesSecret]
    Secret volumes
    tolerations Sequence[FaultTemplateSpecChaosKubernetesToleration]
    Pod tolerations
    annotations Map<String>
    Pod annotations
    args List<String>
    Container arguments
    commands List<String>
    Container command
    configMaps List<Property Map>
    ConfigMap volumes
    containerSecurityContext Property Map
    Container security context
    envs List<Property Map>
    Environment variables
    hostFileVolumes List<Property Map>
    Host path volumes
    hostIpc Boolean
    Use host IPC namespace
    hostNetwork Boolean
    Use host network namespace
    hostPid Boolean
    Use host PID namespace
    image String
    Container image for chaos experiment
    imagePullPolicy String
    Image pull policy
    imagePullSecrets List<String>
    Image pull secrets
    labels Map<String>
    Pod labels
    nodeSelector Map<String>
    Node selector for pod scheduling
    podSecurityContext Property Map
    Pod security context
    resources Property Map
    Resource requirements
    secrets List<Property Map>
    Secret volumes
    tolerations List<Property Map>
    Pod tolerations

    FaultTemplateSpecChaosKubernetesConfigMap, FaultTemplateSpecChaosKubernetesConfigMapArgs

    MountPath string
    Mount path
    Name string
    ConfigMap name
    MountMode int
    Mount mode (0-3)
    MountPath string
    Mount path
    Name string
    ConfigMap name
    MountMode int
    Mount mode (0-3)
    mountPath String
    Mount path
    name String
    ConfigMap name
    mountMode Integer
    Mount mode (0-3)
    mountPath string
    Mount path
    name string
    ConfigMap name
    mountMode number
    Mount mode (0-3)
    mount_path str
    Mount path
    name str
    ConfigMap name
    mount_mode int
    Mount mode (0-3)
    mountPath String
    Mount path
    name String
    ConfigMap name
    mountMode Number
    Mount mode (0-3)

    FaultTemplateSpecChaosKubernetesContainerSecurityContext, FaultTemplateSpecChaosKubernetesContainerSecurityContextArgs

    AllowPrivilegeEscalation bool
    Allow privilege escalation
    Capabilities FaultTemplateSpecChaosKubernetesContainerSecurityContextCapabilities
    Linux capabilities
    Privileged bool
    Run container in privileged mode
    ReadOnlyRootFilesystem bool
    Mount root filesystem as read-only
    RunAsGroup int
    Group ID to run as
    RunAsNonRoot bool
    Run as non-root user
    RunAsUser int
    User ID to run as
    AllowPrivilegeEscalation bool
    Allow privilege escalation
    Capabilities FaultTemplateSpecChaosKubernetesContainerSecurityContextCapabilities
    Linux capabilities
    Privileged bool
    Run container in privileged mode
    ReadOnlyRootFilesystem bool
    Mount root filesystem as read-only
    RunAsGroup int
    Group ID to run as
    RunAsNonRoot bool
    Run as non-root user
    RunAsUser int
    User ID to run as
    allowPrivilegeEscalation Boolean
    Allow privilege escalation
    capabilities FaultTemplateSpecChaosKubernetesContainerSecurityContextCapabilities
    Linux capabilities
    privileged Boolean
    Run container in privileged mode
    readOnlyRootFilesystem Boolean
    Mount root filesystem as read-only
    runAsGroup Integer
    Group ID to run as
    runAsNonRoot Boolean
    Run as non-root user
    runAsUser Integer
    User ID to run as
    allowPrivilegeEscalation boolean
    Allow privilege escalation
    capabilities FaultTemplateSpecChaosKubernetesContainerSecurityContextCapabilities
    Linux capabilities
    privileged boolean
    Run container in privileged mode
    readOnlyRootFilesystem boolean
    Mount root filesystem as read-only
    runAsGroup number
    Group ID to run as
    runAsNonRoot boolean
    Run as non-root user
    runAsUser number
    User ID to run as
    allow_privilege_escalation bool
    Allow privilege escalation
    capabilities FaultTemplateSpecChaosKubernetesContainerSecurityContextCapabilities
    Linux capabilities
    privileged bool
    Run container in privileged mode
    read_only_root_filesystem bool
    Mount root filesystem as read-only
    run_as_group int
    Group ID to run as
    run_as_non_root bool
    Run as non-root user
    run_as_user int
    User ID to run as
    allowPrivilegeEscalation Boolean
    Allow privilege escalation
    capabilities Property Map
    Linux capabilities
    privileged Boolean
    Run container in privileged mode
    readOnlyRootFilesystem Boolean
    Mount root filesystem as read-only
    runAsGroup Number
    Group ID to run as
    runAsNonRoot Boolean
    Run as non-root user
    runAsUser Number
    User ID to run as

    FaultTemplateSpecChaosKubernetesContainerSecurityContextCapabilities, FaultTemplateSpecChaosKubernetesContainerSecurityContextCapabilitiesArgs

    Adds List<string>
    Capabilities to add
    Drops List<string>
    Capabilities to drop
    Adds []string
    Capabilities to add
    Drops []string
    Capabilities to drop
    adds List<String>
    Capabilities to add
    drops List<String>
    Capabilities to drop
    adds string[]
    Capabilities to add
    drops string[]
    Capabilities to drop
    adds Sequence[str]
    Capabilities to add
    drops Sequence[str]
    Capabilities to drop
    adds List<String>
    Capabilities to add
    drops List<String>
    Capabilities to drop

    FaultTemplateSpecChaosKubernetesEnv, FaultTemplateSpecChaosKubernetesEnvArgs

    Name string
    Environment variable name
    Value string
    Environment variable value
    Name string
    Environment variable name
    Value string
    Environment variable value
    name String
    Environment variable name
    value String
    Environment variable value
    name string
    Environment variable name
    value string
    Environment variable value
    name str
    Environment variable name
    value str
    Environment variable value
    name String
    Environment variable name
    value String
    Environment variable value

    FaultTemplateSpecChaosKubernetesHostFileVolume, FaultTemplateSpecChaosKubernetesHostFileVolumeArgs

    MountPath string
    Mount path
    Name string
    Volume name
    HostPath string
    Host path on the node
    Type string
    Host path type (e.g., Directory, File, BlockDevice, CharDevice)
    MountPath string
    Mount path
    Name string
    Volume name
    HostPath string
    Host path on the node
    Type string
    Host path type (e.g., Directory, File, BlockDevice, CharDevice)
    mountPath String
    Mount path
    name String
    Volume name
    hostPath String
    Host path on the node
    type String
    Host path type (e.g., Directory, File, BlockDevice, CharDevice)
    mountPath string
    Mount path
    name string
    Volume name
    hostPath string
    Host path on the node
    type string
    Host path type (e.g., Directory, File, BlockDevice, CharDevice)
    mount_path str
    Mount path
    name str
    Volume name
    host_path str
    Host path on the node
    type str
    Host path type (e.g., Directory, File, BlockDevice, CharDevice)
    mountPath String
    Mount path
    name String
    Volume name
    hostPath String
    Host path on the node
    type String
    Host path type (e.g., Directory, File, BlockDevice, CharDevice)

    FaultTemplateSpecChaosKubernetesPodSecurityContext, FaultTemplateSpecChaosKubernetesPodSecurityContextArgs

    FsGroup int
    Filesystem group ID
    RunAsGroup int
    Group ID to run as
    RunAsNonRoot bool
    Run as non-root user
    RunAsUser int
    User ID to run as
    FsGroup int
    Filesystem group ID
    RunAsGroup int
    Group ID to run as
    RunAsNonRoot bool
    Run as non-root user
    RunAsUser int
    User ID to run as
    fsGroup Integer
    Filesystem group ID
    runAsGroup Integer
    Group ID to run as
    runAsNonRoot Boolean
    Run as non-root user
    runAsUser Integer
    User ID to run as
    fsGroup number
    Filesystem group ID
    runAsGroup number
    Group ID to run as
    runAsNonRoot boolean
    Run as non-root user
    runAsUser number
    User ID to run as
    fs_group int
    Filesystem group ID
    run_as_group int
    Group ID to run as
    run_as_non_root bool
    Run as non-root user
    run_as_user int
    User ID to run as
    fsGroup Number
    Filesystem group ID
    runAsGroup Number
    Group ID to run as
    runAsNonRoot Boolean
    Run as non-root user
    runAsUser Number
    User ID to run as

    FaultTemplateSpecChaosKubernetesResources, FaultTemplateSpecChaosKubernetesResourcesArgs

    Limits Dictionary<string, string>
    Resource limits
    Requests Dictionary<string, string>
    Resource requests
    Limits map[string]string
    Resource limits
    Requests map[string]string
    Resource requests
    limits Map<String,String>
    Resource limits
    requests Map<String,String>
    Resource requests
    limits {[key: string]: string}
    Resource limits
    requests {[key: string]: string}
    Resource requests
    limits Mapping[str, str]
    Resource limits
    requests Mapping[str, str]
    Resource requests
    limits Map<String>
    Resource limits
    requests Map<String>
    Resource requests

    FaultTemplateSpecChaosKubernetesSecret, FaultTemplateSpecChaosKubernetesSecretArgs

    MountPath string
    Mount path
    SecretName string
    Secret name
    MountMode int
    Mount mode (0-3)
    MountPath string
    Mount path
    SecretName string
    Secret name
    MountMode int
    Mount mode (0-3)
    mountPath String
    Mount path
    secretName String
    Secret name
    mountMode Integer
    Mount mode (0-3)
    mountPath string
    Mount path
    secretName string
    Secret name
    mountMode number
    Mount mode (0-3)
    mount_path str
    Mount path
    secret_name str
    Secret name
    mount_mode int
    Mount mode (0-3)
    mountPath String
    Mount path
    secretName String
    Secret name
    mountMode Number
    Mount mode (0-3)

    FaultTemplateSpecChaosKubernetesToleration, FaultTemplateSpecChaosKubernetesTolerationArgs

    Effect string
    Toleration effect (NoSchedule, PreferNoSchedule, NoExecute)
    Key string
    Toleration key
    Operator string
    Toleration operator (Equal, Exists)
    TolerationSeconds int
    Toleration seconds
    Value string
    Toleration value
    Effect string
    Toleration effect (NoSchedule, PreferNoSchedule, NoExecute)
    Key string
    Toleration key
    Operator string
    Toleration operator (Equal, Exists)
    TolerationSeconds int
    Toleration seconds
    Value string
    Toleration value
    effect String
    Toleration effect (NoSchedule, PreferNoSchedule, NoExecute)
    key String
    Toleration key
    operator String
    Toleration operator (Equal, Exists)
    tolerationSeconds Integer
    Toleration seconds
    value String
    Toleration value
    effect string
    Toleration effect (NoSchedule, PreferNoSchedule, NoExecute)
    key string
    Toleration key
    operator string
    Toleration operator (Equal, Exists)
    tolerationSeconds number
    Toleration seconds
    value string
    Toleration value
    effect str
    Toleration effect (NoSchedule, PreferNoSchedule, NoExecute)
    key str
    Toleration key
    operator str
    Toleration operator (Equal, Exists)
    toleration_seconds int
    Toleration seconds
    value str
    Toleration value
    effect String
    Toleration effect (NoSchedule, PreferNoSchedule, NoExecute)
    key String
    Toleration key
    operator String
    Toleration operator (Equal, Exists)
    tolerationSeconds Number
    Toleration seconds
    value String
    Toleration value

    FaultTemplateSpecChaosParam, FaultTemplateSpecChaosParamArgs

    Name string
    Parameter name
    Value string
    Parameter value
    Name string
    Parameter name
    Value string
    Parameter value
    name String
    Parameter name
    value String
    Parameter value
    name string
    Parameter name
    value string
    Parameter value
    name str
    Parameter name
    value str
    Parameter value
    name String
    Parameter name
    value String
    Parameter value

    FaultTemplateSpecChaosStatusCheckTimeouts, FaultTemplateSpecChaosStatusCheckTimeoutsArgs

    Delay int
    Delay before status check (seconds)
    Timeout int
    Timeout for status check (seconds)
    Delay int
    Delay before status check (seconds)
    Timeout int
    Timeout for status check (seconds)
    delay Integer
    Delay before status check (seconds)
    timeout Integer
    Timeout for status check (seconds)
    delay number
    Delay before status check (seconds)
    timeout number
    Timeout for status check (seconds)
    delay int
    Delay before status check (seconds)
    timeout int
    Timeout for status check (seconds)
    delay Number
    Delay before status check (seconds)
    timeout Number
    Timeout for status check (seconds)

    FaultTemplateSpecChaosTls, FaultTemplateSpecChaosTlsArgs

    CaCertificate string
    CA certificate
    ClientCertificate string
    Client certificate
    ClientKey string
    Client key
    CaCertificate string
    CA certificate
    ClientCertificate string
    Client certificate
    ClientKey string
    Client key
    caCertificate String
    CA certificate
    clientCertificate String
    Client certificate
    clientKey String
    Client key
    caCertificate string
    CA certificate
    clientCertificate string
    Client certificate
    clientKey string
    Client key
    ca_certificate str
    CA certificate
    client_certificate str
    Client certificate
    client_key str
    Client key
    caCertificate String
    CA certificate
    clientCertificate String
    Client certificate
    clientKey String
    Client key

    FaultTemplateSpecTarget, FaultTemplateSpecTargetArgs

    Application FaultTemplateSpecTargetApplication
    Application target configuration
    Kubernetes List<FaultTemplateSpecTargetKubernete>
    Kubernetes target configuration
    Application FaultTemplateSpecTargetApplication
    Application target configuration
    Kubernetes []FaultTemplateSpecTargetKubernete
    Kubernetes target configuration
    application FaultTemplateSpecTargetApplication
    Application target configuration
    kubernetes List<FaultTemplateSpecTargetKubernete>
    Kubernetes target configuration
    application FaultTemplateSpecTargetApplication
    Application target configuration
    kubernetes FaultTemplateSpecTargetKubernete[]
    Kubernetes target configuration
    application FaultTemplateSpecTargetApplication
    Application target configuration
    kubernetes Sequence[FaultTemplateSpecTargetKubernete]
    Kubernetes target configuration
    application Property Map
    Application target configuration
    kubernetes List<Property Map>
    Kubernetes target configuration

    FaultTemplateSpecTargetApplication, FaultTemplateSpecTargetApplicationArgs

    AppKind string
    Application kind
    AppLabel string
    Application label
    AppNs string
    Application namespace
    AppKind string
    Application kind
    AppLabel string
    Application label
    AppNs string
    Application namespace
    appKind String
    Application kind
    appLabel String
    Application label
    appNs String
    Application namespace
    appKind string
    Application kind
    appLabel string
    Application label
    appNs string
    Application namespace
    app_kind str
    Application kind
    app_label str
    Application label
    app_ns str
    Application namespace
    appKind String
    Application kind
    appLabel String
    Application label
    appNs String
    Application namespace

    FaultTemplateSpecTargetKubernete, FaultTemplateSpecTargetKuberneteArgs

    AnnotationCheck string
    Annotation check expression
    Annotations Dictionary<string, string>
    Annotation selectors
    Kind string
    Resource kind (e.g., deployment, pod)
    Labels Dictionary<string, string>
    Label selectors
    Names List<string>
    Specific resource names
    Namespace string
    Target namespace
    AnnotationCheck string
    Annotation check expression
    Annotations map[string]string
    Annotation selectors
    Kind string
    Resource kind (e.g., deployment, pod)
    Labels map[string]string
    Label selectors
    Names []string
    Specific resource names
    Namespace string
    Target namespace
    annotationCheck String
    Annotation check expression
    annotations Map<String,String>
    Annotation selectors
    kind String
    Resource kind (e.g., deployment, pod)
    labels Map<String,String>
    Label selectors
    names List<String>
    Specific resource names
    namespace String
    Target namespace
    annotationCheck string
    Annotation check expression
    annotations {[key: string]: string}
    Annotation selectors
    kind string
    Resource kind (e.g., deployment, pod)
    labels {[key: string]: string}
    Label selectors
    names string[]
    Specific resource names
    namespace string
    Target namespace
    annotation_check str
    Annotation check expression
    annotations Mapping[str, str]
    Annotation selectors
    kind str
    Resource kind (e.g., deployment, pod)
    labels Mapping[str, str]
    Label selectors
    names Sequence[str]
    Specific resource names
    namespace str
    Target namespace
    annotationCheck String
    Annotation check expression
    annotations Map<String>
    Annotation selectors
    kind String
    Resource kind (e.g., deployment, pod)
    labels Map<String>
    Label selectors
    names List<String>
    Specific resource names
    namespace String
    Target namespace

    FaultTemplateVariable, FaultTemplateVariableArgs

    Name string
    Variable name
    Description string
    Variable description
    Required bool
    Whether the variable is required
    Type string
    Variable type
    Value string
    Variable value
    Name string
    Variable name
    Description string
    Variable description
    Required bool
    Whether the variable is required
    Type string
    Variable type
    Value string
    Variable value
    name String
    Variable name
    description String
    Variable description
    required Boolean
    Whether the variable is required
    type String
    Variable type
    value String
    Variable value
    name string
    Variable name
    description string
    Variable description
    required boolean
    Whether the variable is required
    type string
    Variable type
    value string
    Variable value
    name str
    Variable name
    description str
    Variable description
    required bool
    Whether the variable is required
    type str
    Variable type
    value str
    Variable value
    name String
    Variable name
    description String
    Variable description
    required Boolean
    Whether the variable is required
    type String
    Variable type
    value String
    Variable value

    Import

    The pulumi import command can be used, for example:

    Example 1: Import Project-level Fault Template Format: org_id/project_id/hub_identity/template_identity

    $ pulumi import harness:chaos/faultTemplate:FaultTemplate example my_org/my_project/my-chaos-hub/pod-delete-fault
    

    Example 2: Import Org-level Fault Template Format: org_id/hub_identity/template_identity

    $ pulumi import harness:chaos/faultTemplate:FaultTemplate org_example my_org/org-chaos-hub/org-pod-delete
    

    Example 3: Import Account-level Fault Template Format: hub_identity/template_identity

    $ pulumi import harness:chaos/faultTemplate:FaultTemplate account_example account-chaos-hub/account-network-fault
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    harness pulumi/pulumi-harness
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the harness Terraform Provider.
    harness logo
    Viewing docs for Harness v0.12.0
    published on Tuesday, Apr 21, 2026 by Pulumi
      Try Pulumi Cloud free. Your team will thank you.