1. Packages
  2. Harness Provider
  3. API Docs
  4. platform
  5. getEnvironmentClustersMapping
Harness v0.7.2 published on Tuesday, Apr 15, 2025 by Pulumi

harness.platform.getEnvironmentClustersMapping

Explore with Pulumi AI

Data source for retrieving Harness Gitops clusters mapped to Harness Environment.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as harness from "@pulumi/harness";

// data source for gitops clusters mapped to a project level env
const example = harness.platform.getEnvironmentClustersMapping({
    identifier: "mycustomidentifier",
    orgId: "orgIdentifer",
    projectId: "projectIdentifier",
    envId: "exampleEnvId",
    clusters: [{
        identifier: "incluster",
        name: "in-cluster",
        agentIdentifier: "account.gitopsagentdev",
        scope: "ACCOUNT",
    }],
});
// data source for two gitops clusters mapped to an account level env
const example2 = harness.platform.getEnvironmentClustersMapping({
    identifier: "mycustomidentifier",
    envId: "env1",
    clusters: [
        {
            identifier: "clusterA",
            name: "cluster-A",
            agentIdentifier: "account.gitopsagentprod",
            scope: "ACCOUNT",
        },
        {
            identifier: "clusterB",
            name: "cluster-B",
            agentIdentifier: "account.gitopsagentprod",
            scope: "ACCOUNT",
        },
    ],
});
Copy
import pulumi
import pulumi_harness as harness

# data source for gitops clusters mapped to a project level env
example = harness.platform.get_environment_clusters_mapping(identifier="mycustomidentifier",
    org_id="orgIdentifer",
    project_id="projectIdentifier",
    env_id="exampleEnvId",
    clusters=[{
        "identifier": "incluster",
        "name": "in-cluster",
        "agent_identifier": "account.gitopsagentdev",
        "scope": "ACCOUNT",
    }])
# data source for two gitops clusters mapped to an account level env
example2 = harness.platform.get_environment_clusters_mapping(identifier="mycustomidentifier",
    env_id="env1",
    clusters=[
        {
            "identifier": "clusterA",
            "name": "cluster-A",
            "agent_identifier": "account.gitopsagentprod",
            "scope": "ACCOUNT",
        },
        {
            "identifier": "clusterB",
            "name": "cluster-B",
            "agent_identifier": "account.gitopsagentprod",
            "scope": "ACCOUNT",
        },
    ])
Copy
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 {
		// data source for gitops clusters mapped to a project level env
		_, err := platform.LookupEnvironmentClustersMapping(ctx, &platform.LookupEnvironmentClustersMappingArgs{
			Identifier: "mycustomidentifier",
			OrgId:      pulumi.StringRef("orgIdentifer"),
			ProjectId:  pulumi.StringRef("projectIdentifier"),
			EnvId:      "exampleEnvId",
			Clusters: []platform.GetEnvironmentClustersMappingCluster{
				{
					Identifier:      pulumi.StringRef("incluster"),
					Name:            pulumi.StringRef("in-cluster"),
					AgentIdentifier: pulumi.StringRef("account.gitopsagentdev"),
					Scope:           pulumi.StringRef("ACCOUNT"),
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		// data source for two gitops clusters mapped to an account level env
		_, err = platform.LookupEnvironmentClustersMapping(ctx, &platform.LookupEnvironmentClustersMappingArgs{
			Identifier: "mycustomidentifier",
			EnvId:      "env1",
			Clusters: []platform.GetEnvironmentClustersMappingCluster{
				{
					Identifier:      pulumi.StringRef("clusterA"),
					Name:            pulumi.StringRef("cluster-A"),
					AgentIdentifier: pulumi.StringRef("account.gitopsagentprod"),
					Scope:           pulumi.StringRef("ACCOUNT"),
				},
				{
					Identifier:      pulumi.StringRef("clusterB"),
					Name:            pulumi.StringRef("cluster-B"),
					AgentIdentifier: pulumi.StringRef("account.gitopsagentprod"),
					Scope:           pulumi.StringRef("ACCOUNT"),
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Harness = Pulumi.Harness;

return await Deployment.RunAsync(() => 
{
    // data source for gitops clusters mapped to a project level env
    var example = Harness.Platform.GetEnvironmentClustersMapping.Invoke(new()
    {
        Identifier = "mycustomidentifier",
        OrgId = "orgIdentifer",
        ProjectId = "projectIdentifier",
        EnvId = "exampleEnvId",
        Clusters = new[]
        {
            new Harness.Platform.Inputs.GetEnvironmentClustersMappingClusterInputArgs
            {
                Identifier = "incluster",
                Name = "in-cluster",
                AgentIdentifier = "account.gitopsagentdev",
                Scope = "ACCOUNT",
            },
        },
    });

    // data source for two gitops clusters mapped to an account level env
    var example2 = Harness.Platform.GetEnvironmentClustersMapping.Invoke(new()
    {
        Identifier = "mycustomidentifier",
        EnvId = "env1",
        Clusters = new[]
        {
            new Harness.Platform.Inputs.GetEnvironmentClustersMappingClusterInputArgs
            {
                Identifier = "clusterA",
                Name = "cluster-A",
                AgentIdentifier = "account.gitopsagentprod",
                Scope = "ACCOUNT",
            },
            new Harness.Platform.Inputs.GetEnvironmentClustersMappingClusterInputArgs
            {
                Identifier = "clusterB",
                Name = "cluster-B",
                AgentIdentifier = "account.gitopsagentprod",
                Scope = "ACCOUNT",
            },
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.harness.platform.PlatformFunctions;
import com.pulumi.harness.platform.inputs.GetEnvironmentClustersMappingArgs;
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) {
        // data source for gitops clusters mapped to a project level env
        final var example = PlatformFunctions.getEnvironmentClustersMapping(GetEnvironmentClustersMappingArgs.builder()
            .identifier("mycustomidentifier")
            .orgId("orgIdentifer")
            .projectId("projectIdentifier")
            .envId("exampleEnvId")
            .clusters(GetEnvironmentClustersMappingClusterArgs.builder()
                .identifier("incluster")
                .name("in-cluster")
                .agentIdentifier("account.gitopsagentdev")
                .scope("ACCOUNT")
                .build())
            .build());

        // data source for two gitops clusters mapped to an account level env
        final var example2 = PlatformFunctions.getEnvironmentClustersMapping(GetEnvironmentClustersMappingArgs.builder()
            .identifier("mycustomidentifier")
            .envId("env1")
            .clusters(            
                GetEnvironmentClustersMappingClusterArgs.builder()
                    .identifier("clusterA")
                    .name("cluster-A")
                    .agentIdentifier("account.gitopsagentprod")
                    .scope("ACCOUNT")
                    .build(),
                GetEnvironmentClustersMappingClusterArgs.builder()
                    .identifier("clusterB")
                    .name("cluster-B")
                    .agentIdentifier("account.gitopsagentprod")
                    .scope("ACCOUNT")
                    .build())
            .build());

    }
}
Copy
variables:
  # data source for gitops clusters mapped to a project level env
  example:
    fn::invoke:
      function: harness:platform:getEnvironmentClustersMapping
      arguments:
        identifier: mycustomidentifier
        orgId: orgIdentifer
        projectId: projectIdentifier
        envId: exampleEnvId
        clusters:
          - identifier: incluster
            name: in-cluster
            agentIdentifier: account.gitopsagentdev
            scope: ACCOUNT
  # data source for two gitops clusters mapped to an account level env
  example2:
    fn::invoke:
      function: harness:platform:getEnvironmentClustersMapping
      arguments:
        identifier: mycustomidentifier
        envId: env1
        clusters:
          - identifier: clusterA
            name: cluster-A
            agentIdentifier: account.gitopsagentprod
            scope: ACCOUNT
          - identifier: clusterB
            name: cluster-B
            agentIdentifier: account.gitopsagentprod
            scope: ACCOUNT
Copy

Using getEnvironmentClustersMapping

Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

function getEnvironmentClustersMapping(args: GetEnvironmentClustersMappingArgs, opts?: InvokeOptions): Promise<GetEnvironmentClustersMappingResult>
function getEnvironmentClustersMappingOutput(args: GetEnvironmentClustersMappingOutputArgs, opts?: InvokeOptions): Output<GetEnvironmentClustersMappingResult>
Copy
def get_environment_clusters_mapping(clusters: Optional[Sequence[GetEnvironmentClustersMappingCluster]] = None,
                                     env_id: Optional[str] = None,
                                     identifier: Optional[str] = None,
                                     org_id: Optional[str] = None,
                                     project_id: Optional[str] = None,
                                     opts: Optional[InvokeOptions] = None) -> GetEnvironmentClustersMappingResult
def get_environment_clusters_mapping_output(clusters: Optional[pulumi.Input[Sequence[pulumi.Input[GetEnvironmentClustersMappingClusterArgs]]]] = None,
                                     env_id: Optional[pulumi.Input[str]] = None,
                                     identifier: Optional[pulumi.Input[str]] = None,
                                     org_id: Optional[pulumi.Input[str]] = None,
                                     project_id: Optional[pulumi.Input[str]] = None,
                                     opts: Optional[InvokeOptions] = None) -> Output[GetEnvironmentClustersMappingResult]
Copy
func LookupEnvironmentClustersMapping(ctx *Context, args *LookupEnvironmentClustersMappingArgs, opts ...InvokeOption) (*LookupEnvironmentClustersMappingResult, error)
func LookupEnvironmentClustersMappingOutput(ctx *Context, args *LookupEnvironmentClustersMappingOutputArgs, opts ...InvokeOption) LookupEnvironmentClustersMappingResultOutput
Copy

> Note: This function is named LookupEnvironmentClustersMapping in the Go SDK.

public static class GetEnvironmentClustersMapping 
{
    public static Task<GetEnvironmentClustersMappingResult> InvokeAsync(GetEnvironmentClustersMappingArgs args, InvokeOptions? opts = null)
    public static Output<GetEnvironmentClustersMappingResult> Invoke(GetEnvironmentClustersMappingInvokeArgs args, InvokeOptions? opts = null)
}
Copy
public static CompletableFuture<GetEnvironmentClustersMappingResult> getEnvironmentClustersMapping(GetEnvironmentClustersMappingArgs args, InvokeOptions options)
public static Output<GetEnvironmentClustersMappingResult> getEnvironmentClustersMapping(GetEnvironmentClustersMappingArgs args, InvokeOptions options)
Copy
fn::invoke:
  function: harness:platform/getEnvironmentClustersMapping:getEnvironmentClustersMapping
  arguments:
    # arguments dictionary
Copy

The following arguments are supported:

EnvId This property is required. string
environment identifier.
Identifier This property is required. string
identifier for the cluster mapping(can be given any value).
Clusters List<GetEnvironmentClustersMappingCluster>
list of cluster identifiers and names
OrgId string
org_id of the environment.
ProjectId string
project_id of the environment.
EnvId This property is required. string
environment identifier.
Identifier This property is required. string
identifier for the cluster mapping(can be given any value).
Clusters []GetEnvironmentClustersMappingCluster
list of cluster identifiers and names
OrgId string
org_id of the environment.
ProjectId string
project_id of the environment.
envId This property is required. String
environment identifier.
identifier This property is required. String
identifier for the cluster mapping(can be given any value).
clusters List<GetEnvironmentClustersMappingCluster>
list of cluster identifiers and names
orgId String
org_id of the environment.
projectId String
project_id of the environment.
envId This property is required. string
environment identifier.
identifier This property is required. string
identifier for the cluster mapping(can be given any value).
clusters GetEnvironmentClustersMappingCluster[]
list of cluster identifiers and names
orgId string
org_id of the environment.
projectId string
project_id of the environment.
env_id This property is required. str
environment identifier.
identifier This property is required. str
identifier for the cluster mapping(can be given any value).
clusters Sequence[GetEnvironmentClustersMappingCluster]
list of cluster identifiers and names
org_id str
org_id of the environment.
project_id str
project_id of the environment.
envId This property is required. String
environment identifier.
identifier This property is required. String
identifier for the cluster mapping(can be given any value).
clusters List<Property Map>
list of cluster identifiers and names
orgId String
org_id of the environment.
projectId String
project_id of the environment.

getEnvironmentClustersMapping Result

The following output properties are available:

EnvId string
environment identifier.
Id string
The provider-assigned unique ID for this managed resource.
Identifier string
identifier for the cluster mapping(can be given any value).
Scope string
scope at which the environment exists in harness.
Clusters List<GetEnvironmentClustersMappingCluster>
list of cluster identifiers and names
OrgId string
org_id of the environment.
ProjectId string
project_id of the environment.
EnvId string
environment identifier.
Id string
The provider-assigned unique ID for this managed resource.
Identifier string
identifier for the cluster mapping(can be given any value).
Scope string
scope at which the environment exists in harness.
Clusters []GetEnvironmentClustersMappingCluster
list of cluster identifiers and names
OrgId string
org_id of the environment.
ProjectId string
project_id of the environment.
envId String
environment identifier.
id String
The provider-assigned unique ID for this managed resource.
identifier String
identifier for the cluster mapping(can be given any value).
scope String
scope at which the environment exists in harness.
clusters List<GetEnvironmentClustersMappingCluster>
list of cluster identifiers and names
orgId String
org_id of the environment.
projectId String
project_id of the environment.
envId string
environment identifier.
id string
The provider-assigned unique ID for this managed resource.
identifier string
identifier for the cluster mapping(can be given any value).
scope string
scope at which the environment exists in harness.
clusters GetEnvironmentClustersMappingCluster[]
list of cluster identifiers and names
orgId string
org_id of the environment.
projectId string
project_id of the environment.
env_id str
environment identifier.
id str
The provider-assigned unique ID for this managed resource.
identifier str
identifier for the cluster mapping(can be given any value).
scope str
scope at which the environment exists in harness.
clusters Sequence[GetEnvironmentClustersMappingCluster]
list of cluster identifiers and names
org_id str
org_id of the environment.
project_id str
project_id of the environment.
envId String
environment identifier.
id String
The provider-assigned unique ID for this managed resource.
identifier String
identifier for the cluster mapping(can be given any value).
scope String
scope at which the environment exists in harness.
clusters List<Property Map>
list of cluster identifiers and names
orgId String
org_id of the environment.
projectId String
project_id of the environment.

Supporting Types

GetEnvironmentClustersMappingCluster

AgentIdentifier string
agent identifier of the cluster (include scope prefix)
Identifier string
identifier of the cluster
Name string
name of the cluster
Scope string
scope at which the cluster exists in harness gitops, one of "ACCOUNT", "ORGANIZATION", "PROJECT". Scope of environment to which clusters are being mapped must be lower or equal to in hierarchy than the scope of the cluster
AgentIdentifier string
agent identifier of the cluster (include scope prefix)
Identifier string
identifier of the cluster
Name string
name of the cluster
Scope string
scope at which the cluster exists in harness gitops, one of "ACCOUNT", "ORGANIZATION", "PROJECT". Scope of environment to which clusters are being mapped must be lower or equal to in hierarchy than the scope of the cluster
agentIdentifier String
agent identifier of the cluster (include scope prefix)
identifier String
identifier of the cluster
name String
name of the cluster
scope String
scope at which the cluster exists in harness gitops, one of "ACCOUNT", "ORGANIZATION", "PROJECT". Scope of environment to which clusters are being mapped must be lower or equal to in hierarchy than the scope of the cluster
agentIdentifier string
agent identifier of the cluster (include scope prefix)
identifier string
identifier of the cluster
name string
name of the cluster
scope string
scope at which the cluster exists in harness gitops, one of "ACCOUNT", "ORGANIZATION", "PROJECT". Scope of environment to which clusters are being mapped must be lower or equal to in hierarchy than the scope of the cluster
agent_identifier str
agent identifier of the cluster (include scope prefix)
identifier str
identifier of the cluster
name str
name of the cluster
scope str
scope at which the cluster exists in harness gitops, one of "ACCOUNT", "ORGANIZATION", "PROJECT". Scope of environment to which clusters are being mapped must be lower or equal to in hierarchy than the scope of the cluster
agentIdentifier String
agent identifier of the cluster (include scope prefix)
identifier String
identifier of the cluster
name String
name of the cluster
scope String
scope at which the cluster exists in harness gitops, one of "ACCOUNT", "ORGANIZATION", "PROJECT". Scope of environment to which clusters are being mapped must be lower or equal to in hierarchy than the scope of the cluster

Package Details

Repository
harness pulumi/pulumi-harness
License
Apache-2.0
Notes
This Pulumi package is based on the harness Terraform Provider.