harness.platform.Environment
Explore with Pulumi AI
Resource for creating a Harness environment.
Example to create Environment at different levels (Org, Project, Account)
Account Level
import * as pulumi from "@pulumi/pulumi";
import * as harness from "@pulumi/harness";
const example = new harness.platform.Environment("example", {
    identifier: "identifier",
    name: "name",
    tags: [
        "foo:bar",
        "bar:foo",
    ],
    type: "PreProduction",
    description: "env description",
    yaml: `environment:
   name: name
   identifier: identifier
   type: PreProduction
   tags:
     foo: bar
     bar: foo
   variables:
     - name: envVar1
       type: String
       value: v1
       description: ""
     - name: envVar2
       type: String
       value: v2
       description: ""
   overrides:
     manifests:
       - manifest:
           identifier: manifestEnv
           type: Values
           spec:
             store:
               type: Git
               spec:
                 connectorRef: <+input>
                 gitFetchType: Branch
                 paths:
                   - file1
                 repoName: <+input>
                 branch: master
     configFiles:
       - configFile:
           identifier: configFileEnv
           spec:
             store:
               type: Harness
               spec:
                 files:
                   - account:/Add-ons/svcOverrideTest
                 secretFiles: []
`,
});
import pulumi
import pulumi_harness as harness
example = harness.platform.Environment("example",
    identifier="identifier",
    name="name",
    tags=[
        "foo:bar",
        "bar:foo",
    ],
    type="PreProduction",
    description="env description",
    yaml="""environment:
   name: name
   identifier: identifier
   type: PreProduction
   tags:
     foo: bar
     bar: foo
   variables:
     - name: envVar1
       type: String
       value: v1
       description: ""
     - name: envVar2
       type: String
       value: v2
       description: ""
   overrides:
     manifests:
       - manifest:
           identifier: manifestEnv
           type: Values
           spec:
             store:
               type: Git
               spec:
                 connectorRef: <+input>
                 gitFetchType: Branch
                 paths:
                   - file1
                 repoName: <+input>
                 branch: master
     configFiles:
       - configFile:
           identifier: configFileEnv
           spec:
             store:
               type: Harness
               spec:
                 files:
                   - account:/Add-ons/svcOverrideTest
                 secretFiles: []
""")
package main
import (
	"github.com/pulumi/pulumi-harness/sdk/go/harness/platform"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := platform.NewEnvironment(ctx, "example", &platform.EnvironmentArgs{
			Identifier: pulumi.String("identifier"),
			Name:       pulumi.String("name"),
			Tags: pulumi.StringArray{
				pulumi.String("foo:bar"),
				pulumi.String("bar:foo"),
			},
			Type:        pulumi.String("PreProduction"),
			Description: pulumi.String("env description"),
			Yaml: pulumi.String(`environment:
   name: name
   identifier: identifier
   type: PreProduction
   tags:
     foo: bar
     bar: foo
   variables:
     - name: envVar1
       type: String
       value: v1
       description: ""
     - name: envVar2
       type: String
       value: v2
       description: ""
   overrides:
     manifests:
       - manifest:
           identifier: manifestEnv
           type: Values
           spec:
             store:
               type: Git
               spec:
                 connectorRef: <+input>
                 gitFetchType: Branch
                 paths:
                   - file1
                 repoName: <+input>
                 branch: master
     configFiles:
       - configFile:
           identifier: configFileEnv
           spec:
             store:
               type: Harness
               spec:
                 files:
                   - account:/Add-ons/svcOverrideTest
                 secretFiles: []
`),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Harness = Pulumi.Harness;
return await Deployment.RunAsync(() => 
{
    var example = new Harness.Platform.Environment("example", new()
    {
        Identifier = "identifier",
        Name = "name",
        Tags = new[]
        {
            "foo:bar",
            "bar:foo",
        },
        Type = "PreProduction",
        Description = "env description",
        Yaml = @"environment:
   name: name
   identifier: identifier
   type: PreProduction
   tags:
     foo: bar
     bar: foo
   variables:
     - name: envVar1
       type: String
       value: v1
       description: """"
     - name: envVar2
       type: String
       value: v2
       description: """"
   overrides:
     manifests:
       - manifest:
           identifier: manifestEnv
           type: Values
           spec:
             store:
               type: Git
               spec:
                 connectorRef: <+input>
                 gitFetchType: Branch
                 paths:
                   - file1
                 repoName: <+input>
                 branch: master
     configFiles:
       - configFile:
           identifier: configFileEnv
           spec:
             store:
               type: Harness
               spec:
                 files:
                   - account:/Add-ons/svcOverrideTest
                 secretFiles: []
",
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.harness.platform.Environment;
import com.pulumi.harness.platform.EnvironmentArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var example = new Environment("example", EnvironmentArgs.builder()
            .identifier("identifier")
            .name("name")
            .tags(            
                "foo:bar",
                "bar:foo")
            .type("PreProduction")
            .description("env description")
            .yaml("""
environment:
   name: name
   identifier: identifier
   type: PreProduction
   tags:
     foo: bar
     bar: foo
   variables:
     - name: envVar1
       type: String
       value: v1
       description: ""
     - name: envVar2
       type: String
       value: v2
       description: ""
   overrides:
     manifests:
       - manifest:
           identifier: manifestEnv
           type: Values
           spec:
             store:
               type: Git
               spec:
                 connectorRef: <+input>
                 gitFetchType: Branch
                 paths:
                   - file1
                 repoName: <+input>
                 branch: master
     configFiles:
       - configFile:
           identifier: configFileEnv
           spec:
             store:
               type: Harness
               spec:
                 files:
                   - account:/Add-ons/svcOverrideTest
                 secretFiles: []
            """)
            .build());
    }
}
resources:
  example:
    type: harness:platform:Environment
    properties:
      identifier: identifier
      name: name
      tags:
        - foo:bar
        - bar:foo
      type: PreProduction
      description: env description
      yaml: |
        environment:
           name: name
           identifier: identifier
           type: PreProduction
           tags:
             foo: bar
             bar: foo
           variables:
             - name: envVar1
               type: String
               value: v1
               description: ""
             - name: envVar2
               type: String
               value: v2
               description: ""
           overrides:
             manifests:
               - manifest:
                   identifier: manifestEnv
                   type: Values
                   spec:
                     store:
                       type: Git
                       spec:
                         connectorRef: <+input>
                         gitFetchType: Branch
                         paths:
                           - file1
                         repoName: <+input>
                         branch: master
             configFiles:
               - configFile:
                   identifier: configFileEnv
                   spec:
                     store:
                       type: Harness
                       spec:
                         files:
                           - account:/Add-ons/svcOverrideTest
                         secretFiles: []        
Org Level
import * as pulumi from "@pulumi/pulumi";
import * as harness from "@pulumi/harness";
const example = new harness.platform.Environment("example", {
    identifier: "identifier",
    name: "name",
    orgId: "org_id",
    tags: [
        "foo:bar",
        "bar:foo",
    ],
    type: "PreProduction",
    description: "env description",
    yaml: `environment:
   name: name
   identifier: identifier
   orgIdentifier: org_id
   type: PreProduction
   tags:
     foo: bar
     bar: foo
   variables:
     - name: envVar1
       type: String
       value: v1
       description: ""
     - name: envVar2
       type: String
       value: v2
       description: ""
   overrides:
     manifests:
       - manifest:
           identifier: manifestEnv
           type: Values
           spec:
             store:
               type: Git
               spec:
                 connectorRef: <+input>
                 gitFetchType: Branch
                 paths:
                   - file1
                 repoName: <+input>
                 branch: master
     configFiles:
       - configFile:
           identifier: configFileEnv
           spec:
             store:
               type: Harness
               spec:
                 files:
                   - account:/Add-ons/svcOverrideTest
                 secretFiles: []
`,
});
import pulumi
import pulumi_harness as harness
example = harness.platform.Environment("example",
    identifier="identifier",
    name="name",
    org_id="org_id",
    tags=[
        "foo:bar",
        "bar:foo",
    ],
    type="PreProduction",
    description="env description",
    yaml="""environment:
   name: name
   identifier: identifier
   orgIdentifier: org_id
   type: PreProduction
   tags:
     foo: bar
     bar: foo
   variables:
     - name: envVar1
       type: String
       value: v1
       description: ""
     - name: envVar2
       type: String
       value: v2
       description: ""
   overrides:
     manifests:
       - manifest:
           identifier: manifestEnv
           type: Values
           spec:
             store:
               type: Git
               spec:
                 connectorRef: <+input>
                 gitFetchType: Branch
                 paths:
                   - file1
                 repoName: <+input>
                 branch: master
     configFiles:
       - configFile:
           identifier: configFileEnv
           spec:
             store:
               type: Harness
               spec:
                 files:
                   - account:/Add-ons/svcOverrideTest
                 secretFiles: []
""")
package main
import (
	"github.com/pulumi/pulumi-harness/sdk/go/harness/platform"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := platform.NewEnvironment(ctx, "example", &platform.EnvironmentArgs{
			Identifier: pulumi.String("identifier"),
			Name:       pulumi.String("name"),
			OrgId:      pulumi.String("org_id"),
			Tags: pulumi.StringArray{
				pulumi.String("foo:bar"),
				pulumi.String("bar:foo"),
			},
			Type:        pulumi.String("PreProduction"),
			Description: pulumi.String("env description"),
			Yaml: pulumi.String(`environment:
   name: name
   identifier: identifier
   orgIdentifier: org_id
   type: PreProduction
   tags:
     foo: bar
     bar: foo
   variables:
     - name: envVar1
       type: String
       value: v1
       description: ""
     - name: envVar2
       type: String
       value: v2
       description: ""
   overrides:
     manifests:
       - manifest:
           identifier: manifestEnv
           type: Values
           spec:
             store:
               type: Git
               spec:
                 connectorRef: <+input>
                 gitFetchType: Branch
                 paths:
                   - file1
                 repoName: <+input>
                 branch: master
     configFiles:
       - configFile:
           identifier: configFileEnv
           spec:
             store:
               type: Harness
               spec:
                 files:
                   - account:/Add-ons/svcOverrideTest
                 secretFiles: []
`),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Harness = Pulumi.Harness;
return await Deployment.RunAsync(() => 
{
    var example = new Harness.Platform.Environment("example", new()
    {
        Identifier = "identifier",
        Name = "name",
        OrgId = "org_id",
        Tags = new[]
        {
            "foo:bar",
            "bar:foo",
        },
        Type = "PreProduction",
        Description = "env description",
        Yaml = @"environment:
   name: name
   identifier: identifier
   orgIdentifier: org_id
   type: PreProduction
   tags:
     foo: bar
     bar: foo
   variables:
     - name: envVar1
       type: String
       value: v1
       description: """"
     - name: envVar2
       type: String
       value: v2
       description: """"
   overrides:
     manifests:
       - manifest:
           identifier: manifestEnv
           type: Values
           spec:
             store:
               type: Git
               spec:
                 connectorRef: <+input>
                 gitFetchType: Branch
                 paths:
                   - file1
                 repoName: <+input>
                 branch: master
     configFiles:
       - configFile:
           identifier: configFileEnv
           spec:
             store:
               type: Harness
               spec:
                 files:
                   - account:/Add-ons/svcOverrideTest
                 secretFiles: []
",
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.harness.platform.Environment;
import com.pulumi.harness.platform.EnvironmentArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var example = new Environment("example", EnvironmentArgs.builder()
            .identifier("identifier")
            .name("name")
            .orgId("org_id")
            .tags(            
                "foo:bar",
                "bar:foo")
            .type("PreProduction")
            .description("env description")
            .yaml("""
environment:
   name: name
   identifier: identifier
   orgIdentifier: org_id
   type: PreProduction
   tags:
     foo: bar
     bar: foo
   variables:
     - name: envVar1
       type: String
       value: v1
       description: ""
     - name: envVar2
       type: String
       value: v2
       description: ""
   overrides:
     manifests:
       - manifest:
           identifier: manifestEnv
           type: Values
           spec:
             store:
               type: Git
               spec:
                 connectorRef: <+input>
                 gitFetchType: Branch
                 paths:
                   - file1
                 repoName: <+input>
                 branch: master
     configFiles:
       - configFile:
           identifier: configFileEnv
           spec:
             store:
               type: Harness
               spec:
                 files:
                   - account:/Add-ons/svcOverrideTest
                 secretFiles: []
            """)
            .build());
    }
}
resources:
  example:
    type: harness:platform:Environment
    properties:
      identifier: identifier
      name: name
      orgId: org_id
      tags:
        - foo:bar
        - bar:foo
      type: PreProduction
      description: env description
      yaml: |
        environment:
           name: name
           identifier: identifier
           orgIdentifier: org_id
           type: PreProduction
           tags:
             foo: bar
             bar: foo
           variables:
             - name: envVar1
               type: String
               value: v1
               description: ""
             - name: envVar2
               type: String
               value: v2
               description: ""
           overrides:
             manifests:
               - manifest:
                   identifier: manifestEnv
                   type: Values
                   spec:
                     store:
                       type: Git
                       spec:
                         connectorRef: <+input>
                         gitFetchType: Branch
                         paths:
                           - file1
                         repoName: <+input>
                         branch: master
             configFiles:
               - configFile:
                   identifier: configFileEnv
                   spec:
                     store:
                       type: Harness
                       spec:
                         files:
                           - account:/Add-ons/svcOverrideTest
                         secretFiles: []        
Project Level
import * as pulumi from "@pulumi/pulumi";
import * as harness from "@pulumi/harness";
const example = new harness.platform.Environment("example", {
    identifier: "identifier",
    name: "name",
    orgId: "org_id",
    projectId: "project_id",
    tags: [
        "foo:bar",
        "bar:foo",
    ],
    type: "PreProduction",
    description: "env description",
    yaml: `environment:
   name: name
   identifier: identifier
   orgIdentifier: org_id
   projectIdentifier: project_id
   type: PreProduction
   tags:
     foo: bar
     bar: foo
   variables:
     - name: envVar1
       type: String
       value: v1
       description: ""
     - name: envVar2
       type: String
       value: v2
       description: ""
   overrides:
     manifests:
       - manifest:
           identifier: manifestEnv
           type: Values
           spec:
             store:
               type: Git
               spec:
                 connectorRef: <+input>
                 gitFetchType: Branch
                 paths:
                   - file1
                 repoName: <+input>
                 branch: master
     configFiles:
       - configFile:
           identifier: configFileEnv
           spec:
             store:
               type: Harness
               spec:
                 files:
                   - account:/Add-ons/svcOverrideTest
                 secretFiles: []
`,
});
import pulumi
import pulumi_harness as harness
example = harness.platform.Environment("example",
    identifier="identifier",
    name="name",
    org_id="org_id",
    project_id="project_id",
    tags=[
        "foo:bar",
        "bar:foo",
    ],
    type="PreProduction",
    description="env description",
    yaml="""environment:
   name: name
   identifier: identifier
   orgIdentifier: org_id
   projectIdentifier: project_id
   type: PreProduction
   tags:
     foo: bar
     bar: foo
   variables:
     - name: envVar1
       type: String
       value: v1
       description: ""
     - name: envVar2
       type: String
       value: v2
       description: ""
   overrides:
     manifests:
       - manifest:
           identifier: manifestEnv
           type: Values
           spec:
             store:
               type: Git
               spec:
                 connectorRef: <+input>
                 gitFetchType: Branch
                 paths:
                   - file1
                 repoName: <+input>
                 branch: master
     configFiles:
       - configFile:
           identifier: configFileEnv
           spec:
             store:
               type: Harness
               spec:
                 files:
                   - account:/Add-ons/svcOverrideTest
                 secretFiles: []
""")
package main
import (
	"github.com/pulumi/pulumi-harness/sdk/go/harness/platform"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := platform.NewEnvironment(ctx, "example", &platform.EnvironmentArgs{
			Identifier: pulumi.String("identifier"),
			Name:       pulumi.String("name"),
			OrgId:      pulumi.String("org_id"),
			ProjectId:  pulumi.String("project_id"),
			Tags: pulumi.StringArray{
				pulumi.String("foo:bar"),
				pulumi.String("bar:foo"),
			},
			Type:        pulumi.String("PreProduction"),
			Description: pulumi.String("env description"),
			Yaml: pulumi.String(`environment:
   name: name
   identifier: identifier
   orgIdentifier: org_id
   projectIdentifier: project_id
   type: PreProduction
   tags:
     foo: bar
     bar: foo
   variables:
     - name: envVar1
       type: String
       value: v1
       description: ""
     - name: envVar2
       type: String
       value: v2
       description: ""
   overrides:
     manifests:
       - manifest:
           identifier: manifestEnv
           type: Values
           spec:
             store:
               type: Git
               spec:
                 connectorRef: <+input>
                 gitFetchType: Branch
                 paths:
                   - file1
                 repoName: <+input>
                 branch: master
     configFiles:
       - configFile:
           identifier: configFileEnv
           spec:
             store:
               type: Harness
               spec:
                 files:
                   - account:/Add-ons/svcOverrideTest
                 secretFiles: []
`),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Harness = Pulumi.Harness;
return await Deployment.RunAsync(() => 
{
    var example = new Harness.Platform.Environment("example", new()
    {
        Identifier = "identifier",
        Name = "name",
        OrgId = "org_id",
        ProjectId = "project_id",
        Tags = new[]
        {
            "foo:bar",
            "bar:foo",
        },
        Type = "PreProduction",
        Description = "env description",
        Yaml = @"environment:
   name: name
   identifier: identifier
   orgIdentifier: org_id
   projectIdentifier: project_id
   type: PreProduction
   tags:
     foo: bar
     bar: foo
   variables:
     - name: envVar1
       type: String
       value: v1
       description: """"
     - name: envVar2
       type: String
       value: v2
       description: """"
   overrides:
     manifests:
       - manifest:
           identifier: manifestEnv
           type: Values
           spec:
             store:
               type: Git
               spec:
                 connectorRef: <+input>
                 gitFetchType: Branch
                 paths:
                   - file1
                 repoName: <+input>
                 branch: master
     configFiles:
       - configFile:
           identifier: configFileEnv
           spec:
             store:
               type: Harness
               spec:
                 files:
                   - account:/Add-ons/svcOverrideTest
                 secretFiles: []
",
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.harness.platform.Environment;
import com.pulumi.harness.platform.EnvironmentArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var example = new Environment("example", EnvironmentArgs.builder()
            .identifier("identifier")
            .name("name")
            .orgId("org_id")
            .projectId("project_id")
            .tags(            
                "foo:bar",
                "bar:foo")
            .type("PreProduction")
            .description("env description")
            .yaml("""
environment:
   name: name
   identifier: identifier
   orgIdentifier: org_id
   projectIdentifier: project_id
   type: PreProduction
   tags:
     foo: bar
     bar: foo
   variables:
     - name: envVar1
       type: String
       value: v1
       description: ""
     - name: envVar2
       type: String
       value: v2
       description: ""
   overrides:
     manifests:
       - manifest:
           identifier: manifestEnv
           type: Values
           spec:
             store:
               type: Git
               spec:
                 connectorRef: <+input>
                 gitFetchType: Branch
                 paths:
                   - file1
                 repoName: <+input>
                 branch: master
     configFiles:
       - configFile:
           identifier: configFileEnv
           spec:
             store:
               type: Harness
               spec:
                 files:
                   - account:/Add-ons/svcOverrideTest
                 secretFiles: []
            """)
            .build());
    }
}
resources:
  example:
    type: harness:platform:Environment
    properties:
      identifier: identifier
      name: name
      orgId: org_id
      projectId: project_id
      tags:
        - foo:bar
        - bar:foo
      type: PreProduction
      description: env description
      yaml: |
        environment:
           name: name
           identifier: identifier
           orgIdentifier: org_id
           projectIdentifier: project_id
           type: PreProduction
           tags:
             foo: bar
             bar: foo
           variables:
             - name: envVar1
               type: String
               value: v1
               description: ""
             - name: envVar2
               type: String
               value: v2
               description: ""
           overrides:
             manifests:
               - manifest:
                   identifier: manifestEnv
                   type: Values
                   spec:
                     store:
                       type: Git
                       spec:
                         connectorRef: <+input>
                         gitFetchType: Branch
                         paths:
                           - file1
                         repoName: <+input>
                         branch: master
             configFiles:
               - configFile:
                   identifier: configFileEnv
                   spec:
                     store:
                       type: Harness
                       spec:
                         files:
                           - account:/Add-ons/svcOverrideTest
                         secretFiles: []        
Creating Remote Environment
import * as pulumi from "@pulumi/pulumi";
import * as harness from "@pulumi/harness";
const example = new harness.platform.Environment("example", {
    identifier: "identifier",
    name: "name",
    description: "test",
    orgId: "org_id",
    projectId: "project_id",
    gitDetails: {
        storeType: "REMOTE",
        connectorRef: "connector_ref",
        repoName: "repo_name",
        filePath: "file_path",
        branch: "branch",
    },
    yaml: `environment:
  name: env
  identifier: env
  tags:
    test: ""
  type: PreProduction
  orgIdentifier: default
  projectIdentifier: proj1
  variables:
    - name: var1
      type: String
      value: abc
      description: ""
      required: false
  overrides:
    manifests:
      - manifest:
          identifier: Manifest1
          type: Values
          spec:
            store:
              type: Github
              spec:
                connectorRef: <+input>
                gitFetchType: Branch
                paths:
                  - .harness/
                repoName: <+input>
                branch: <+input>
`,
});
import pulumi
import pulumi_harness as harness
example = harness.platform.Environment("example",
    identifier="identifier",
    name="name",
    description="test",
    org_id="org_id",
    project_id="project_id",
    git_details={
        "store_type": "REMOTE",
        "connector_ref": "connector_ref",
        "repo_name": "repo_name",
        "file_path": "file_path",
        "branch": "branch",
    },
    yaml="""environment:
  name: env
  identifier: env
  tags:
    test: ""
  type: PreProduction
  orgIdentifier: default
  projectIdentifier: proj1
  variables:
    - name: var1
      type: String
      value: abc
      description: ""
      required: false
  overrides:
    manifests:
      - manifest:
          identifier: Manifest1
          type: Values
          spec:
            store:
              type: Github
              spec:
                connectorRef: <+input>
                gitFetchType: Branch
                paths:
                  - .harness/
                repoName: <+input>
                branch: <+input>
""")
package main
import (
	"github.com/pulumi/pulumi-harness/sdk/go/harness/platform"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := platform.NewEnvironment(ctx, "example", &platform.EnvironmentArgs{
			Identifier:  pulumi.String("identifier"),
			Name:        pulumi.String("name"),
			Description: pulumi.String("test"),
			OrgId:       pulumi.String("org_id"),
			ProjectId:   pulumi.String("project_id"),
			GitDetails: &platform.EnvironmentGitDetailsArgs{
				StoreType:    pulumi.String("REMOTE"),
				ConnectorRef: pulumi.String("connector_ref"),
				RepoName:     pulumi.String("repo_name"),
				FilePath:     pulumi.String("file_path"),
				Branch:       pulumi.String("branch"),
			},
			Yaml: pulumi.String(`environment:
  name: env
  identifier: env
  tags:
    test: ""
  type: PreProduction
  orgIdentifier: default
  projectIdentifier: proj1
  variables:
    - name: var1
      type: String
      value: abc
      description: ""
      required: false
  overrides:
    manifests:
      - manifest:
          identifier: Manifest1
          type: Values
          spec:
            store:
              type: Github
              spec:
                connectorRef: <+input>
                gitFetchType: Branch
                paths:
                  - .harness/
                repoName: <+input>
                branch: <+input>
`),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Harness = Pulumi.Harness;
return await Deployment.RunAsync(() => 
{
    var example = new Harness.Platform.Environment("example", new()
    {
        Identifier = "identifier",
        Name = "name",
        Description = "test",
        OrgId = "org_id",
        ProjectId = "project_id",
        GitDetails = new Harness.Platform.Inputs.EnvironmentGitDetailsArgs
        {
            StoreType = "REMOTE",
            ConnectorRef = "connector_ref",
            RepoName = "repo_name",
            FilePath = "file_path",
            Branch = "branch",
        },
        Yaml = @"environment:
  name: env
  identifier: env
  tags:
    test: """"
  type: PreProduction
  orgIdentifier: default
  projectIdentifier: proj1
  variables:
    - name: var1
      type: String
      value: abc
      description: """"
      required: false
  overrides:
    manifests:
      - manifest:
          identifier: Manifest1
          type: Values
          spec:
            store:
              type: Github
              spec:
                connectorRef: <+input>
                gitFetchType: Branch
                paths:
                  - .harness/
                repoName: <+input>
                branch: <+input>
",
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.harness.platform.Environment;
import com.pulumi.harness.platform.EnvironmentArgs;
import com.pulumi.harness.platform.inputs.EnvironmentGitDetailsArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var example = new Environment("example", EnvironmentArgs.builder()
            .identifier("identifier")
            .name("name")
            .description("test")
            .orgId("org_id")
            .projectId("project_id")
            .gitDetails(EnvironmentGitDetailsArgs.builder()
                .storeType("REMOTE")
                .connectorRef("connector_ref")
                .repoName("repo_name")
                .filePath("file_path")
                .branch("branch")
                .build())
            .yaml("""
environment:
  name: env
  identifier: env
  tags:
    test: ""
  type: PreProduction
  orgIdentifier: default
  projectIdentifier: proj1
  variables:
    - name: var1
      type: String
      value: abc
      description: ""
      required: false
  overrides:
    manifests:
      - manifest:
          identifier: Manifest1
          type: Values
          spec:
            store:
              type: Github
              spec:
                connectorRef: <+input>
                gitFetchType: Branch
                paths:
                  - .harness/
                repoName: <+input>
                branch: <+input>
            """)
            .build());
    }
}
resources:
  example:
    type: harness:platform:Environment
    properties:
      identifier: identifier
      name: name
      description: test
      orgId: org_id
      projectId: project_id
      gitDetails:
        storeType: REMOTE
        connectorRef: connector_ref
        repoName: repo_name
        filePath: file_path
        branch: branch
      yaml: |
        environment:
          name: env
          identifier: env
          tags:
            test: ""
          type: PreProduction
          orgIdentifier: default
          projectIdentifier: proj1
          variables:
            - name: var1
              type: String
              value: abc
              description: ""
              required: false
          overrides:
            manifests:
              - manifest:
                  identifier: Manifest1
                  type: Values
                  spec:
                    store:
                      type: Github
                      spec:
                        connectorRef: <+input>
                        gitFetchType: Branch
                        paths:
                          - .harness/
                        repoName: <+input>
                        branch: <+input>        
Importing Environment From Git
import * as pulumi from "@pulumi/pulumi";
import * as harness from "@pulumi/harness";
const example = new harness.platform.Environment("example", {
    identifier: "identifier",
    name: "name",
    type: "PreProduction",
    gitDetails: {
        storeType: "REMOTE",
        connectorRef: "connector_ref",
        repoName: "repo_name",
        filePath: "file_path",
        branch: "branch",
        importFromGit: true,
    },
});
import pulumi
import pulumi_harness as harness
example = harness.platform.Environment("example",
    identifier="identifier",
    name="name",
    type="PreProduction",
    git_details={
        "store_type": "REMOTE",
        "connector_ref": "connector_ref",
        "repo_name": "repo_name",
        "file_path": "file_path",
        "branch": "branch",
        "import_from_git": True,
    })
package main
import (
	"github.com/pulumi/pulumi-harness/sdk/go/harness/platform"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := platform.NewEnvironment(ctx, "example", &platform.EnvironmentArgs{
			Identifier: pulumi.String("identifier"),
			Name:       pulumi.String("name"),
			Type:       pulumi.String("PreProduction"),
			GitDetails: &platform.EnvironmentGitDetailsArgs{
				StoreType:     pulumi.String("REMOTE"),
				ConnectorRef:  pulumi.String("connector_ref"),
				RepoName:      pulumi.String("repo_name"),
				FilePath:      pulumi.String("file_path"),
				Branch:        pulumi.String("branch"),
				ImportFromGit: pulumi.Bool(true),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Harness = Pulumi.Harness;
return await Deployment.RunAsync(() => 
{
    var example = new Harness.Platform.Environment("example", new()
    {
        Identifier = "identifier",
        Name = "name",
        Type = "PreProduction",
        GitDetails = new Harness.Platform.Inputs.EnvironmentGitDetailsArgs
        {
            StoreType = "REMOTE",
            ConnectorRef = "connector_ref",
            RepoName = "repo_name",
            FilePath = "file_path",
            Branch = "branch",
            ImportFromGit = true,
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.harness.platform.Environment;
import com.pulumi.harness.platform.EnvironmentArgs;
import com.pulumi.harness.platform.inputs.EnvironmentGitDetailsArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var example = new Environment("example", EnvironmentArgs.builder()
            .identifier("identifier")
            .name("name")
            .type("PreProduction")
            .gitDetails(EnvironmentGitDetailsArgs.builder()
                .storeType("REMOTE")
                .connectorRef("connector_ref")
                .repoName("repo_name")
                .filePath("file_path")
                .branch("branch")
                .importFromGit("true")
                .build())
            .build());
    }
}
resources:
  example:
    type: harness:platform:Environment
    properties:
      identifier: identifier
      name: name
      type: PreProduction
      gitDetails:
        storeType: REMOTE
        connectorRef: connector_ref
        repoName: repo_name
        filePath: file_path
        branch: branch
        importFromGit: 'true'
Create Environment Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Environment(name: string, args: EnvironmentArgs, opts?: CustomResourceOptions);@overload
def Environment(resource_name: str,
                args: EnvironmentArgs,
                opts: Optional[ResourceOptions] = None)
@overload
def Environment(resource_name: str,
                opts: Optional[ResourceOptions] = None,
                identifier: Optional[str] = None,
                type: Optional[str] = None,
                color: Optional[str] = None,
                description: Optional[str] = None,
                force_delete: Optional[bool] = None,
                git_details: Optional[EnvironmentGitDetailsArgs] = None,
                name: Optional[str] = None,
                org_id: Optional[str] = None,
                project_id: Optional[str] = None,
                tags: Optional[Sequence[str]] = None,
                yaml: Optional[str] = None)func NewEnvironment(ctx *Context, name string, args EnvironmentArgs, opts ...ResourceOption) (*Environment, error)public Environment(string name, EnvironmentArgs args, CustomResourceOptions? opts = null)
public Environment(String name, EnvironmentArgs args)
public Environment(String name, EnvironmentArgs args, CustomResourceOptions options)
type: harness:platform:Environment
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 EnvironmentArgs
 - 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 EnvironmentArgs
 - 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 EnvironmentArgs
 - The arguments to resource properties.
 - opts ResourceOption
 - Bag of options to control resource's behavior.
 
- name string
 - The unique name of the resource.
 - args EnvironmentArgs
 - The arguments to resource properties.
 - opts CustomResourceOptions
 - Bag of options to control resource's behavior.
 
- name String
 - The unique name of the resource.
 - args EnvironmentArgs
 - The arguments to resource properties.
 - options CustomResourceOptions
 - Bag of options to control resource's behavior.
 
Constructor example
The following reference example uses placeholder values for all input properties.
var harnessEnvironmentResource = new Harness.Platform.Environment("harnessEnvironmentResource", new()
{
    Identifier = "string",
    Type = "string",
    Color = "string",
    Description = "string",
    ForceDelete = false,
    GitDetails = new Harness.Platform.Inputs.EnvironmentGitDetailsArgs
    {
        BaseBranch = "string",
        Branch = "string",
        CommitMessage = "string",
        ConnectorRef = "string",
        FilePath = "string",
        ImportFromGit = false,
        IsForceImport = false,
        IsHarnesscodeRepo = false,
        IsNewBranch = false,
        LastCommitId = "string",
        LastObjectId = "string",
        LoadFromCache = "string",
        LoadFromFallbackBranch = false,
        ParentEntityConnectorRef = "string",
        ParentEntityRepoName = "string",
        RepoName = "string",
        StoreType = "string",
    },
    Name = "string",
    OrgId = "string",
    ProjectId = "string",
    Tags = new[]
    {
        "string",
    },
    Yaml = "string",
});
example, err := platform.NewEnvironment(ctx, "harnessEnvironmentResource", &platform.EnvironmentArgs{
	Identifier:  pulumi.String("string"),
	Type:        pulumi.String("string"),
	Color:       pulumi.String("string"),
	Description: pulumi.String("string"),
	ForceDelete: pulumi.Bool(false),
	GitDetails: &platform.EnvironmentGitDetailsArgs{
		BaseBranch:               pulumi.String("string"),
		Branch:                   pulumi.String("string"),
		CommitMessage:            pulumi.String("string"),
		ConnectorRef:             pulumi.String("string"),
		FilePath:                 pulumi.String("string"),
		ImportFromGit:            pulumi.Bool(false),
		IsForceImport:            pulumi.Bool(false),
		IsHarnesscodeRepo:        pulumi.Bool(false),
		IsNewBranch:              pulumi.Bool(false),
		LastCommitId:             pulumi.String("string"),
		LastObjectId:             pulumi.String("string"),
		LoadFromCache:            pulumi.String("string"),
		LoadFromFallbackBranch:   pulumi.Bool(false),
		ParentEntityConnectorRef: pulumi.String("string"),
		ParentEntityRepoName:     pulumi.String("string"),
		RepoName:                 pulumi.String("string"),
		StoreType:                pulumi.String("string"),
	},
	Name:      pulumi.String("string"),
	OrgId:     pulumi.String("string"),
	ProjectId: pulumi.String("string"),
	Tags: pulumi.StringArray{
		pulumi.String("string"),
	},
	Yaml: pulumi.String("string"),
})
var harnessEnvironmentResource = new Environment("harnessEnvironmentResource", EnvironmentArgs.builder()
    .identifier("string")
    .type("string")
    .color("string")
    .description("string")
    .forceDelete(false)
    .gitDetails(EnvironmentGitDetailsArgs.builder()
        .baseBranch("string")
        .branch("string")
        .commitMessage("string")
        .connectorRef("string")
        .filePath("string")
        .importFromGit(false)
        .isForceImport(false)
        .isHarnesscodeRepo(false)
        .isNewBranch(false)
        .lastCommitId("string")
        .lastObjectId("string")
        .loadFromCache("string")
        .loadFromFallbackBranch(false)
        .parentEntityConnectorRef("string")
        .parentEntityRepoName("string")
        .repoName("string")
        .storeType("string")
        .build())
    .name("string")
    .orgId("string")
    .projectId("string")
    .tags("string")
    .yaml("string")
    .build());
harness_environment_resource = harness.platform.Environment("harnessEnvironmentResource",
    identifier="string",
    type="string",
    color="string",
    description="string",
    force_delete=False,
    git_details={
        "base_branch": "string",
        "branch": "string",
        "commit_message": "string",
        "connector_ref": "string",
        "file_path": "string",
        "import_from_git": False,
        "is_force_import": False,
        "is_harnesscode_repo": False,
        "is_new_branch": False,
        "last_commit_id": "string",
        "last_object_id": "string",
        "load_from_cache": "string",
        "load_from_fallback_branch": False,
        "parent_entity_connector_ref": "string",
        "parent_entity_repo_name": "string",
        "repo_name": "string",
        "store_type": "string",
    },
    name="string",
    org_id="string",
    project_id="string",
    tags=["string"],
    yaml="string")
const harnessEnvironmentResource = new harness.platform.Environment("harnessEnvironmentResource", {
    identifier: "string",
    type: "string",
    color: "string",
    description: "string",
    forceDelete: false,
    gitDetails: {
        baseBranch: "string",
        branch: "string",
        commitMessage: "string",
        connectorRef: "string",
        filePath: "string",
        importFromGit: false,
        isForceImport: false,
        isHarnesscodeRepo: false,
        isNewBranch: false,
        lastCommitId: "string",
        lastObjectId: "string",
        loadFromCache: "string",
        loadFromFallbackBranch: false,
        parentEntityConnectorRef: "string",
        parentEntityRepoName: "string",
        repoName: "string",
        storeType: "string",
    },
    name: "string",
    orgId: "string",
    projectId: "string",
    tags: ["string"],
    yaml: "string",
});
type: harness:platform:Environment
properties:
    color: string
    description: string
    forceDelete: false
    gitDetails:
        baseBranch: string
        branch: string
        commitMessage: string
        connectorRef: string
        filePath: string
        importFromGit: false
        isForceImport: false
        isHarnesscodeRepo: false
        isNewBranch: false
        lastCommitId: string
        lastObjectId: string
        loadFromCache: string
        loadFromFallbackBranch: false
        parentEntityConnectorRef: string
        parentEntityRepoName: string
        repoName: string
        storeType: string
    identifier: string
    name: string
    orgId: string
    projectId: string
    tags:
        - string
    type: string
    yaml: string
Environment 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 Environment resource accepts the following input properties:
- Identifier string
 - Unique identifier of the resource.
 - Type string
 - The type of environment. Valid values are PreProduction, Production
 - Color string
 - Color of the environment.
 - Description string
 - Description of the resource.
 - Force
Delete bool - When set to true, enables force deletion of environments.
 - Git
Details EnvironmentGit Details  - Contains Git Information for remote entities from Git for Create/Update/Import
 - Name string
 - Name of the resource.
 - Org
Id string - Unique identifier of the organization.
 - Project
Id string - Unique identifier of the project.
 - List<string>
 - Tags to associate with the resource.
 - Yaml string
 - Environment YAML. In YAML, to reference an entity at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference an entity at the account scope, prefix 'account` to the expression: account.{identifier}. For eg, to reference a connector with identifier 'connectorId' at the organization scope in a stage mention it as connectorRef: org. connectorId.
 
- Identifier string
 - Unique identifier of the resource.
 - Type string
 - The type of environment. Valid values are PreProduction, Production
 - Color string
 - Color of the environment.
 - Description string
 - Description of the resource.
 - Force
Delete bool - When set to true, enables force deletion of environments.
 - Git
Details EnvironmentGit Details Args  - Contains Git Information for remote entities from Git for Create/Update/Import
 - Name string
 - Name of the resource.
 - Org
Id string - Unique identifier of the organization.
 - Project
Id string - Unique identifier of the project.
 - []string
 - Tags to associate with the resource.
 - Yaml string
 - Environment YAML. In YAML, to reference an entity at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference an entity at the account scope, prefix 'account` to the expression: account.{identifier}. For eg, to reference a connector with identifier 'connectorId' at the organization scope in a stage mention it as connectorRef: org. connectorId.
 
- identifier String
 - Unique identifier of the resource.
 - type String
 - The type of environment. Valid values are PreProduction, Production
 - color String
 - Color of the environment.
 - description String
 - Description of the resource.
 - force
Delete Boolean - When set to true, enables force deletion of environments.
 - git
Details EnvironmentGit Details  - Contains Git Information for remote entities from Git for Create/Update/Import
 - name String
 - Name of the resource.
 - org
Id String - Unique identifier of the organization.
 - project
Id String - Unique identifier of the project.
 - List<String>
 - Tags to associate with the resource.
 - yaml String
 - Environment YAML. In YAML, to reference an entity at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference an entity at the account scope, prefix 'account` to the expression: account.{identifier}. For eg, to reference a connector with identifier 'connectorId' at the organization scope in a stage mention it as connectorRef: org. connectorId.
 
- identifier string
 - Unique identifier of the resource.
 - type string
 - The type of environment. Valid values are PreProduction, Production
 - color string
 - Color of the environment.
 - description string
 - Description of the resource.
 - force
Delete boolean - When set to true, enables force deletion of environments.
 - git
Details EnvironmentGit Details  - Contains Git Information for remote entities from Git for Create/Update/Import
 - name string
 - Name of the resource.
 - org
Id string - Unique identifier of the organization.
 - project
Id string - Unique identifier of the project.
 - string[]
 - Tags to associate with the resource.
 - yaml string
 - Environment YAML. In YAML, to reference an entity at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference an entity at the account scope, prefix 'account` to the expression: account.{identifier}. For eg, to reference a connector with identifier 'connectorId' at the organization scope in a stage mention it as connectorRef: org. connectorId.
 
- identifier str
 - Unique identifier of the resource.
 - type str
 - The type of environment. Valid values are PreProduction, Production
 - color str
 - Color of the environment.
 - description str
 - Description of the resource.
 - force_
delete bool - When set to true, enables force deletion of environments.
 - git_
details EnvironmentGit Details Args  - Contains Git Information for remote entities from Git for Create/Update/Import
 - name str
 - Name of the resource.
 - org_
id str - Unique identifier of the organization.
 - project_
id str - Unique identifier of the project.
 - Sequence[str]
 - Tags to associate with the resource.
 - yaml str
 - Environment YAML. In YAML, to reference an entity at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference an entity at the account scope, prefix 'account` to the expression: account.{identifier}. For eg, to reference a connector with identifier 'connectorId' at the organization scope in a stage mention it as connectorRef: org. connectorId.
 
- identifier String
 - Unique identifier of the resource.
 - type String
 - The type of environment. Valid values are PreProduction, Production
 - color String
 - Color of the environment.
 - description String
 - Description of the resource.
 - force
Delete Boolean - When set to true, enables force deletion of environments.
 - git
Details Property Map - Contains Git Information for remote entities from Git for Create/Update/Import
 - name String
 - Name of the resource.
 - org
Id String - Unique identifier of the organization.
 - project
Id String - Unique identifier of the project.
 - List<String>
 - Tags to associate with the resource.
 - yaml String
 - Environment YAML. In YAML, to reference an entity at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference an entity at the account scope, prefix 'account` to the expression: account.{identifier}. For eg, to reference a connector with identifier 'connectorId' at the organization scope in a stage mention it as connectorRef: org. connectorId.
 
Outputs
All input properties are implicitly available as output properties. Additionally, the Environment resource produces the following output properties:
- Id string
 - The provider-assigned unique ID for this managed resource.
 
- Id string
 - The provider-assigned unique ID for this managed resource.
 
- id String
 - The provider-assigned unique ID for this managed resource.
 
- id string
 - The provider-assigned unique ID for this managed resource.
 
- id str
 - The provider-assigned unique ID for this managed resource.
 
- id String
 - The provider-assigned unique ID for this managed resource.
 
Look up Existing Environment Resource
Get an existing Environment 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?: EnvironmentState, opts?: CustomResourceOptions): Environment@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        color: Optional[str] = None,
        description: Optional[str] = None,
        force_delete: Optional[bool] = None,
        git_details: Optional[EnvironmentGitDetailsArgs] = None,
        identifier: Optional[str] = None,
        name: Optional[str] = None,
        org_id: Optional[str] = None,
        project_id: Optional[str] = None,
        tags: Optional[Sequence[str]] = None,
        type: Optional[str] = None,
        yaml: Optional[str] = None) -> Environmentfunc GetEnvironment(ctx *Context, name string, id IDInput, state *EnvironmentState, opts ...ResourceOption) (*Environment, error)public static Environment Get(string name, Input<string> id, EnvironmentState? state, CustomResourceOptions? opts = null)public static Environment get(String name, Output<String> id, EnvironmentState state, CustomResourceOptions options)resources:  _:    type: harness:platform:Environment    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.
 
- Color string
 - Color of the environment.
 - Description string
 - Description of the resource.
 - Force
Delete bool - When set to true, enables force deletion of environments.
 - Git
Details EnvironmentGit Details  - Contains Git Information for remote entities from Git for Create/Update/Import
 - Identifier string
 - Unique identifier of the resource.
 - Name string
 - Name of the resource.
 - Org
Id string - Unique identifier of the organization.
 - Project
Id string - Unique identifier of the project.
 - List<string>
 - Tags to associate with the resource.
 - Type string
 - The type of environment. Valid values are PreProduction, Production
 - Yaml string
 - Environment YAML. In YAML, to reference an entity at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference an entity at the account scope, prefix 'account` to the expression: account.{identifier}. For eg, to reference a connector with identifier 'connectorId' at the organization scope in a stage mention it as connectorRef: org. connectorId.
 
- Color string
 - Color of the environment.
 - Description string
 - Description of the resource.
 - Force
Delete bool - When set to true, enables force deletion of environments.
 - Git
Details EnvironmentGit Details Args  - Contains Git Information for remote entities from Git for Create/Update/Import
 - Identifier string
 - Unique identifier of the resource.
 - Name string
 - Name of the resource.
 - Org
Id string - Unique identifier of the organization.
 - Project
Id string - Unique identifier of the project.
 - []string
 - Tags to associate with the resource.
 - Type string
 - The type of environment. Valid values are PreProduction, Production
 - Yaml string
 - Environment YAML. In YAML, to reference an entity at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference an entity at the account scope, prefix 'account` to the expression: account.{identifier}. For eg, to reference a connector with identifier 'connectorId' at the organization scope in a stage mention it as connectorRef: org. connectorId.
 
- color String
 - Color of the environment.
 - description String
 - Description of the resource.
 - force
Delete Boolean - When set to true, enables force deletion of environments.
 - git
Details EnvironmentGit Details  - Contains Git Information for remote entities from Git for Create/Update/Import
 - identifier String
 - Unique identifier of the resource.
 - name String
 - Name of the resource.
 - org
Id String - Unique identifier of the organization.
 - project
Id String - Unique identifier of the project.
 - List<String>
 - Tags to associate with the resource.
 - type String
 - The type of environment. Valid values are PreProduction, Production
 - yaml String
 - Environment YAML. In YAML, to reference an entity at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference an entity at the account scope, prefix 'account` to the expression: account.{identifier}. For eg, to reference a connector with identifier 'connectorId' at the organization scope in a stage mention it as connectorRef: org. connectorId.
 
- color string
 - Color of the environment.
 - description string
 - Description of the resource.
 - force
Delete boolean - When set to true, enables force deletion of environments.
 - git
Details EnvironmentGit Details  - Contains Git Information for remote entities from Git for Create/Update/Import
 - identifier string
 - Unique identifier of the resource.
 - name string
 - Name of the resource.
 - org
Id string - Unique identifier of the organization.
 - project
Id string - Unique identifier of the project.
 - string[]
 - Tags to associate with the resource.
 - type string
 - The type of environment. Valid values are PreProduction, Production
 - yaml string
 - Environment YAML. In YAML, to reference an entity at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference an entity at the account scope, prefix 'account` to the expression: account.{identifier}. For eg, to reference a connector with identifier 'connectorId' at the organization scope in a stage mention it as connectorRef: org. connectorId.
 
- color str
 - Color of the environment.
 - description str
 - Description of the resource.
 - force_
delete bool - When set to true, enables force deletion of environments.
 - git_
details EnvironmentGit Details Args  - Contains Git Information for remote entities from Git for Create/Update/Import
 - identifier str
 - Unique identifier of the resource.
 - name str
 - Name of the resource.
 - org_
id str - Unique identifier of the organization.
 - project_
id str - Unique identifier of the project.
 - Sequence[str]
 - Tags to associate with the resource.
 - type str
 - The type of environment. Valid values are PreProduction, Production
 - yaml str
 - Environment YAML. In YAML, to reference an entity at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference an entity at the account scope, prefix 'account` to the expression: account.{identifier}. For eg, to reference a connector with identifier 'connectorId' at the organization scope in a stage mention it as connectorRef: org. connectorId.
 
- color String
 - Color of the environment.
 - description String
 - Description of the resource.
 - force
Delete Boolean - When set to true, enables force deletion of environments.
 - git
Details Property Map - Contains Git Information for remote entities from Git for Create/Update/Import
 - identifier String
 - Unique identifier of the resource.
 - name String
 - Name of the resource.
 - org
Id String - Unique identifier of the organization.
 - project
Id String - Unique identifier of the project.
 - List<String>
 - Tags to associate with the resource.
 - type String
 - The type of environment. Valid values are PreProduction, Production
 - yaml String
 - Environment YAML. In YAML, to reference an entity at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference an entity at the account scope, prefix 'account` to the expression: account.{identifier}. For eg, to reference a connector with identifier 'connectorId' at the organization scope in a stage mention it as connectorRef: org. connectorId.
 
Supporting Types
EnvironmentGitDetails, EnvironmentGitDetailsArgs      
- Base
Branch string - Name of the default branch (this checks out a new branch titled by branch_name).
 - Branch string
 - Name of the branch.
 - Commit
Message string - message for the commit in Git Repo.
 - Connector
Ref string - Identifier of the Harness Connector used for importing entity from Git To reference a connector at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference a connector at the account scope, prefix 'account` to the expression: account.{identifier}.
 - File
Path string - File path of the Entity in the repository.
 - Import
From boolGit  - Flag to set if importing from Git
 - Is
Force boolImport  - Flag to set if force importing from Git
 - Is
Harnesscode boolRepo  - If the gitProvider is HarnessCode
 - Is
New boolBranch  - If a new branch creation is requested.
 - Last
Commit stringId  - Last commit identifier (for Git Repositories other than Github). To be provided only when updating Environment.
 - Last
Object stringId  - Last object identifier (for Github). To be provided only when updating Environment.
 - Load
From stringCache  - If the Entity is to be fetched from cache
 - Load
From boolFallback Branch  - Whether the file has to be get from fallback_branch.
 - Parent
Entity stringConnector Ref  - Identifier of the Harness Connector used for CRUD operations on the Parent Entity. To reference a connector at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference a connector at the account scope, prefix 'account` to the expression: account.{identifier}.
 - Parent
Entity stringRepo Name  - Name of the repository where parent entity lies.
 - Repo
Name string - Name of the repository.
 - Store
Type string - store type of the entity.
 
- Base
Branch string - Name of the default branch (this checks out a new branch titled by branch_name).
 - Branch string
 - Name of the branch.
 - Commit
Message string - message for the commit in Git Repo.
 - Connector
Ref string - Identifier of the Harness Connector used for importing entity from Git To reference a connector at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference a connector at the account scope, prefix 'account` to the expression: account.{identifier}.
 - File
Path string - File path of the Entity in the repository.
 - Import
From boolGit  - Flag to set if importing from Git
 - Is
Force boolImport  - Flag to set if force importing from Git
 - Is
Harnesscode boolRepo  - If the gitProvider is HarnessCode
 - Is
New boolBranch  - If a new branch creation is requested.
 - Last
Commit stringId  - Last commit identifier (for Git Repositories other than Github). To be provided only when updating Environment.
 - Last
Object stringId  - Last object identifier (for Github). To be provided only when updating Environment.
 - Load
From stringCache  - If the Entity is to be fetched from cache
 - Load
From boolFallback Branch  - Whether the file has to be get from fallback_branch.
 - Parent
Entity stringConnector Ref  - Identifier of the Harness Connector used for CRUD operations on the Parent Entity. To reference a connector at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference a connector at the account scope, prefix 'account` to the expression: account.{identifier}.
 - Parent
Entity stringRepo Name  - Name of the repository where parent entity lies.
 - Repo
Name string - Name of the repository.
 - Store
Type string - store type of the entity.
 
- base
Branch String - Name of the default branch (this checks out a new branch titled by branch_name).
 - branch String
 - Name of the branch.
 - commit
Message String - message for the commit in Git Repo.
 - connector
Ref String - Identifier of the Harness Connector used for importing entity from Git To reference a connector at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference a connector at the account scope, prefix 'account` to the expression: account.{identifier}.
 - file
Path String - File path of the Entity in the repository.
 - import
From BooleanGit  - Flag to set if importing from Git
 - is
Force BooleanImport  - Flag to set if force importing from Git
 - is
Harnesscode BooleanRepo  - If the gitProvider is HarnessCode
 - is
New BooleanBranch  - If a new branch creation is requested.
 - last
Commit StringId  - Last commit identifier (for Git Repositories other than Github). To be provided only when updating Environment.
 - last
Object StringId  - Last object identifier (for Github). To be provided only when updating Environment.
 - load
From StringCache  - If the Entity is to be fetched from cache
 - load
From BooleanFallback Branch  - Whether the file has to be get from fallback_branch.
 - parent
Entity StringConnector Ref  - Identifier of the Harness Connector used for CRUD operations on the Parent Entity. To reference a connector at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference a connector at the account scope, prefix 'account` to the expression: account.{identifier}.
 - parent
Entity StringRepo Name  - Name of the repository where parent entity lies.
 - repo
Name String - Name of the repository.
 - store
Type String - store type of the entity.
 
- base
Branch string - Name of the default branch (this checks out a new branch titled by branch_name).
 - branch string
 - Name of the branch.
 - commit
Message string - message for the commit in Git Repo.
 - connector
Ref string - Identifier of the Harness Connector used for importing entity from Git To reference a connector at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference a connector at the account scope, prefix 'account` to the expression: account.{identifier}.
 - file
Path string - File path of the Entity in the repository.
 - import
From booleanGit  - Flag to set if importing from Git
 - is
Force booleanImport  - Flag to set if force importing from Git
 - is
Harnesscode booleanRepo  - If the gitProvider is HarnessCode
 - is
New booleanBranch  - If a new branch creation is requested.
 - last
Commit stringId  - Last commit identifier (for Git Repositories other than Github). To be provided only when updating Environment.
 - last
Object stringId  - Last object identifier (for Github). To be provided only when updating Environment.
 - load
From stringCache  - If the Entity is to be fetched from cache
 - load
From booleanFallback Branch  - Whether the file has to be get from fallback_branch.
 - parent
Entity stringConnector Ref  - Identifier of the Harness Connector used for CRUD operations on the Parent Entity. To reference a connector at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference a connector at the account scope, prefix 'account` to the expression: account.{identifier}.
 - parent
Entity stringRepo Name  - Name of the repository where parent entity lies.
 - repo
Name string - Name of the repository.
 - store
Type string - store type of the entity.
 
- base_
branch str - Name of the default branch (this checks out a new branch titled by branch_name).
 - branch str
 - Name of the branch.
 - commit_
message str - message for the commit in Git Repo.
 - connector_
ref str - Identifier of the Harness Connector used for importing entity from Git To reference a connector at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference a connector at the account scope, prefix 'account` to the expression: account.{identifier}.
 - file_
path str - File path of the Entity in the repository.
 - import_
from_ boolgit  - Flag to set if importing from Git
 - is_
force_ boolimport  - Flag to set if force importing from Git
 - is_
harnesscode_ boolrepo  - If the gitProvider is HarnessCode
 - is_
new_ boolbranch  - If a new branch creation is requested.
 - last_
commit_ strid  - Last commit identifier (for Git Repositories other than Github). To be provided only when updating Environment.
 - last_
object_ strid  - Last object identifier (for Github). To be provided only when updating Environment.
 - load_
from_ strcache  - If the Entity is to be fetched from cache
 - load_
from_ boolfallback_ branch  - Whether the file has to be get from fallback_branch.
 - parent_
entity_ strconnector_ ref  - Identifier of the Harness Connector used for CRUD operations on the Parent Entity. To reference a connector at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference a connector at the account scope, prefix 'account` to the expression: account.{identifier}.
 - parent_
entity_ strrepo_ name  - Name of the repository where parent entity lies.
 - repo_
name str - Name of the repository.
 - store_
type str - store type of the entity.
 
- base
Branch String - Name of the default branch (this checks out a new branch titled by branch_name).
 - branch String
 - Name of the branch.
 - commit
Message String - message for the commit in Git Repo.
 - connector
Ref String - Identifier of the Harness Connector used for importing entity from Git To reference a connector at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference a connector at the account scope, prefix 'account` to the expression: account.{identifier}.
 - file
Path String - File path of the Entity in the repository.
 - import
From BooleanGit  - Flag to set if importing from Git
 - is
Force BooleanImport  - Flag to set if force importing from Git
 - is
Harnesscode BooleanRepo  - If the gitProvider is HarnessCode
 - is
New BooleanBranch  - If a new branch creation is requested.
 - last
Commit StringId  - Last commit identifier (for Git Repositories other than Github). To be provided only when updating Environment.
 - last
Object StringId  - Last object identifier (for Github). To be provided only when updating Environment.
 - load
From StringCache  - If the Entity is to be fetched from cache
 - load
From BooleanFallback Branch  - Whether the file has to be get from fallback_branch.
 - parent
Entity StringConnector Ref  - Identifier of the Harness Connector used for CRUD operations on the Parent Entity. To reference a connector at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference a connector at the account scope, prefix 'account` to the expression: account.{identifier}.
 - parent
Entity StringRepo Name  - Name of the repository where parent entity lies.
 - repo
Name String - Name of the repository.
 - store
Type String - store type of the entity.
 
Import
Import account level environment id
$ pulumi import harness:platform/environment:Environment example <environment_id>
Import org level environment id
$ pulumi import harness:platform/environment:Environment example <org_id>/<environment_id>
Import project level environment id
$ pulumi import harness:platform/environment:Environment example <org_id>/<project_id>/<environment_id>
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 
harnessTerraform Provider.