1. Packages
  2. Harness Provider
  3. API Docs
  4. service
  5. DiscoveryAgent
Harness v0.8.4 published on Thursday, Sep 11, 2025 by Pulumi

harness.service.DiscoveryAgent

Explore with Pulumi AI

harness logo
Harness v0.8.4 published on Thursday, Sep 11, 2025 by Pulumi

    Resource for managing a Harness Service Discovery Agent.

    This resource allows you to create, read, update, and delete a Service Discovery Agent in Harness.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as harness from "@pulumi/harness";
    
    const example = new harness.service.DiscoveryAgent("example", {
        name: "ExampleAgent",
        orgIdentifier: "your_org_id",
        projectIdentifier: "your_project_id",
        environmentIdentifier: "your_environment_id",
        infraIdentifier: "your_infra_id",
        configs: [{
            collectorImage: "harness/service-discovery-collector:main-latest",
            logWatcherImage: "harness/chaos-log-watcher:main-latest",
            kubernetes: [{
                namespace: "harness-sd",
            }],
        }],
    });
    
    import pulumi
    import pulumi_harness as harness
    
    example = harness.service.DiscoveryAgent("example",
        name="ExampleAgent",
        org_identifier="your_org_id",
        project_identifier="your_project_id",
        environment_identifier="your_environment_id",
        infra_identifier="your_infra_id",
        configs=[{
            "collector_image": "harness/service-discovery-collector:main-latest",
            "log_watcher_image": "harness/chaos-log-watcher:main-latest",
            "kubernetes": [{
                "namespace": "harness-sd",
            }],
        }])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-harness/sdk/go/harness/service"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := service.NewDiscoveryAgent(ctx, "example", &service.DiscoveryAgentArgs{
    			Name:                  pulumi.String("ExampleAgent"),
    			OrgIdentifier:         pulumi.String("your_org_id"),
    			ProjectIdentifier:     pulumi.String("your_project_id"),
    			EnvironmentIdentifier: pulumi.String("your_environment_id"),
    			InfraIdentifier:       pulumi.String("your_infra_id"),
    			Configs: service.DiscoveryAgentConfigArray{
    				&service.DiscoveryAgentConfigArgs{
    					CollectorImage:  pulumi.String("harness/service-discovery-collector:main-latest"),
    					LogWatcherImage: pulumi.String("harness/chaos-log-watcher:main-latest"),
    					Kubernetes: service.DiscoveryAgentConfigKuberneteArray{
    						&service.DiscoveryAgentConfigKuberneteArgs{
    							Namespace: pulumi.String("harness-sd"),
    						},
    					},
    				},
    			},
    		})
    		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.Service.DiscoveryAgent("example", new()
        {
            Name = "ExampleAgent",
            OrgIdentifier = "your_org_id",
            ProjectIdentifier = "your_project_id",
            EnvironmentIdentifier = "your_environment_id",
            InfraIdentifier = "your_infra_id",
            Configs = new[]
            {
                new Harness.Service.Inputs.DiscoveryAgentConfigArgs
                {
                    CollectorImage = "harness/service-discovery-collector:main-latest",
                    LogWatcherImage = "harness/chaos-log-watcher:main-latest",
                    Kubernetes = new[]
                    {
                        new Harness.Service.Inputs.DiscoveryAgentConfigKuberneteArgs
                        {
                            Namespace = "harness-sd",
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.harness.service.DiscoveryAgent;
    import com.pulumi.harness.service.DiscoveryAgentArgs;
    import com.pulumi.harness.service.inputs.DiscoveryAgentConfigArgs;
    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 DiscoveryAgent("example", DiscoveryAgentArgs.builder()
                .name("ExampleAgent")
                .orgIdentifier("your_org_id")
                .projectIdentifier("your_project_id")
                .environmentIdentifier("your_environment_id")
                .infraIdentifier("your_infra_id")
                .configs(DiscoveryAgentConfigArgs.builder()
                    .collectorImage("harness/service-discovery-collector:main-latest")
                    .logWatcherImage("harness/chaos-log-watcher:main-latest")
                    .kubernetes(DiscoveryAgentConfigKuberneteArgs.builder()
                        .namespace("harness-sd")
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: harness:service:DiscoveryAgent
        properties:
          name: ExampleAgent
          orgIdentifier: your_org_id
          projectIdentifier: your_project_id
          environmentIdentifier: your_environment_id
          infraIdentifier: your_infra_id
          configs:
            - collectorImage: harness/service-discovery-collector:main-latest
              logWatcherImage: harness/chaos-log-watcher:main-latest
              kubernetes:
                - namespace: harness-sd
    

    Additional Examples

    import * as pulumi from "@pulumi/pulumi";
    import * as harness from "@pulumi/harness";
    
    // Create a new service discovery agent with minimal configuration
    const example = new harness.service.DiscoveryAgent("example", {
        name: "example-agent",
        orgIdentifier: orgIdentifier,
        projectIdentifier: projectIdentifier,
        environmentIdentifier: environmentIdentifier,
        infraIdentifier: "example-infra",
        configs: [{
            kubernetes: [{
                namespace: "harness-sd",
            }],
        }],
    });
    // Create a new service discovery agent with node agent enabled
    const nodeAgent = new harness.service.DiscoveryAgent("node_agent", {
        name: "node-agent-example",
        orgIdentifier: orgIdentifier,
        projectIdentifier: projectIdentifier,
        environmentIdentifier: environmentIdentifier,
        infraIdentifier: "node-agent-example",
        configs: [{
            kubernetes: [{
                namespace: "harness-sd",
            }],
            datas: [{
                enableNodeAgent: true,
            }],
        }],
    });
    // Create a new service discovery agent with full configuration
    const fullConfig = new harness.service.DiscoveryAgent("full_config", {
        name: "full-config-example",
        orgIdentifier: orgIdentifier,
        projectIdentifier: projectIdentifier,
        environmentIdentifier: environmentIdentifier,
        infraIdentifier: "full-config-example",
        permanentInstallation: false,
        correlationId: "full-config-correlation-123",
        configs: [{
            collectorImage: "harness/service-discovery-collector:main-latest",
            logWatcherImage: "harness/chaos-log-watcher:main-latest",
            skipSecureVerify: false,
            kubernetes: [{
                namespace: "harness-sd",
                serviceAccount: "harness-sd-sa",
                imagePullPolicy: "IfNotPresent",
                runAsUser: 2000,
                runAsGroup: 2000,
                labels: {
                    app: "service-discovery",
                    env: "dev",
                },
                annotations: {
                    "example.com/annotation": "value",
                },
                nodeSelector: {
                    "kubernetes.io/os": "linux",
                },
                resources: [{
                    limits: {
                        cpu: "500m",
                        memory: "512Mi",
                    },
                    requests: {
                        cpu: "250m",
                        memory: "256Mi",
                    },
                }],
                tolerations: [{
                    key: "key1",
                    operator: "Equal",
                    value: "value1",
                    effect: "NoSchedule",
                }],
            }],
            datas: [{
                enableNodeAgent: true,
                nodeAgentSelector: "node-role.kubernetes.io/worker=",
                enableBatchResources: true,
                enableOrphanedPod: true,
                namespaceSelector: "environment=dev",
                collectionWindowInMin: 15,
                blacklistedNamespaces: [
                    "kube-system",
                    "kube-public",
                ],
                observedNamespaces: [
                    "default",
                    "harness",
                ],
                crons: [{
                    expression: "0/10 * * * *",
                }],
            }],
            mtls: [{
                certPath: "/etc/certs/tls.crt",
                keyPath: "/etc/certs/tls.key",
                secretName: "mtls-secret",
                url: "https://mtls.example.com:8443",
            }],
            proxies: [{
                httpProxy: "http://proxy.example.com:8080",
                httpsProxy: "https://proxy.example.com:8080",
                noProxy: "localhost,127.0.0.1,.svc,.cluster.local",
                url: "https://proxy.example.com",
            }],
        }],
    });
    
    import pulumi
    import pulumi_harness as harness
    
    # Create a new service discovery agent with minimal configuration
    example = harness.service.DiscoveryAgent("example",
        name="example-agent",
        org_identifier=org_identifier,
        project_identifier=project_identifier,
        environment_identifier=environment_identifier,
        infra_identifier="example-infra",
        configs=[{
            "kubernetes": [{
                "namespace": "harness-sd",
            }],
        }])
    # Create a new service discovery agent with node agent enabled
    node_agent = harness.service.DiscoveryAgent("node_agent",
        name="node-agent-example",
        org_identifier=org_identifier,
        project_identifier=project_identifier,
        environment_identifier=environment_identifier,
        infra_identifier="node-agent-example",
        configs=[{
            "kubernetes": [{
                "namespace": "harness-sd",
            }],
            "datas": [{
                "enable_node_agent": True,
            }],
        }])
    # Create a new service discovery agent with full configuration
    full_config = harness.service.DiscoveryAgent("full_config",
        name="full-config-example",
        org_identifier=org_identifier,
        project_identifier=project_identifier,
        environment_identifier=environment_identifier,
        infra_identifier="full-config-example",
        permanent_installation=False,
        correlation_id="full-config-correlation-123",
        configs=[{
            "collector_image": "harness/service-discovery-collector:main-latest",
            "log_watcher_image": "harness/chaos-log-watcher:main-latest",
            "skip_secure_verify": False,
            "kubernetes": [{
                "namespace": "harness-sd",
                "service_account": "harness-sd-sa",
                "image_pull_policy": "IfNotPresent",
                "run_as_user": 2000,
                "run_as_group": 2000,
                "labels": {
                    "app": "service-discovery",
                    "env": "dev",
                },
                "annotations": {
                    "example.com/annotation": "value",
                },
                "node_selector": {
                    "kubernetes.io/os": "linux",
                },
                "resources": [{
                    "limits": {
                        "cpu": "500m",
                        "memory": "512Mi",
                    },
                    "requests": {
                        "cpu": "250m",
                        "memory": "256Mi",
                    },
                }],
                "tolerations": [{
                    "key": "key1",
                    "operator": "Equal",
                    "value": "value1",
                    "effect": "NoSchedule",
                }],
            }],
            "datas": [{
                "enable_node_agent": True,
                "node_agent_selector": "node-role.kubernetes.io/worker=",
                "enable_batch_resources": True,
                "enable_orphaned_pod": True,
                "namespace_selector": "environment=dev",
                "collection_window_in_min": 15,
                "blacklisted_namespaces": [
                    "kube-system",
                    "kube-public",
                ],
                "observed_namespaces": [
                    "default",
                    "harness",
                ],
                "crons": [{
                    "expression": "0/10 * * * *",
                }],
            }],
            "mtls": [{
                "cert_path": "/etc/certs/tls.crt",
                "key_path": "/etc/certs/tls.key",
                "secret_name": "mtls-secret",
                "url": "https://mtls.example.com:8443",
            }],
            "proxies": [{
                "http_proxy": "http://proxy.example.com:8080",
                "https_proxy": "https://proxy.example.com:8080",
                "no_proxy": "localhost,127.0.0.1,.svc,.cluster.local",
                "url": "https://proxy.example.com",
            }],
        }])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-harness/sdk/go/harness/service"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// Create a new service discovery agent with minimal configuration
    		_, err := service.NewDiscoveryAgent(ctx, "example", &service.DiscoveryAgentArgs{
    			Name:                  pulumi.String("example-agent"),
    			OrgIdentifier:         pulumi.Any(orgIdentifier),
    			ProjectIdentifier:     pulumi.Any(projectIdentifier),
    			EnvironmentIdentifier: pulumi.Any(environmentIdentifier),
    			InfraIdentifier:       pulumi.String("example-infra"),
    			Configs: service.DiscoveryAgentConfigArray{
    				&service.DiscoveryAgentConfigArgs{
    					Kubernetes: service.DiscoveryAgentConfigKuberneteArray{
    						&service.DiscoveryAgentConfigKuberneteArgs{
    							Namespace: pulumi.String("harness-sd"),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Create a new service discovery agent with node agent enabled
    		_, err = service.NewDiscoveryAgent(ctx, "node_agent", &service.DiscoveryAgentArgs{
    			Name:                  pulumi.String("node-agent-example"),
    			OrgIdentifier:         pulumi.Any(orgIdentifier),
    			ProjectIdentifier:     pulumi.Any(projectIdentifier),
    			EnvironmentIdentifier: pulumi.Any(environmentIdentifier),
    			InfraIdentifier:       pulumi.String("node-agent-example"),
    			Configs: service.DiscoveryAgentConfigArray{
    				&service.DiscoveryAgentConfigArgs{
    					Kubernetes: service.DiscoveryAgentConfigKuberneteArray{
    						&service.DiscoveryAgentConfigKuberneteArgs{
    							Namespace: pulumi.String("harness-sd"),
    						},
    					},
    					Datas: service.DiscoveryAgentConfigDataArray{
    						&service.DiscoveryAgentConfigDataArgs{
    							EnableNodeAgent: pulumi.Bool(true),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Create a new service discovery agent with full configuration
    		_, err = service.NewDiscoveryAgent(ctx, "full_config", &service.DiscoveryAgentArgs{
    			Name:                  pulumi.String("full-config-example"),
    			OrgIdentifier:         pulumi.Any(orgIdentifier),
    			ProjectIdentifier:     pulumi.Any(projectIdentifier),
    			EnvironmentIdentifier: pulumi.Any(environmentIdentifier),
    			InfraIdentifier:       pulumi.String("full-config-example"),
    			PermanentInstallation: pulumi.Bool(false),
    			CorrelationId:         pulumi.String("full-config-correlation-123"),
    			Configs: service.DiscoveryAgentConfigArray{
    				&service.DiscoveryAgentConfigArgs{
    					CollectorImage:   pulumi.String("harness/service-discovery-collector:main-latest"),
    					LogWatcherImage:  pulumi.String("harness/chaos-log-watcher:main-latest"),
    					SkipSecureVerify: pulumi.Bool(false),
    					Kubernetes: service.DiscoveryAgentConfigKuberneteArray{
    						&service.DiscoveryAgentConfigKuberneteArgs{
    							Namespace:       pulumi.String("harness-sd"),
    							ServiceAccount:  pulumi.String("harness-sd-sa"),
    							ImagePullPolicy: pulumi.String("IfNotPresent"),
    							RunAsUser:       pulumi.Int(2000),
    							RunAsGroup:      pulumi.Int(2000),
    							Labels: pulumi.StringMap{
    								"app": pulumi.String("service-discovery"),
    								"env": pulumi.String("dev"),
    							},
    							Annotations: pulumi.StringMap{
    								"example.com/annotation": pulumi.String("value"),
    							},
    							NodeSelector: pulumi.StringMap{
    								"kubernetes.io/os": pulumi.String("linux"),
    							},
    							Resources: service.DiscoveryAgentConfigKuberneteResourceArray{
    								&service.DiscoveryAgentConfigKuberneteResourceArgs{
    									Limits: service.DiscoveryAgentConfigKuberneteResourceLimitArray{
    										Cpu:    "500m",
    										Memory: "512Mi",
    									},
    									Requests: service.DiscoveryAgentConfigKuberneteResourceRequestArray{
    										Cpu:    "250m",
    										Memory: "256Mi",
    									},
    								},
    							},
    							Tolerations: service.DiscoveryAgentConfigKuberneteTolerationArray{
    								&service.DiscoveryAgentConfigKuberneteTolerationArgs{
    									Key:      pulumi.String("key1"),
    									Operator: pulumi.String("Equal"),
    									Value:    pulumi.String("value1"),
    									Effect:   pulumi.String("NoSchedule"),
    								},
    							},
    						},
    					},
    					Datas: service.DiscoveryAgentConfigDataArray{
    						&service.DiscoveryAgentConfigDataArgs{
    							EnableNodeAgent:       pulumi.Bool(true),
    							NodeAgentSelector:     pulumi.String("node-role.kubernetes.io/worker="),
    							EnableBatchResources:  pulumi.Bool(true),
    							EnableOrphanedPod:     pulumi.Bool(true),
    							NamespaceSelector:     pulumi.String("environment=dev"),
    							CollectionWindowInMin: pulumi.Int(15),
    							BlacklistedNamespaces: pulumi.StringArray{
    								pulumi.String("kube-system"),
    								pulumi.String("kube-public"),
    							},
    							ObservedNamespaces: pulumi.StringArray{
    								pulumi.String("default"),
    								pulumi.String("harness"),
    							},
    							Crons: service.DiscoveryAgentConfigDataCronArray{
    								&service.DiscoveryAgentConfigDataCronArgs{
    									Expression: pulumi.String("0/10 * * * *"),
    								},
    							},
    						},
    					},
    					Mtls: service.DiscoveryAgentConfigMtlArray{
    						&service.DiscoveryAgentConfigMtlArgs{
    							CertPath:   pulumi.String("/etc/certs/tls.crt"),
    							KeyPath:    pulumi.String("/etc/certs/tls.key"),
    							SecretName: pulumi.String("mtls-secret"),
    							Url:        pulumi.String("https://mtls.example.com:8443"),
    						},
    					},
    					Proxies: service.DiscoveryAgentConfigProxyArray{
    						&service.DiscoveryAgentConfigProxyArgs{
    							HttpProxy:  pulumi.String("http://proxy.example.com:8080"),
    							HttpsProxy: pulumi.String("https://proxy.example.com:8080"),
    							NoProxy:    pulumi.String("localhost,127.0.0.1,.svc,.cluster.local"),
    							Url:        pulumi.String("https://proxy.example.com"),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Harness = Pulumi.Harness;
    
    return await Deployment.RunAsync(() => 
    {
        // Create a new service discovery agent with minimal configuration
        var example = new Harness.Service.DiscoveryAgent("example", new()
        {
            Name = "example-agent",
            OrgIdentifier = orgIdentifier,
            ProjectIdentifier = projectIdentifier,
            EnvironmentIdentifier = environmentIdentifier,
            InfraIdentifier = "example-infra",
            Configs = new[]
            {
                new Harness.Service.Inputs.DiscoveryAgentConfigArgs
                {
                    Kubernetes = new[]
                    {
                        new Harness.Service.Inputs.DiscoveryAgentConfigKuberneteArgs
                        {
                            Namespace = "harness-sd",
                        },
                    },
                },
            },
        });
    
        // Create a new service discovery agent with node agent enabled
        var nodeAgent = new Harness.Service.DiscoveryAgent("node_agent", new()
        {
            Name = "node-agent-example",
            OrgIdentifier = orgIdentifier,
            ProjectIdentifier = projectIdentifier,
            EnvironmentIdentifier = environmentIdentifier,
            InfraIdentifier = "node-agent-example",
            Configs = new[]
            {
                new Harness.Service.Inputs.DiscoveryAgentConfigArgs
                {
                    Kubernetes = new[]
                    {
                        new Harness.Service.Inputs.DiscoveryAgentConfigKuberneteArgs
                        {
                            Namespace = "harness-sd",
                        },
                    },
                    Datas = new[]
                    {
                        new Harness.Service.Inputs.DiscoveryAgentConfigDataArgs
                        {
                            EnableNodeAgent = true,
                        },
                    },
                },
            },
        });
    
        // Create a new service discovery agent with full configuration
        var fullConfig = new Harness.Service.DiscoveryAgent("full_config", new()
        {
            Name = "full-config-example",
            OrgIdentifier = orgIdentifier,
            ProjectIdentifier = projectIdentifier,
            EnvironmentIdentifier = environmentIdentifier,
            InfraIdentifier = "full-config-example",
            PermanentInstallation = false,
            CorrelationId = "full-config-correlation-123",
            Configs = new[]
            {
                new Harness.Service.Inputs.DiscoveryAgentConfigArgs
                {
                    CollectorImage = "harness/service-discovery-collector:main-latest",
                    LogWatcherImage = "harness/chaos-log-watcher:main-latest",
                    SkipSecureVerify = false,
                    Kubernetes = new[]
                    {
                        new Harness.Service.Inputs.DiscoveryAgentConfigKuberneteArgs
                        {
                            Namespace = "harness-sd",
                            ServiceAccount = "harness-sd-sa",
                            ImagePullPolicy = "IfNotPresent",
                            RunAsUser = 2000,
                            RunAsGroup = 2000,
                            Labels = 
                            {
                                { "app", "service-discovery" },
                                { "env", "dev" },
                            },
                            Annotations = 
                            {
                                { "example.com/annotation", "value" },
                            },
                            NodeSelector = 
                            {
                                { "kubernetes.io/os", "linux" },
                            },
                            Resources = new[]
                            {
                                new Harness.Service.Inputs.DiscoveryAgentConfigKuberneteResourceArgs
                                {
                                    Limits = 
                                    {
                                        { "cpu", "500m" },
                                        { "memory", "512Mi" },
                                    },
                                    Requests = 
                                    {
                                        { "cpu", "250m" },
                                        { "memory", "256Mi" },
                                    },
                                },
                            },
                            Tolerations = new[]
                            {
                                new Harness.Service.Inputs.DiscoveryAgentConfigKuberneteTolerationArgs
                                {
                                    Key = "key1",
                                    Operator = "Equal",
                                    Value = "value1",
                                    Effect = "NoSchedule",
                                },
                            },
                        },
                    },
                    Datas = new[]
                    {
                        new Harness.Service.Inputs.DiscoveryAgentConfigDataArgs
                        {
                            EnableNodeAgent = true,
                            NodeAgentSelector = "node-role.kubernetes.io/worker=",
                            EnableBatchResources = true,
                            EnableOrphanedPod = true,
                            NamespaceSelector = "environment=dev",
                            CollectionWindowInMin = 15,
                            BlacklistedNamespaces = new[]
                            {
                                "kube-system",
                                "kube-public",
                            },
                            ObservedNamespaces = new[]
                            {
                                "default",
                                "harness",
                            },
                            Crons = new[]
                            {
                                new Harness.Service.Inputs.DiscoveryAgentConfigDataCronArgs
                                {
                                    Expression = "0/10 * * * *",
                                },
                            },
                        },
                    },
                    Mtls = new[]
                    {
                        new Harness.Service.Inputs.DiscoveryAgentConfigMtlArgs
                        {
                            CertPath = "/etc/certs/tls.crt",
                            KeyPath = "/etc/certs/tls.key",
                            SecretName = "mtls-secret",
                            Url = "https://mtls.example.com:8443",
                        },
                    },
                    Proxies = new[]
                    {
                        new Harness.Service.Inputs.DiscoveryAgentConfigProxyArgs
                        {
                            HttpProxy = "http://proxy.example.com:8080",
                            HttpsProxy = "https://proxy.example.com:8080",
                            NoProxy = "localhost,127.0.0.1,.svc,.cluster.local",
                            Url = "https://proxy.example.com",
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.harness.service.DiscoveryAgent;
    import com.pulumi.harness.service.DiscoveryAgentArgs;
    import com.pulumi.harness.service.inputs.DiscoveryAgentConfigArgs;
    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) {
            // Create a new service discovery agent with minimal configuration
            var example = new DiscoveryAgent("example", DiscoveryAgentArgs.builder()
                .name("example-agent")
                .orgIdentifier(orgIdentifier)
                .projectIdentifier(projectIdentifier)
                .environmentIdentifier(environmentIdentifier)
                .infraIdentifier("example-infra")
                .configs(DiscoveryAgentConfigArgs.builder()
                    .kubernetes(DiscoveryAgentConfigKuberneteArgs.builder()
                        .namespace("harness-sd")
                        .build())
                    .build())
                .build());
    
            // Create a new service discovery agent with node agent enabled
            var nodeAgent = new DiscoveryAgent("nodeAgent", DiscoveryAgentArgs.builder()
                .name("node-agent-example")
                .orgIdentifier(orgIdentifier)
                .projectIdentifier(projectIdentifier)
                .environmentIdentifier(environmentIdentifier)
                .infraIdentifier("node-agent-example")
                .configs(DiscoveryAgentConfigArgs.builder()
                    .kubernetes(DiscoveryAgentConfigKuberneteArgs.builder()
                        .namespace("harness-sd")
                        .build())
                    .datas(DiscoveryAgentConfigDataArgs.builder()
                        .enableNodeAgent(true)
                        .build())
                    .build())
                .build());
    
            // Create a new service discovery agent with full configuration
            var fullConfig = new DiscoveryAgent("fullConfig", DiscoveryAgentArgs.builder()
                .name("full-config-example")
                .orgIdentifier(orgIdentifier)
                .projectIdentifier(projectIdentifier)
                .environmentIdentifier(environmentIdentifier)
                .infraIdentifier("full-config-example")
                .permanentInstallation(false)
                .correlationId("full-config-correlation-123")
                .configs(DiscoveryAgentConfigArgs.builder()
                    .collectorImage("harness/service-discovery-collector:main-latest")
                    .logWatcherImage("harness/chaos-log-watcher:main-latest")
                    .skipSecureVerify(false)
                    .kubernetes(DiscoveryAgentConfigKuberneteArgs.builder()
                        .namespace("harness-sd")
                        .serviceAccount("harness-sd-sa")
                        .imagePullPolicy("IfNotPresent")
                        .runAsUser(2000)
                        .runAsGroup(2000)
                        .labels(Map.ofEntries(
                            Map.entry("app", "service-discovery"),
                            Map.entry("env", "dev")
                        ))
                        .annotations(Map.of("example.com/annotation", "value"))
                        .nodeSelector(Map.of("kubernetes.io/os", "linux"))
                        .resources(DiscoveryAgentConfigKuberneteResourceArgs.builder()
                            .limits(DiscoveryAgentConfigKuberneteResourceLimitArgs.builder()
                                .cpu("500m")
                                .memory("512Mi")
                                .build())
                            .requests(DiscoveryAgentConfigKuberneteResourceRequestArgs.builder()
                                .cpu("250m")
                                .memory("256Mi")
                                .build())
                            .build())
                        .tolerations(DiscoveryAgentConfigKuberneteTolerationArgs.builder()
                            .key("key1")
                            .operator("Equal")
                            .value("value1")
                            .effect("NoSchedule")
                            .build())
                        .build())
                    .datas(DiscoveryAgentConfigDataArgs.builder()
                        .enableNodeAgent(true)
                        .nodeAgentSelector("node-role.kubernetes.io/worker=")
                        .enableBatchResources(true)
                        .enableOrphanedPod(true)
                        .namespaceSelector("environment=dev")
                        .collectionWindowInMin(15)
                        .blacklistedNamespaces(                    
                            "kube-system",
                            "kube-public")
                        .observedNamespaces(                    
                            "default",
                            "harness")
                        .crons(DiscoveryAgentConfigDataCronArgs.builder()
                            .expression("0/10 * * * *")
                            .build())
                        .build())
                    .mtls(DiscoveryAgentConfigMtlArgs.builder()
                        .certPath("/etc/certs/tls.crt")
                        .keyPath("/etc/certs/tls.key")
                        .secretName("mtls-secret")
                        .url("https://mtls.example.com:8443")
                        .build())
                    .proxies(DiscoveryAgentConfigProxyArgs.builder()
                        .httpProxy("http://proxy.example.com:8080")
                        .httpsProxy("https://proxy.example.com:8080")
                        .noProxy("localhost,127.0.0.1,.svc,.cluster.local")
                        .url("https://proxy.example.com")
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      # Create a new service discovery agent with minimal configuration
      example:
        type: harness:service:DiscoveryAgent
        properties:
          name: example-agent
          orgIdentifier: ${orgIdentifier}
          projectIdentifier: ${projectIdentifier}
          environmentIdentifier: ${environmentIdentifier}
          infraIdentifier: example-infra
          configs:
            - kubernetes:
                - namespace: harness-sd
      # Create a new service discovery agent with node agent enabled
      nodeAgent:
        type: harness:service:DiscoveryAgent
        name: node_agent
        properties:
          name: node-agent-example
          orgIdentifier: ${orgIdentifier}
          projectIdentifier: ${projectIdentifier}
          environmentIdentifier: ${environmentIdentifier}
          infraIdentifier: node-agent-example
          configs:
            - kubernetes:
                - namespace: harness-sd
              datas:
                - enableNodeAgent: true
      # Create a new service discovery agent with full configuration
      fullConfig:
        type: harness:service:DiscoveryAgent
        name: full_config
        properties:
          name: full-config-example
          orgIdentifier: ${orgIdentifier}
          projectIdentifier: ${projectIdentifier}
          environmentIdentifier: ${environmentIdentifier}
          infraIdentifier: full-config-example
          permanentInstallation: false
          correlationId: full-config-correlation-123
          configs:
            - collectorImage: harness/service-discovery-collector:main-latest
              logWatcherImage: harness/chaos-log-watcher:main-latest
              skipSecureVerify: false
              kubernetes:
                - namespace: harness-sd
                  serviceAccount: harness-sd-sa
                  imagePullPolicy: IfNotPresent
                  runAsUser: 2000
                  runAsGroup: 2000
                  labels:
                    app: service-discovery
                    env: dev
                  annotations:
                    example.com/annotation: value
                  nodeSelector:
                    kubernetes.io/os: linux
                  resources:
                    - limits:
                        cpu: 500m
                        memory: 512Mi
                      requests:
                        cpu: 250m
                        memory: 256Mi
                  tolerations:
                    - key: key1
                      operator: Equal
                      value: value1
                      effect: NoSchedule
              datas:
                - enableNodeAgent: true
                  nodeAgentSelector: node-role.kubernetes.io/worker=
                  enableBatchResources: true
                  enableOrphanedPod: true
                  namespaceSelector: environment=dev
                  collectionWindowInMin: 15
                  blacklistedNamespaces:
                    - kube-system
                    - kube-public
                  observedNamespaces:
                    - default
                    - harness
                  crons:
                    - expression: 0/10 * * * *
              mtls:
                - certPath: /etc/certs/tls.crt
                  keyPath: /etc/certs/tls.key
                  secretName: mtls-secret
                  url: https://mtls.example.com:8443
              proxies:
                - httpProxy: http://proxy.example.com:8080
                  httpsProxy: https://proxy.example.com:8080
                  noProxy: localhost,127.0.0.1,.svc,.cluster.local
                  url: https://proxy.example.com
    

    Create DiscoveryAgent Resource

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

    Constructor syntax

    new DiscoveryAgent(name: string, args: DiscoveryAgentArgs, opts?: CustomResourceOptions);
    @overload
    def DiscoveryAgent(resource_name: str,
                       args: DiscoveryAgentArgs,
                       opts: Optional[ResourceOptions] = None)
    
    @overload
    def DiscoveryAgent(resource_name: str,
                       opts: Optional[ResourceOptions] = None,
                       configs: Optional[Sequence[DiscoveryAgentConfigArgs]] = None,
                       environment_identifier: Optional[str] = None,
                       infra_identifier: Optional[str] = None,
                       correlation_id: Optional[str] = None,
                       installation_type: Optional[str] = None,
                       name: Optional[str] = None,
                       org_identifier: Optional[str] = None,
                       permanent_installation: Optional[bool] = None,
                       project_identifier: Optional[str] = None,
                       webhook_url: Optional[str] = None)
    func NewDiscoveryAgent(ctx *Context, name string, args DiscoveryAgentArgs, opts ...ResourceOption) (*DiscoveryAgent, error)
    public DiscoveryAgent(string name, DiscoveryAgentArgs args, CustomResourceOptions? opts = null)
    public DiscoveryAgent(String name, DiscoveryAgentArgs args)
    public DiscoveryAgent(String name, DiscoveryAgentArgs args, CustomResourceOptions options)
    
    type: harness:service:DiscoveryAgent
    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 DiscoveryAgentArgs
    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 DiscoveryAgentArgs
    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 DiscoveryAgentArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args DiscoveryAgentArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args DiscoveryAgentArgs
    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 discoveryAgentResource = new Harness.Service.DiscoveryAgent("discoveryAgentResource", new()
    {
        Configs = new[]
        {
            new Harness.Service.Inputs.DiscoveryAgentConfigArgs
            {
                Kubernetes = new[]
                {
                    new Harness.Service.Inputs.DiscoveryAgentConfigKuberneteArgs
                    {
                        Namespace = "string",
                        Annotations = 
                        {
                            { "string", "string" },
                        },
                        DisableNamespaceCreation = false,
                        ImagePullPolicy = "string",
                        Labels = 
                        {
                            { "string", "string" },
                        },
                        Namespaced = false,
                        NodeSelector = 
                        {
                            { "string", "string" },
                        },
                        Resources = new[]
                        {
                            new Harness.Service.Inputs.DiscoveryAgentConfigKuberneteResourceArgs
                            {
                                Limits = new[]
                                {
                                    new Harness.Service.Inputs.DiscoveryAgentConfigKuberneteResourceLimitArgs
                                    {
                                        Cpu = "string",
                                        Memory = "string",
                                    },
                                },
                                Requests = new[]
                                {
                                    new Harness.Service.Inputs.DiscoveryAgentConfigKuberneteResourceRequestArgs
                                    {
                                        Cpu = "string",
                                        Memory = "string",
                                    },
                                },
                            },
                        },
                        RunAsGroup = 0,
                        RunAsUser = 0,
                        ServiceAccount = "string",
                        Tolerations = new[]
                        {
                            new Harness.Service.Inputs.DiscoveryAgentConfigKuberneteTolerationArgs
                            {
                                Effect = "string",
                                Key = "string",
                                Operator = "string",
                                TolerationSeconds = 0,
                                Value = "string",
                            },
                        },
                    },
                },
                CollectorImage = "string",
                Datas = new[]
                {
                    new Harness.Service.Inputs.DiscoveryAgentConfigDataArgs
                    {
                        BlacklistedNamespaces = new[]
                        {
                            "string",
                        },
                        CollectionWindowInMin = 0,
                        Crons = new[]
                        {
                            new Harness.Service.Inputs.DiscoveryAgentConfigDataCronArgs
                            {
                                Expression = "string",
                            },
                        },
                        EnableBatchResources = false,
                        EnableNodeAgent = false,
                        EnableOrphanedPod = false,
                        NamespaceSelector = "string",
                        NodeAgentSelector = "string",
                        ObservedNamespaces = new[]
                        {
                            "string",
                        },
                    },
                },
                ImagePullSecrets = new[]
                {
                    "string",
                },
                LogWatcherImage = "string",
                Mtls = new[]
                {
                    new Harness.Service.Inputs.DiscoveryAgentConfigMtlArgs
                    {
                        CertPath = "string",
                        KeyPath = "string",
                        SecretName = "string",
                        Url = "string",
                    },
                },
                Proxies = new[]
                {
                    new Harness.Service.Inputs.DiscoveryAgentConfigProxyArgs
                    {
                        HttpProxy = "string",
                        HttpsProxy = "string",
                        NoProxy = "string",
                        Url = "string",
                    },
                },
                SkipSecureVerify = false,
            },
        },
        EnvironmentIdentifier = "string",
        InfraIdentifier = "string",
        CorrelationId = "string",
        InstallationType = "string",
        Name = "string",
        OrgIdentifier = "string",
        PermanentInstallation = false,
        ProjectIdentifier = "string",
        WebhookUrl = "string",
    });
    
    example, err := service.NewDiscoveryAgent(ctx, "discoveryAgentResource", &service.DiscoveryAgentArgs{
    	Configs: service.DiscoveryAgentConfigArray{
    		&service.DiscoveryAgentConfigArgs{
    			Kubernetes: service.DiscoveryAgentConfigKuberneteArray{
    				&service.DiscoveryAgentConfigKuberneteArgs{
    					Namespace: pulumi.String("string"),
    					Annotations: pulumi.StringMap{
    						"string": pulumi.String("string"),
    					},
    					DisableNamespaceCreation: pulumi.Bool(false),
    					ImagePullPolicy:          pulumi.String("string"),
    					Labels: pulumi.StringMap{
    						"string": pulumi.String("string"),
    					},
    					Namespaced: pulumi.Bool(false),
    					NodeSelector: pulumi.StringMap{
    						"string": pulumi.String("string"),
    					},
    					Resources: service.DiscoveryAgentConfigKuberneteResourceArray{
    						&service.DiscoveryAgentConfigKuberneteResourceArgs{
    							Limits: service.DiscoveryAgentConfigKuberneteResourceLimitArray{
    								&service.DiscoveryAgentConfigKuberneteResourceLimitArgs{
    									Cpu:    pulumi.String("string"),
    									Memory: pulumi.String("string"),
    								},
    							},
    							Requests: service.DiscoveryAgentConfigKuberneteResourceRequestArray{
    								&service.DiscoveryAgentConfigKuberneteResourceRequestArgs{
    									Cpu:    pulumi.String("string"),
    									Memory: pulumi.String("string"),
    								},
    							},
    						},
    					},
    					RunAsGroup:     pulumi.Int(0),
    					RunAsUser:      pulumi.Int(0),
    					ServiceAccount: pulumi.String("string"),
    					Tolerations: service.DiscoveryAgentConfigKuberneteTolerationArray{
    						&service.DiscoveryAgentConfigKuberneteTolerationArgs{
    							Effect:            pulumi.String("string"),
    							Key:               pulumi.String("string"),
    							Operator:          pulumi.String("string"),
    							TolerationSeconds: pulumi.Int(0),
    							Value:             pulumi.String("string"),
    						},
    					},
    				},
    			},
    			CollectorImage: pulumi.String("string"),
    			Datas: service.DiscoveryAgentConfigDataArray{
    				&service.DiscoveryAgentConfigDataArgs{
    					BlacklistedNamespaces: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					CollectionWindowInMin: pulumi.Int(0),
    					Crons: service.DiscoveryAgentConfigDataCronArray{
    						&service.DiscoveryAgentConfigDataCronArgs{
    							Expression: pulumi.String("string"),
    						},
    					},
    					EnableBatchResources: pulumi.Bool(false),
    					EnableNodeAgent:      pulumi.Bool(false),
    					EnableOrphanedPod:    pulumi.Bool(false),
    					NamespaceSelector:    pulumi.String("string"),
    					NodeAgentSelector:    pulumi.String("string"),
    					ObservedNamespaces: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    				},
    			},
    			ImagePullSecrets: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			LogWatcherImage: pulumi.String("string"),
    			Mtls: service.DiscoveryAgentConfigMtlArray{
    				&service.DiscoveryAgentConfigMtlArgs{
    					CertPath:   pulumi.String("string"),
    					KeyPath:    pulumi.String("string"),
    					SecretName: pulumi.String("string"),
    					Url:        pulumi.String("string"),
    				},
    			},
    			Proxies: service.DiscoveryAgentConfigProxyArray{
    				&service.DiscoveryAgentConfigProxyArgs{
    					HttpProxy:  pulumi.String("string"),
    					HttpsProxy: pulumi.String("string"),
    					NoProxy:    pulumi.String("string"),
    					Url:        pulumi.String("string"),
    				},
    			},
    			SkipSecureVerify: pulumi.Bool(false),
    		},
    	},
    	EnvironmentIdentifier: pulumi.String("string"),
    	InfraIdentifier:       pulumi.String("string"),
    	CorrelationId:         pulumi.String("string"),
    	InstallationType:      pulumi.String("string"),
    	Name:                  pulumi.String("string"),
    	OrgIdentifier:         pulumi.String("string"),
    	PermanentInstallation: pulumi.Bool(false),
    	ProjectIdentifier:     pulumi.String("string"),
    	WebhookUrl:            pulumi.String("string"),
    })
    
    var discoveryAgentResource = new DiscoveryAgent("discoveryAgentResource", DiscoveryAgentArgs.builder()
        .configs(DiscoveryAgentConfigArgs.builder()
            .kubernetes(DiscoveryAgentConfigKuberneteArgs.builder()
                .namespace("string")
                .annotations(Map.of("string", "string"))
                .disableNamespaceCreation(false)
                .imagePullPolicy("string")
                .labels(Map.of("string", "string"))
                .namespaced(false)
                .nodeSelector(Map.of("string", "string"))
                .resources(DiscoveryAgentConfigKuberneteResourceArgs.builder()
                    .limits(DiscoveryAgentConfigKuberneteResourceLimitArgs.builder()
                        .cpu("string")
                        .memory("string")
                        .build())
                    .requests(DiscoveryAgentConfigKuberneteResourceRequestArgs.builder()
                        .cpu("string")
                        .memory("string")
                        .build())
                    .build())
                .runAsGroup(0)
                .runAsUser(0)
                .serviceAccount("string")
                .tolerations(DiscoveryAgentConfigKuberneteTolerationArgs.builder()
                    .effect("string")
                    .key("string")
                    .operator("string")
                    .tolerationSeconds(0)
                    .value("string")
                    .build())
                .build())
            .collectorImage("string")
            .datas(DiscoveryAgentConfigDataArgs.builder()
                .blacklistedNamespaces("string")
                .collectionWindowInMin(0)
                .crons(DiscoveryAgentConfigDataCronArgs.builder()
                    .expression("string")
                    .build())
                .enableBatchResources(false)
                .enableNodeAgent(false)
                .enableOrphanedPod(false)
                .namespaceSelector("string")
                .nodeAgentSelector("string")
                .observedNamespaces("string")
                .build())
            .imagePullSecrets("string")
            .logWatcherImage("string")
            .mtls(DiscoveryAgentConfigMtlArgs.builder()
                .certPath("string")
                .keyPath("string")
                .secretName("string")
                .url("string")
                .build())
            .proxies(DiscoveryAgentConfigProxyArgs.builder()
                .httpProxy("string")
                .httpsProxy("string")
                .noProxy("string")
                .url("string")
                .build())
            .skipSecureVerify(false)
            .build())
        .environmentIdentifier("string")
        .infraIdentifier("string")
        .correlationId("string")
        .installationType("string")
        .name("string")
        .orgIdentifier("string")
        .permanentInstallation(false)
        .projectIdentifier("string")
        .webhookUrl("string")
        .build());
    
    discovery_agent_resource = harness.service.DiscoveryAgent("discoveryAgentResource",
        configs=[{
            "kubernetes": [{
                "namespace": "string",
                "annotations": {
                    "string": "string",
                },
                "disable_namespace_creation": False,
                "image_pull_policy": "string",
                "labels": {
                    "string": "string",
                },
                "namespaced": False,
                "node_selector": {
                    "string": "string",
                },
                "resources": [{
                    "limits": [{
                        "cpu": "string",
                        "memory": "string",
                    }],
                    "requests": [{
                        "cpu": "string",
                        "memory": "string",
                    }],
                }],
                "run_as_group": 0,
                "run_as_user": 0,
                "service_account": "string",
                "tolerations": [{
                    "effect": "string",
                    "key": "string",
                    "operator": "string",
                    "toleration_seconds": 0,
                    "value": "string",
                }],
            }],
            "collector_image": "string",
            "datas": [{
                "blacklisted_namespaces": ["string"],
                "collection_window_in_min": 0,
                "crons": [{
                    "expression": "string",
                }],
                "enable_batch_resources": False,
                "enable_node_agent": False,
                "enable_orphaned_pod": False,
                "namespace_selector": "string",
                "node_agent_selector": "string",
                "observed_namespaces": ["string"],
            }],
            "image_pull_secrets": ["string"],
            "log_watcher_image": "string",
            "mtls": [{
                "cert_path": "string",
                "key_path": "string",
                "secret_name": "string",
                "url": "string",
            }],
            "proxies": [{
                "http_proxy": "string",
                "https_proxy": "string",
                "no_proxy": "string",
                "url": "string",
            }],
            "skip_secure_verify": False,
        }],
        environment_identifier="string",
        infra_identifier="string",
        correlation_id="string",
        installation_type="string",
        name="string",
        org_identifier="string",
        permanent_installation=False,
        project_identifier="string",
        webhook_url="string")
    
    const discoveryAgentResource = new harness.service.DiscoveryAgent("discoveryAgentResource", {
        configs: [{
            kubernetes: [{
                namespace: "string",
                annotations: {
                    string: "string",
                },
                disableNamespaceCreation: false,
                imagePullPolicy: "string",
                labels: {
                    string: "string",
                },
                namespaced: false,
                nodeSelector: {
                    string: "string",
                },
                resources: [{
                    limits: [{
                        cpu: "string",
                        memory: "string",
                    }],
                    requests: [{
                        cpu: "string",
                        memory: "string",
                    }],
                }],
                runAsGroup: 0,
                runAsUser: 0,
                serviceAccount: "string",
                tolerations: [{
                    effect: "string",
                    key: "string",
                    operator: "string",
                    tolerationSeconds: 0,
                    value: "string",
                }],
            }],
            collectorImage: "string",
            datas: [{
                blacklistedNamespaces: ["string"],
                collectionWindowInMin: 0,
                crons: [{
                    expression: "string",
                }],
                enableBatchResources: false,
                enableNodeAgent: false,
                enableOrphanedPod: false,
                namespaceSelector: "string",
                nodeAgentSelector: "string",
                observedNamespaces: ["string"],
            }],
            imagePullSecrets: ["string"],
            logWatcherImage: "string",
            mtls: [{
                certPath: "string",
                keyPath: "string",
                secretName: "string",
                url: "string",
            }],
            proxies: [{
                httpProxy: "string",
                httpsProxy: "string",
                noProxy: "string",
                url: "string",
            }],
            skipSecureVerify: false,
        }],
        environmentIdentifier: "string",
        infraIdentifier: "string",
        correlationId: "string",
        installationType: "string",
        name: "string",
        orgIdentifier: "string",
        permanentInstallation: false,
        projectIdentifier: "string",
        webhookUrl: "string",
    });
    
    type: harness:service:DiscoveryAgent
    properties:
        configs:
            - collectorImage: string
              datas:
                - blacklistedNamespaces:
                    - string
                  collectionWindowInMin: 0
                  crons:
                    - expression: string
                  enableBatchResources: false
                  enableNodeAgent: false
                  enableOrphanedPod: false
                  namespaceSelector: string
                  nodeAgentSelector: string
                  observedNamespaces:
                    - string
              imagePullSecrets:
                - string
              kubernetes:
                - annotations:
                    string: string
                  disableNamespaceCreation: false
                  imagePullPolicy: string
                  labels:
                    string: string
                  namespace: string
                  namespaced: false
                  nodeSelector:
                    string: string
                  resources:
                    - limits:
                        - cpu: string
                          memory: string
                      requests:
                        - cpu: string
                          memory: string
                  runAsGroup: 0
                  runAsUser: 0
                  serviceAccount: string
                  tolerations:
                    - effect: string
                      key: string
                      operator: string
                      tolerationSeconds: 0
                      value: string
              logWatcherImage: string
              mtls:
                - certPath: string
                  keyPath: string
                  secretName: string
                  url: string
              proxies:
                - httpProxy: string
                  httpsProxy: string
                  noProxy: string
                  url: string
              skipSecureVerify: false
        correlationId: string
        environmentIdentifier: string
        infraIdentifier: string
        installationType: string
        name: string
        orgIdentifier: string
        permanentInstallation: false
        projectIdentifier: string
        webhookUrl: string
    

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

    Configs List<DiscoveryAgentConfig>
    Configuration for the agent. This is a required field.
    EnvironmentIdentifier string
    The environment identifier of the agent. This is a required field.
    InfraIdentifier string
    The infrastructure identifier of the agent. This is a required field.
    CorrelationId string
    Correlation ID for the agent.
    InstallationType string
    Type of installation for the agent.
    Name string
    The name of the agent. This is a required field.
    OrgIdentifier string
    The organization identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    PermanentInstallation bool
    Whether this is a permanent installation.
    ProjectIdentifier string
    The project identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    WebhookUrl string
    Webhook URL for the agent.
    Configs []DiscoveryAgentConfigArgs
    Configuration for the agent. This is a required field.
    EnvironmentIdentifier string
    The environment identifier of the agent. This is a required field.
    InfraIdentifier string
    The infrastructure identifier of the agent. This is a required field.
    CorrelationId string
    Correlation ID for the agent.
    InstallationType string
    Type of installation for the agent.
    Name string
    The name of the agent. This is a required field.
    OrgIdentifier string
    The organization identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    PermanentInstallation bool
    Whether this is a permanent installation.
    ProjectIdentifier string
    The project identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    WebhookUrl string
    Webhook URL for the agent.
    configs List<DiscoveryAgentConfig>
    Configuration for the agent. This is a required field.
    environmentIdentifier String
    The environment identifier of the agent. This is a required field.
    infraIdentifier String
    The infrastructure identifier of the agent. This is a required field.
    correlationId String
    Correlation ID for the agent.
    installationType String
    Type of installation for the agent.
    name String
    The name of the agent. This is a required field.
    orgIdentifier String
    The organization identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    permanentInstallation Boolean
    Whether this is a permanent installation.
    projectIdentifier String
    The project identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    webhookUrl String
    Webhook URL for the agent.
    configs DiscoveryAgentConfig[]
    Configuration for the agent. This is a required field.
    environmentIdentifier string
    The environment identifier of the agent. This is a required field.
    infraIdentifier string
    The infrastructure identifier of the agent. This is a required field.
    correlationId string
    Correlation ID for the agent.
    installationType string
    Type of installation for the agent.
    name string
    The name of the agent. This is a required field.
    orgIdentifier string
    The organization identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    permanentInstallation boolean
    Whether this is a permanent installation.
    projectIdentifier string
    The project identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    webhookUrl string
    Webhook URL for the agent.
    configs Sequence[DiscoveryAgentConfigArgs]
    Configuration for the agent. This is a required field.
    environment_identifier str
    The environment identifier of the agent. This is a required field.
    infra_identifier str
    The infrastructure identifier of the agent. This is a required field.
    correlation_id str
    Correlation ID for the agent.
    installation_type str
    Type of installation for the agent.
    name str
    The name of the agent. This is a required field.
    org_identifier str
    The organization identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    permanent_installation bool
    Whether this is a permanent installation.
    project_identifier str
    The project identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    webhook_url str
    Webhook URL for the agent.
    configs List<Property Map>
    Configuration for the agent. This is a required field.
    environmentIdentifier String
    The environment identifier of the agent. This is a required field.
    infraIdentifier String
    The infrastructure identifier of the agent. This is a required field.
    correlationId String
    Correlation ID for the agent.
    installationType String
    Type of installation for the agent.
    name String
    The name of the agent. This is a required field.
    orgIdentifier String
    The organization identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    permanentInstallation Boolean
    Whether this is a permanent installation.
    projectIdentifier String
    The project identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    webhookUrl String
    Webhook URL for the agent.

    Outputs

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

    CreatedAt string
    Timestamp when the agent was created.
    CreatedBy string
    User who created the agent.
    Description string
    Description of the agent.
    Id string
    The provider-assigned unique ID for this managed resource.
    Identity string
    The unique identity of the agent.
    InstallationDetails List<DiscoveryAgentInstallationDetail>
    Installation details of the agent.
    NetworkMapCount int
    Number of network maps associated with this agent.
    Removed bool
    Whether the agent has been removed.
    RemovedAt string
    Timestamp when the agent was removed.
    ServiceCount int
    Number of services managed by this agent.
    Tags List<string>
    List of resource tags for the agent.
    UpdatedAt string
    Timestamp when the agent was last updated.
    UpdatedBy string
    User who last updated the agent.
    CreatedAt string
    Timestamp when the agent was created.
    CreatedBy string
    User who created the agent.
    Description string
    Description of the agent.
    Id string
    The provider-assigned unique ID for this managed resource.
    Identity string
    The unique identity of the agent.
    InstallationDetails []DiscoveryAgentInstallationDetail
    Installation details of the agent.
    NetworkMapCount int
    Number of network maps associated with this agent.
    Removed bool
    Whether the agent has been removed.
    RemovedAt string
    Timestamp when the agent was removed.
    ServiceCount int
    Number of services managed by this agent.
    Tags []string
    List of resource tags for the agent.
    UpdatedAt string
    Timestamp when the agent was last updated.
    UpdatedBy string
    User who last updated the agent.
    createdAt String
    Timestamp when the agent was created.
    createdBy String
    User who created the agent.
    description String
    Description of the agent.
    id String
    The provider-assigned unique ID for this managed resource.
    identity String
    The unique identity of the agent.
    installationDetails List<DiscoveryAgentInstallationDetail>
    Installation details of the agent.
    networkMapCount Integer
    Number of network maps associated with this agent.
    removed Boolean
    Whether the agent has been removed.
    removedAt String
    Timestamp when the agent was removed.
    serviceCount Integer
    Number of services managed by this agent.
    tags List<String>
    List of resource tags for the agent.
    updatedAt String
    Timestamp when the agent was last updated.
    updatedBy String
    User who last updated the agent.
    createdAt string
    Timestamp when the agent was created.
    createdBy string
    User who created the agent.
    description string
    Description of the agent.
    id string
    The provider-assigned unique ID for this managed resource.
    identity string
    The unique identity of the agent.
    installationDetails DiscoveryAgentInstallationDetail[]
    Installation details of the agent.
    networkMapCount number
    Number of network maps associated with this agent.
    removed boolean
    Whether the agent has been removed.
    removedAt string
    Timestamp when the agent was removed.
    serviceCount number
    Number of services managed by this agent.
    tags string[]
    List of resource tags for the agent.
    updatedAt string
    Timestamp when the agent was last updated.
    updatedBy string
    User who last updated the agent.
    created_at str
    Timestamp when the agent was created.
    created_by str
    User who created the agent.
    description str
    Description of the agent.
    id str
    The provider-assigned unique ID for this managed resource.
    identity str
    The unique identity of the agent.
    installation_details Sequence[DiscoveryAgentInstallationDetail]
    Installation details of the agent.
    network_map_count int
    Number of network maps associated with this agent.
    removed bool
    Whether the agent has been removed.
    removed_at str
    Timestamp when the agent was removed.
    service_count int
    Number of services managed by this agent.
    tags Sequence[str]
    List of resource tags for the agent.
    updated_at str
    Timestamp when the agent was last updated.
    updated_by str
    User who last updated the agent.
    createdAt String
    Timestamp when the agent was created.
    createdBy String
    User who created the agent.
    description String
    Description of the agent.
    id String
    The provider-assigned unique ID for this managed resource.
    identity String
    The unique identity of the agent.
    installationDetails List<Property Map>
    Installation details of the agent.
    networkMapCount Number
    Number of network maps associated with this agent.
    removed Boolean
    Whether the agent has been removed.
    removedAt String
    Timestamp when the agent was removed.
    serviceCount Number
    Number of services managed by this agent.
    tags List<String>
    List of resource tags for the agent.
    updatedAt String
    Timestamp when the agent was last updated.
    updatedBy String
    User who last updated the agent.

    Look up Existing DiscoveryAgent Resource

    Get an existing DiscoveryAgent 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?: DiscoveryAgentState, opts?: CustomResourceOptions): DiscoveryAgent
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            configs: Optional[Sequence[DiscoveryAgentConfigArgs]] = None,
            correlation_id: Optional[str] = None,
            created_at: Optional[str] = None,
            created_by: Optional[str] = None,
            description: Optional[str] = None,
            environment_identifier: Optional[str] = None,
            identity: Optional[str] = None,
            infra_identifier: Optional[str] = None,
            installation_details: Optional[Sequence[DiscoveryAgentInstallationDetailArgs]] = None,
            installation_type: Optional[str] = None,
            name: Optional[str] = None,
            network_map_count: Optional[int] = None,
            org_identifier: Optional[str] = None,
            permanent_installation: Optional[bool] = None,
            project_identifier: Optional[str] = None,
            removed: Optional[bool] = None,
            removed_at: Optional[str] = None,
            service_count: Optional[int] = None,
            tags: Optional[Sequence[str]] = None,
            updated_at: Optional[str] = None,
            updated_by: Optional[str] = None,
            webhook_url: Optional[str] = None) -> DiscoveryAgent
    func GetDiscoveryAgent(ctx *Context, name string, id IDInput, state *DiscoveryAgentState, opts ...ResourceOption) (*DiscoveryAgent, error)
    public static DiscoveryAgent Get(string name, Input<string> id, DiscoveryAgentState? state, CustomResourceOptions? opts = null)
    public static DiscoveryAgent get(String name, Output<String> id, DiscoveryAgentState state, CustomResourceOptions options)
    resources:  _:    type: harness:service:DiscoveryAgent    get:      id: ${id}
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Configs List<DiscoveryAgentConfig>
    Configuration for the agent. This is a required field.
    CorrelationId string
    Correlation ID for the agent.
    CreatedAt string
    Timestamp when the agent was created.
    CreatedBy string
    User who created the agent.
    Description string
    Description of the agent.
    EnvironmentIdentifier string
    The environment identifier of the agent. This is a required field.
    Identity string
    The unique identity of the agent.
    InfraIdentifier string
    The infrastructure identifier of the agent. This is a required field.
    InstallationDetails List<DiscoveryAgentInstallationDetail>
    Installation details of the agent.
    InstallationType string
    Type of installation for the agent.
    Name string
    The name of the agent. This is a required field.
    NetworkMapCount int
    Number of network maps associated with this agent.
    OrgIdentifier string
    The organization identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    PermanentInstallation bool
    Whether this is a permanent installation.
    ProjectIdentifier string
    The project identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    Removed bool
    Whether the agent has been removed.
    RemovedAt string
    Timestamp when the agent was removed.
    ServiceCount int
    Number of services managed by this agent.
    Tags List<string>
    List of resource tags for the agent.
    UpdatedAt string
    Timestamp when the agent was last updated.
    UpdatedBy string
    User who last updated the agent.
    WebhookUrl string
    Webhook URL for the agent.
    Configs []DiscoveryAgentConfigArgs
    Configuration for the agent. This is a required field.
    CorrelationId string
    Correlation ID for the agent.
    CreatedAt string
    Timestamp when the agent was created.
    CreatedBy string
    User who created the agent.
    Description string
    Description of the agent.
    EnvironmentIdentifier string
    The environment identifier of the agent. This is a required field.
    Identity string
    The unique identity of the agent.
    InfraIdentifier string
    The infrastructure identifier of the agent. This is a required field.
    InstallationDetails []DiscoveryAgentInstallationDetailArgs
    Installation details of the agent.
    InstallationType string
    Type of installation for the agent.
    Name string
    The name of the agent. This is a required field.
    NetworkMapCount int
    Number of network maps associated with this agent.
    OrgIdentifier string
    The organization identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    PermanentInstallation bool
    Whether this is a permanent installation.
    ProjectIdentifier string
    The project identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    Removed bool
    Whether the agent has been removed.
    RemovedAt string
    Timestamp when the agent was removed.
    ServiceCount int
    Number of services managed by this agent.
    Tags []string
    List of resource tags for the agent.
    UpdatedAt string
    Timestamp when the agent was last updated.
    UpdatedBy string
    User who last updated the agent.
    WebhookUrl string
    Webhook URL for the agent.
    configs List<DiscoveryAgentConfig>
    Configuration for the agent. This is a required field.
    correlationId String
    Correlation ID for the agent.
    createdAt String
    Timestamp when the agent was created.
    createdBy String
    User who created the agent.
    description String
    Description of the agent.
    environmentIdentifier String
    The environment identifier of the agent. This is a required field.
    identity String
    The unique identity of the agent.
    infraIdentifier String
    The infrastructure identifier of the agent. This is a required field.
    installationDetails List<DiscoveryAgentInstallationDetail>
    Installation details of the agent.
    installationType String
    Type of installation for the agent.
    name String
    The name of the agent. This is a required field.
    networkMapCount Integer
    Number of network maps associated with this agent.
    orgIdentifier String
    The organization identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    permanentInstallation Boolean
    Whether this is a permanent installation.
    projectIdentifier String
    The project identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    removed Boolean
    Whether the agent has been removed.
    removedAt String
    Timestamp when the agent was removed.
    serviceCount Integer
    Number of services managed by this agent.
    tags List<String>
    List of resource tags for the agent.
    updatedAt String
    Timestamp when the agent was last updated.
    updatedBy String
    User who last updated the agent.
    webhookUrl String
    Webhook URL for the agent.
    configs DiscoveryAgentConfig[]
    Configuration for the agent. This is a required field.
    correlationId string
    Correlation ID for the agent.
    createdAt string
    Timestamp when the agent was created.
    createdBy string
    User who created the agent.
    description string
    Description of the agent.
    environmentIdentifier string
    The environment identifier of the agent. This is a required field.
    identity string
    The unique identity of the agent.
    infraIdentifier string
    The infrastructure identifier of the agent. This is a required field.
    installationDetails DiscoveryAgentInstallationDetail[]
    Installation details of the agent.
    installationType string
    Type of installation for the agent.
    name string
    The name of the agent. This is a required field.
    networkMapCount number
    Number of network maps associated with this agent.
    orgIdentifier string
    The organization identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    permanentInstallation boolean
    Whether this is a permanent installation.
    projectIdentifier string
    The project identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    removed boolean
    Whether the agent has been removed.
    removedAt string
    Timestamp when the agent was removed.
    serviceCount number
    Number of services managed by this agent.
    tags string[]
    List of resource tags for the agent.
    updatedAt string
    Timestamp when the agent was last updated.
    updatedBy string
    User who last updated the agent.
    webhookUrl string
    Webhook URL for the agent.
    configs Sequence[DiscoveryAgentConfigArgs]
    Configuration for the agent. This is a required field.
    correlation_id str
    Correlation ID for the agent.
    created_at str
    Timestamp when the agent was created.
    created_by str
    User who created the agent.
    description str
    Description of the agent.
    environment_identifier str
    The environment identifier of the agent. This is a required field.
    identity str
    The unique identity of the agent.
    infra_identifier str
    The infrastructure identifier of the agent. This is a required field.
    installation_details Sequence[DiscoveryAgentInstallationDetailArgs]
    Installation details of the agent.
    installation_type str
    Type of installation for the agent.
    name str
    The name of the agent. This is a required field.
    network_map_count int
    Number of network maps associated with this agent.
    org_identifier str
    The organization identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    permanent_installation bool
    Whether this is a permanent installation.
    project_identifier str
    The project identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    removed bool
    Whether the agent has been removed.
    removed_at str
    Timestamp when the agent was removed.
    service_count int
    Number of services managed by this agent.
    tags Sequence[str]
    List of resource tags for the agent.
    updated_at str
    Timestamp when the agent was last updated.
    updated_by str
    User who last updated the agent.
    webhook_url str
    Webhook URL for the agent.
    configs List<Property Map>
    Configuration for the agent. This is a required field.
    correlationId String
    Correlation ID for the agent.
    createdAt String
    Timestamp when the agent was created.
    createdBy String
    User who created the agent.
    description String
    Description of the agent.
    environmentIdentifier String
    The environment identifier of the agent. This is a required field.
    identity String
    The unique identity of the agent.
    infraIdentifier String
    The infrastructure identifier of the agent. This is a required field.
    installationDetails List<Property Map>
    Installation details of the agent.
    installationType String
    Type of installation for the agent.
    name String
    The name of the agent. This is a required field.
    networkMapCount Number
    Number of network maps associated with this agent.
    orgIdentifier String
    The organization identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    permanentInstallation Boolean
    Whether this is a permanent installation.
    projectIdentifier String
    The project identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
    removed Boolean
    Whether the agent has been removed.
    removedAt String
    Timestamp when the agent was removed.
    serviceCount Number
    Number of services managed by this agent.
    tags List<String>
    List of resource tags for the agent.
    updatedAt String
    Timestamp when the agent was last updated.
    updatedBy String
    User who last updated the agent.
    webhookUrl String
    Webhook URL for the agent.

    Supporting Types

    DiscoveryAgentConfig, DiscoveryAgentConfigArgs

    Kubernetes List<DiscoveryAgentConfigKubernete>
    Kubernetes-specific configuration.
    CollectorImage string
    Docker image for the collector.
    Datas List<DiscoveryAgentConfigData>
    Data collection configuration.
    ImagePullSecrets List<string>
    List of image pull secrets.
    LogWatcherImage string
    Docker image for the log watcher.
    Mtls List<DiscoveryAgentConfigMtl>
    mTLS configuration.
    Proxies List<DiscoveryAgentConfigProxy>
    Proxy configuration.
    SkipSecureVerify bool
    Whether to skip TLS verification.
    Kubernetes []DiscoveryAgentConfigKubernete
    Kubernetes-specific configuration.
    CollectorImage string
    Docker image for the collector.
    Datas []DiscoveryAgentConfigData
    Data collection configuration.
    ImagePullSecrets []string
    List of image pull secrets.
    LogWatcherImage string
    Docker image for the log watcher.
    Mtls []DiscoveryAgentConfigMtl
    mTLS configuration.
    Proxies []DiscoveryAgentConfigProxy
    Proxy configuration.
    SkipSecureVerify bool
    Whether to skip TLS verification.
    kubernetes List<DiscoveryAgentConfigKubernete>
    Kubernetes-specific configuration.
    collectorImage String
    Docker image for the collector.
    datas List<DiscoveryAgentConfigData>
    Data collection configuration.
    imagePullSecrets List<String>
    List of image pull secrets.
    logWatcherImage String
    Docker image for the log watcher.
    mtls List<DiscoveryAgentConfigMtl>
    mTLS configuration.
    proxies List<DiscoveryAgentConfigProxy>
    Proxy configuration.
    skipSecureVerify Boolean
    Whether to skip TLS verification.
    kubernetes DiscoveryAgentConfigKubernete[]
    Kubernetes-specific configuration.
    collectorImage string
    Docker image for the collector.
    datas DiscoveryAgentConfigData[]
    Data collection configuration.
    imagePullSecrets string[]
    List of image pull secrets.
    logWatcherImage string
    Docker image for the log watcher.
    mtls DiscoveryAgentConfigMtl[]
    mTLS configuration.
    proxies DiscoveryAgentConfigProxy[]
    Proxy configuration.
    skipSecureVerify boolean
    Whether to skip TLS verification.
    kubernetes Sequence[DiscoveryAgentConfigKubernete]
    Kubernetes-specific configuration.
    collector_image str
    Docker image for the collector.
    datas Sequence[DiscoveryAgentConfigData]
    Data collection configuration.
    image_pull_secrets Sequence[str]
    List of image pull secrets.
    log_watcher_image str
    Docker image for the log watcher.
    mtls Sequence[DiscoveryAgentConfigMtl]
    mTLS configuration.
    proxies Sequence[DiscoveryAgentConfigProxy]
    Proxy configuration.
    skip_secure_verify bool
    Whether to skip TLS verification.
    kubernetes List<Property Map>
    Kubernetes-specific configuration.
    collectorImage String
    Docker image for the collector.
    datas List<Property Map>
    Data collection configuration.
    imagePullSecrets List<String>
    List of image pull secrets.
    logWatcherImage String
    Docker image for the log watcher.
    mtls List<Property Map>
    mTLS configuration.
    proxies List<Property Map>
    Proxy configuration.
    skipSecureVerify Boolean
    Whether to skip TLS verification.

    DiscoveryAgentConfigData, DiscoveryAgentConfigDataArgs

    BlacklistedNamespaces List<string>
    List of namespaces to exclude from discovery.
    CollectionWindowInMin int
    Collection window in minutes.
    Crons List<DiscoveryAgentConfigDataCron>
    Cron schedule for data collection.
    EnableBatchResources bool
    Whether to enable batch resources.
    EnableNodeAgent bool
    Whether to enable node agent.
    EnableOrphanedPod bool
    Whether to enable orphaned pod detection.
    NamespaceSelector string
    Namespace selector for the agent.
    NodeAgentSelector string
    Node selector for the node agent.
    ObservedNamespaces List<string>
    List of namespaces to observe.
    BlacklistedNamespaces []string
    List of namespaces to exclude from discovery.
    CollectionWindowInMin int
    Collection window in minutes.
    Crons []DiscoveryAgentConfigDataCron
    Cron schedule for data collection.
    EnableBatchResources bool
    Whether to enable batch resources.
    EnableNodeAgent bool
    Whether to enable node agent.
    EnableOrphanedPod bool
    Whether to enable orphaned pod detection.
    NamespaceSelector string
    Namespace selector for the agent.
    NodeAgentSelector string
    Node selector for the node agent.
    ObservedNamespaces []string
    List of namespaces to observe.
    blacklistedNamespaces List<String>
    List of namespaces to exclude from discovery.
    collectionWindowInMin Integer
    Collection window in minutes.
    crons List<DiscoveryAgentConfigDataCron>
    Cron schedule for data collection.
    enableBatchResources Boolean
    Whether to enable batch resources.
    enableNodeAgent Boolean
    Whether to enable node agent.
    enableOrphanedPod Boolean
    Whether to enable orphaned pod detection.
    namespaceSelector String
    Namespace selector for the agent.
    nodeAgentSelector String
    Node selector for the node agent.
    observedNamespaces List<String>
    List of namespaces to observe.
    blacklistedNamespaces string[]
    List of namespaces to exclude from discovery.
    collectionWindowInMin number
    Collection window in minutes.
    crons DiscoveryAgentConfigDataCron[]
    Cron schedule for data collection.
    enableBatchResources boolean
    Whether to enable batch resources.
    enableNodeAgent boolean
    Whether to enable node agent.
    enableOrphanedPod boolean
    Whether to enable orphaned pod detection.
    namespaceSelector string
    Namespace selector for the agent.
    nodeAgentSelector string
    Node selector for the node agent.
    observedNamespaces string[]
    List of namespaces to observe.
    blacklisted_namespaces Sequence[str]
    List of namespaces to exclude from discovery.
    collection_window_in_min int
    Collection window in minutes.
    crons Sequence[DiscoveryAgentConfigDataCron]
    Cron schedule for data collection.
    enable_batch_resources bool
    Whether to enable batch resources.
    enable_node_agent bool
    Whether to enable node agent.
    enable_orphaned_pod bool
    Whether to enable orphaned pod detection.
    namespace_selector str
    Namespace selector for the agent.
    node_agent_selector str
    Node selector for the node agent.
    observed_namespaces Sequence[str]
    List of namespaces to observe.
    blacklistedNamespaces List<String>
    List of namespaces to exclude from discovery.
    collectionWindowInMin Number
    Collection window in minutes.
    crons List<Property Map>
    Cron schedule for data collection.
    enableBatchResources Boolean
    Whether to enable batch resources.
    enableNodeAgent Boolean
    Whether to enable node agent.
    enableOrphanedPod Boolean
    Whether to enable orphaned pod detection.
    namespaceSelector String
    Namespace selector for the agent.
    nodeAgentSelector String
    Node selector for the node agent.
    observedNamespaces List<String>
    List of namespaces to observe.

    DiscoveryAgentConfigDataCron, DiscoveryAgentConfigDataCronArgs

    Expression string
    Cron expression for scheduling.
    Expression string
    Cron expression for scheduling.
    expression String
    Cron expression for scheduling.
    expression string
    Cron expression for scheduling.
    expression str
    Cron expression for scheduling.
    expression String
    Cron expression for scheduling.

    DiscoveryAgentConfigKubernete, DiscoveryAgentConfigKuberneteArgs

    Namespace string
    Kubernetes namespace to use
    Annotations Dictionary<string, string>
    Annotations to add to all resources.
    DisableNamespaceCreation bool
    Whether to disable namespace creation.
    ImagePullPolicy string
    The image pull policy.
    Labels Dictionary<string, string>
    Labels to add to all resources.
    Namespaced bool
    Whether the agent is namespaced.
    NodeSelector Dictionary<string, string>
    Node selector labels.
    Resources List<DiscoveryAgentConfigKuberneteResource>
    Compute resource requirements for the agent container.
    RunAsGroup int
    The group ID to run as.
    RunAsUser int
    The user ID to run as.
    ServiceAccount string
    Service account to use
    Tolerations List<DiscoveryAgentConfigKuberneteToleration>
    Tolerations for pod assignment.
    Namespace string
    Kubernetes namespace to use
    Annotations map[string]string
    Annotations to add to all resources.
    DisableNamespaceCreation bool
    Whether to disable namespace creation.
    ImagePullPolicy string
    The image pull policy.
    Labels map[string]string
    Labels to add to all resources.
    Namespaced bool
    Whether the agent is namespaced.
    NodeSelector map[string]string
    Node selector labels.
    Resources []DiscoveryAgentConfigKuberneteResource
    Compute resource requirements for the agent container.
    RunAsGroup int
    The group ID to run as.
    RunAsUser int
    The user ID to run as.
    ServiceAccount string
    Service account to use
    Tolerations []DiscoveryAgentConfigKuberneteToleration
    Tolerations for pod assignment.
    namespace String
    Kubernetes namespace to use
    annotations Map<String,String>
    Annotations to add to all resources.
    disableNamespaceCreation Boolean
    Whether to disable namespace creation.
    imagePullPolicy String
    The image pull policy.
    labels Map<String,String>
    Labels to add to all resources.
    namespaced Boolean
    Whether the agent is namespaced.
    nodeSelector Map<String,String>
    Node selector labels.
    resources List<DiscoveryAgentConfigKuberneteResource>
    Compute resource requirements for the agent container.
    runAsGroup Integer
    The group ID to run as.
    runAsUser Integer
    The user ID to run as.
    serviceAccount String
    Service account to use
    tolerations List<DiscoveryAgentConfigKuberneteToleration>
    Tolerations for pod assignment.
    namespace string
    Kubernetes namespace to use
    annotations {[key: string]: string}
    Annotations to add to all resources.
    disableNamespaceCreation boolean
    Whether to disable namespace creation.
    imagePullPolicy string
    The image pull policy.
    labels {[key: string]: string}
    Labels to add to all resources.
    namespaced boolean
    Whether the agent is namespaced.
    nodeSelector {[key: string]: string}
    Node selector labels.
    resources DiscoveryAgentConfigKuberneteResource[]
    Compute resource requirements for the agent container.
    runAsGroup number
    The group ID to run as.
    runAsUser number
    The user ID to run as.
    serviceAccount string
    Service account to use
    tolerations DiscoveryAgentConfigKuberneteToleration[]
    Tolerations for pod assignment.
    namespace str
    Kubernetes namespace to use
    annotations Mapping[str, str]
    Annotations to add to all resources.
    disable_namespace_creation bool
    Whether to disable namespace creation.
    image_pull_policy str
    The image pull policy.
    labels Mapping[str, str]
    Labels to add to all resources.
    namespaced bool
    Whether the agent is namespaced.
    node_selector Mapping[str, str]
    Node selector labels.
    resources Sequence[DiscoveryAgentConfigKuberneteResource]
    Compute resource requirements for the agent container.
    run_as_group int
    The group ID to run as.
    run_as_user int
    The user ID to run as.
    service_account str
    Service account to use
    tolerations Sequence[DiscoveryAgentConfigKuberneteToleration]
    Tolerations for pod assignment.
    namespace String
    Kubernetes namespace to use
    annotations Map<String>
    Annotations to add to all resources.
    disableNamespaceCreation Boolean
    Whether to disable namespace creation.
    imagePullPolicy String
    The image pull policy.
    labels Map<String>
    Labels to add to all resources.
    namespaced Boolean
    Whether the agent is namespaced.
    nodeSelector Map<String>
    Node selector labels.
    resources List<Property Map>
    Compute resource requirements for the agent container.
    runAsGroup Number
    The group ID to run as.
    runAsUser Number
    The user ID to run as.
    serviceAccount String
    Service account to use
    tolerations List<Property Map>
    Tolerations for pod assignment.

    DiscoveryAgentConfigKuberneteResource, DiscoveryAgentConfigKuberneteResourceArgs

    Limits List<DiscoveryAgentConfigKuberneteResourceLimit>
    Maximum amount of compute resources allowed.
    Requests List<DiscoveryAgentConfigKuberneteResourceRequest>
    Minimum amount of compute resources required.
    Limits []DiscoveryAgentConfigKuberneteResourceLimit
    Maximum amount of compute resources allowed.
    Requests []DiscoveryAgentConfigKuberneteResourceRequest
    Minimum amount of compute resources required.
    limits List<DiscoveryAgentConfigKuberneteResourceLimit>
    Maximum amount of compute resources allowed.
    requests List<DiscoveryAgentConfigKuberneteResourceRequest>
    Minimum amount of compute resources required.
    limits DiscoveryAgentConfigKuberneteResourceLimit[]
    Maximum amount of compute resources allowed.
    requests DiscoveryAgentConfigKuberneteResourceRequest[]
    Minimum amount of compute resources required.
    limits Sequence[DiscoveryAgentConfigKuberneteResourceLimit]
    Maximum amount of compute resources allowed.
    requests Sequence[DiscoveryAgentConfigKuberneteResourceRequest]
    Minimum amount of compute resources required.
    limits List<Property Map>
    Maximum amount of compute resources allowed.
    requests List<Property Map>
    Minimum amount of compute resources required.

    DiscoveryAgentConfigKuberneteResourceLimit, DiscoveryAgentConfigKuberneteResourceLimitArgs

    Cpu string
    CPU limit in CPU units (e.g., 500m = 0.5 CPU, 2 = 2 CPUs).
    Memory string
    Memory limit in bytes (e.g., 128Mi, 1Gi).
    Cpu string
    CPU limit in CPU units (e.g., 500m = 0.5 CPU, 2 = 2 CPUs).
    Memory string
    Memory limit in bytes (e.g., 128Mi, 1Gi).
    cpu String
    CPU limit in CPU units (e.g., 500m = 0.5 CPU, 2 = 2 CPUs).
    memory String
    Memory limit in bytes (e.g., 128Mi, 1Gi).
    cpu string
    CPU limit in CPU units (e.g., 500m = 0.5 CPU, 2 = 2 CPUs).
    memory string
    Memory limit in bytes (e.g., 128Mi, 1Gi).
    cpu str
    CPU limit in CPU units (e.g., 500m = 0.5 CPU, 2 = 2 CPUs).
    memory str
    Memory limit in bytes (e.g., 128Mi, 1Gi).
    cpu String
    CPU limit in CPU units (e.g., 500m = 0.5 CPU, 2 = 2 CPUs).
    memory String
    Memory limit in bytes (e.g., 128Mi, 1Gi).

    DiscoveryAgentConfigKuberneteResourceRequest, DiscoveryAgentConfigKuberneteResourceRequestArgs

    Cpu string
    CPU request in CPU units (e.g., 100m = 0.1 CPU).
    Memory string
    Memory request in bytes (e.g., 128Mi, 1Gi).
    Cpu string
    CPU request in CPU units (e.g., 100m = 0.1 CPU).
    Memory string
    Memory request in bytes (e.g., 128Mi, 1Gi).
    cpu String
    CPU request in CPU units (e.g., 100m = 0.1 CPU).
    memory String
    Memory request in bytes (e.g., 128Mi, 1Gi).
    cpu string
    CPU request in CPU units (e.g., 100m = 0.1 CPU).
    memory string
    Memory request in bytes (e.g., 128Mi, 1Gi).
    cpu str
    CPU request in CPU units (e.g., 100m = 0.1 CPU).
    memory str
    Memory request in bytes (e.g., 128Mi, 1Gi).
    cpu String
    CPU request in CPU units (e.g., 100m = 0.1 CPU).
    memory String
    Memory request in bytes (e.g., 128Mi, 1Gi).

    DiscoveryAgentConfigKuberneteToleration, DiscoveryAgentConfigKuberneteTolerationArgs

    Effect string
    Effect indicates the taint effect to match.
    Key string
    The taint key that the toleration applies to.
    Operator string
    Operator represents a key's relationship to the value.
    TolerationSeconds int
    TolerationSeconds represents the period of time the toleration tolerates the taint.
    Value string
    The taint value the toleration matches to.
    Effect string
    Effect indicates the taint effect to match.
    Key string
    The taint key that the toleration applies to.
    Operator string
    Operator represents a key's relationship to the value.
    TolerationSeconds int
    TolerationSeconds represents the period of time the toleration tolerates the taint.
    Value string
    The taint value the toleration matches to.
    effect String
    Effect indicates the taint effect to match.
    key String
    The taint key that the toleration applies to.
    operator String
    Operator represents a key's relationship to the value.
    tolerationSeconds Integer
    TolerationSeconds represents the period of time the toleration tolerates the taint.
    value String
    The taint value the toleration matches to.
    effect string
    Effect indicates the taint effect to match.
    key string
    The taint key that the toleration applies to.
    operator string
    Operator represents a key's relationship to the value.
    tolerationSeconds number
    TolerationSeconds represents the period of time the toleration tolerates the taint.
    value string
    The taint value the toleration matches to.
    effect str
    Effect indicates the taint effect to match.
    key str
    The taint key that the toleration applies to.
    operator str
    Operator represents a key's relationship to the value.
    toleration_seconds int
    TolerationSeconds represents the period of time the toleration tolerates the taint.
    value str
    The taint value the toleration matches to.
    effect String
    Effect indicates the taint effect to match.
    key String
    The taint key that the toleration applies to.
    operator String
    Operator represents a key's relationship to the value.
    tolerationSeconds Number
    TolerationSeconds represents the period of time the toleration tolerates the taint.
    value String
    The taint value the toleration matches to.

    DiscoveryAgentConfigMtl, DiscoveryAgentConfigMtlArgs

    CertPath string
    Path to the certificate file.
    KeyPath string
    Path to the key file.
    SecretName string
    Name of the Kubernetes secret containing the certificate and key.
    Url string
    URL of the mTLS server.
    CertPath string
    Path to the certificate file.
    KeyPath string
    Path to the key file.
    SecretName string
    Name of the Kubernetes secret containing the certificate and key.
    Url string
    URL of the mTLS server.
    certPath String
    Path to the certificate file.
    keyPath String
    Path to the key file.
    secretName String
    Name of the Kubernetes secret containing the certificate and key.
    url String
    URL of the mTLS server.
    certPath string
    Path to the certificate file.
    keyPath string
    Path to the key file.
    secretName string
    Name of the Kubernetes secret containing the certificate and key.
    url string
    URL of the mTLS server.
    cert_path str
    Path to the certificate file.
    key_path str
    Path to the key file.
    secret_name str
    Name of the Kubernetes secret containing the certificate and key.
    url str
    URL of the mTLS server.
    certPath String
    Path to the certificate file.
    keyPath String
    Path to the key file.
    secretName String
    Name of the Kubernetes secret containing the certificate and key.
    url String
    URL of the mTLS server.

    DiscoveryAgentConfigProxy, DiscoveryAgentConfigProxyArgs

    HttpProxy string
    HTTP proxy URL.
    HttpsProxy string
    HTTPS proxy URL.
    NoProxy string
    Comma-separated list of hosts that should not use the proxy.
    Url string
    Proxy server URL.
    HttpProxy string
    HTTP proxy URL.
    HttpsProxy string
    HTTPS proxy URL.
    NoProxy string
    Comma-separated list of hosts that should not use the proxy.
    Url string
    Proxy server URL.
    httpProxy String
    HTTP proxy URL.
    httpsProxy String
    HTTPS proxy URL.
    noProxy String
    Comma-separated list of hosts that should not use the proxy.
    url String
    Proxy server URL.
    httpProxy string
    HTTP proxy URL.
    httpsProxy string
    HTTPS proxy URL.
    noProxy string
    Comma-separated list of hosts that should not use the proxy.
    url string
    Proxy server URL.
    http_proxy str
    HTTP proxy URL.
    https_proxy str
    HTTPS proxy URL.
    no_proxy str
    Comma-separated list of hosts that should not use the proxy.
    url str
    Proxy server URL.
    httpProxy String
    HTTP proxy URL.
    httpsProxy String
    HTTPS proxy URL.
    noProxy String
    Comma-separated list of hosts that should not use the proxy.
    url String
    Proxy server URL.

    DiscoveryAgentInstallationDetail, DiscoveryAgentInstallationDetailArgs

    AccountIdentifier string
    The account identifier for the installation.
    AgentDetails List<DiscoveryAgentInstallationDetailAgentDetail>
    Details about the installed agent.
    AgentId string
    The ID of the installed agent.
    CreatedAt string
    The timestamp when the installation was created.
    CreatedBy string
    The user who created the installation.
    DelegateId string
    The ID of the delegate used for installation.
    DelegateTaskId string
    The ID of the delegate task for the installation.
    DelegateTaskStatus string
    The status of the delegate task (e.g., 'SUCCESS').
    EnvironmentIdentifier string
    The environment identifier for the installation.
    Id string
    The unique identifier of the installation.
    IsCronTriggered bool
    Whether the installation was triggered by a cron job.
    LogStreamCreatedAt string
    The timestamp when the log stream was created.
    LogStreamId string
    The ID of the log stream for the installation.
    OrganizationIdentifier string
    The organization identifier for the installation.
    ProjectIdentifier string
    The project identifier for the installation.
    Removed bool
    Whether the installation has been removed.
    Stopped bool
    Whether the installation has been stopped.
    UpdatedAt string
    The timestamp when the installation was last updated.
    UpdatedBy string
    The user who last updated the installation.
    AccountIdentifier string
    The account identifier for the installation.
    AgentDetails []DiscoveryAgentInstallationDetailAgentDetail
    Details about the installed agent.
    AgentId string
    The ID of the installed agent.
    CreatedAt string
    The timestamp when the installation was created.
    CreatedBy string
    The user who created the installation.
    DelegateId string
    The ID of the delegate used for installation.
    DelegateTaskId string
    The ID of the delegate task for the installation.
    DelegateTaskStatus string
    The status of the delegate task (e.g., 'SUCCESS').
    EnvironmentIdentifier string
    The environment identifier for the installation.
    Id string
    The unique identifier of the installation.
    IsCronTriggered bool
    Whether the installation was triggered by a cron job.
    LogStreamCreatedAt string
    The timestamp when the log stream was created.
    LogStreamId string
    The ID of the log stream for the installation.
    OrganizationIdentifier string
    The organization identifier for the installation.
    ProjectIdentifier string
    The project identifier for the installation.
    Removed bool
    Whether the installation has been removed.
    Stopped bool
    Whether the installation has been stopped.
    UpdatedAt string
    The timestamp when the installation was last updated.
    UpdatedBy string
    The user who last updated the installation.
    accountIdentifier String
    The account identifier for the installation.
    agentDetails List<DiscoveryAgentInstallationDetailAgentDetail>
    Details about the installed agent.
    agentId String
    The ID of the installed agent.
    createdAt String
    The timestamp when the installation was created.
    createdBy String
    The user who created the installation.
    delegateId String
    The ID of the delegate used for installation.
    delegateTaskId String
    The ID of the delegate task for the installation.
    delegateTaskStatus String
    The status of the delegate task (e.g., 'SUCCESS').
    environmentIdentifier String
    The environment identifier for the installation.
    id String
    The unique identifier of the installation.
    isCronTriggered Boolean
    Whether the installation was triggered by a cron job.
    logStreamCreatedAt String
    The timestamp when the log stream was created.
    logStreamId String
    The ID of the log stream for the installation.
    organizationIdentifier String
    The organization identifier for the installation.
    projectIdentifier String
    The project identifier for the installation.
    removed Boolean
    Whether the installation has been removed.
    stopped Boolean
    Whether the installation has been stopped.
    updatedAt String
    The timestamp when the installation was last updated.
    updatedBy String
    The user who last updated the installation.
    accountIdentifier string
    The account identifier for the installation.
    agentDetails DiscoveryAgentInstallationDetailAgentDetail[]
    Details about the installed agent.
    agentId string
    The ID of the installed agent.
    createdAt string
    The timestamp when the installation was created.
    createdBy string
    The user who created the installation.
    delegateId string
    The ID of the delegate used for installation.
    delegateTaskId string
    The ID of the delegate task for the installation.
    delegateTaskStatus string
    The status of the delegate task (e.g., 'SUCCESS').
    environmentIdentifier string
    The environment identifier for the installation.
    id string
    The unique identifier of the installation.
    isCronTriggered boolean
    Whether the installation was triggered by a cron job.
    logStreamCreatedAt string
    The timestamp when the log stream was created.
    logStreamId string
    The ID of the log stream for the installation.
    organizationIdentifier string
    The organization identifier for the installation.
    projectIdentifier string
    The project identifier for the installation.
    removed boolean
    Whether the installation has been removed.
    stopped boolean
    Whether the installation has been stopped.
    updatedAt string
    The timestamp when the installation was last updated.
    updatedBy string
    The user who last updated the installation.
    account_identifier str
    The account identifier for the installation.
    agent_details Sequence[DiscoveryAgentInstallationDetailAgentDetail]
    Details about the installed agent.
    agent_id str
    The ID of the installed agent.
    created_at str
    The timestamp when the installation was created.
    created_by str
    The user who created the installation.
    delegate_id str
    The ID of the delegate used for installation.
    delegate_task_id str
    The ID of the delegate task for the installation.
    delegate_task_status str
    The status of the delegate task (e.g., 'SUCCESS').
    environment_identifier str
    The environment identifier for the installation.
    id str
    The unique identifier of the installation.
    is_cron_triggered bool
    Whether the installation was triggered by a cron job.
    log_stream_created_at str
    The timestamp when the log stream was created.
    log_stream_id str
    The ID of the log stream for the installation.
    organization_identifier str
    The organization identifier for the installation.
    project_identifier str
    The project identifier for the installation.
    removed bool
    Whether the installation has been removed.
    stopped bool
    Whether the installation has been stopped.
    updated_at str
    The timestamp when the installation was last updated.
    updated_by str
    The user who last updated the installation.
    accountIdentifier String
    The account identifier for the installation.
    agentDetails List<Property Map>
    Details about the installed agent.
    agentId String
    The ID of the installed agent.
    createdAt String
    The timestamp when the installation was created.
    createdBy String
    The user who created the installation.
    delegateId String
    The ID of the delegate used for installation.
    delegateTaskId String
    The ID of the delegate task for the installation.
    delegateTaskStatus String
    The status of the delegate task (e.g., 'SUCCESS').
    environmentIdentifier String
    The environment identifier for the installation.
    id String
    The unique identifier of the installation.
    isCronTriggered Boolean
    Whether the installation was triggered by a cron job.
    logStreamCreatedAt String
    The timestamp when the log stream was created.
    logStreamId String
    The ID of the log stream for the installation.
    organizationIdentifier String
    The organization identifier for the installation.
    projectIdentifier String
    The project identifier for the installation.
    removed Boolean
    Whether the installation has been removed.
    stopped Boolean
    Whether the installation has been stopped.
    updatedAt String
    The timestamp when the installation was last updated.
    updatedBy String
    The user who last updated the installation.

    DiscoveryAgentInstallationDetailAgentDetail, DiscoveryAgentInstallationDetailAgentDetailArgs

    Clusters List<DiscoveryAgentInstallationDetailAgentDetailCluster>
    Details about the cluster where the agent is installed.
    Status string
    The status of the agent installation.
    Clusters []DiscoveryAgentInstallationDetailAgentDetailCluster
    Details about the cluster where the agent is installed.
    Status string
    The status of the agent installation.
    clusters List<DiscoveryAgentInstallationDetailAgentDetailCluster>
    Details about the cluster where the agent is installed.
    status String
    The status of the agent installation.
    clusters DiscoveryAgentInstallationDetailAgentDetailCluster[]
    Details about the cluster where the agent is installed.
    status string
    The status of the agent installation.
    clusters Sequence[DiscoveryAgentInstallationDetailAgentDetailCluster]
    Details about the cluster where the agent is installed.
    status str
    The status of the agent installation.
    clusters List<Property Map>
    Details about the cluster where the agent is installed.
    status String
    The status of the agent installation.

    DiscoveryAgentInstallationDetailAgentDetailCluster, DiscoveryAgentInstallationDetailAgentDetailClusterArgs

    Name string
    The name of the cluster.
    Namespace string
    The namespace where the agent is installed.
    Status string
    The status of the cluster (e.g., 'Succeeded').
    Uid string
    The UID of the cluster.
    Name string
    The name of the cluster.
    Namespace string
    The namespace where the agent is installed.
    Status string
    The status of the cluster (e.g., 'Succeeded').
    Uid string
    The UID of the cluster.
    name String
    The name of the cluster.
    namespace String
    The namespace where the agent is installed.
    status String
    The status of the cluster (e.g., 'Succeeded').
    uid String
    The UID of the cluster.
    name string
    The name of the cluster.
    namespace string
    The namespace where the agent is installed.
    status string
    The status of the cluster (e.g., 'Succeeded').
    uid string
    The UID of the cluster.
    name str
    The name of the cluster.
    namespace str
    The namespace where the agent is installed.
    status str
    The status of the cluster (e.g., 'Succeeded').
    uid str
    The UID of the cluster.
    name String
    The name of the cluster.
    namespace String
    The namespace where the agent is installed.
    status String
    The status of the cluster (e.g., 'Succeeded').
    uid String
    The UID of the cluster.

    Import

    The pulumi import command can be used, for example:

    Import Project level Service Discovery Agent

    Account and Org level agents are not supported yet

    $ pulumi import harness:service/discoveryAgent:DiscoveryAgent example <org_identifier>/<project_identifier>/<environment_identifier>/<infra_identifier>
    

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

    Package Details

    Repository
    harness pulumi/pulumi-harness
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the harness Terraform Provider.
    harness logo
    Harness v0.8.4 published on Thursday, Sep 11, 2025 by Pulumi