harness.service.DiscoveryAgent
Explore with Pulumi AI
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<Discovery
Agent Config> - Configuration for the agent. This is a required field.
- Environment
Identifier string - The environment identifier of the agent. This is a required field.
- Infra
Identifier string - The infrastructure identifier of the agent. This is a required field.
- Correlation
Id string - Correlation ID for the agent.
- Installation
Type string - Type of installation for the agent.
- Name string
- The name of the agent. This is a required field.
- Org
Identifier string - 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 string - The project identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
- Webhook
Url string - Webhook URL for the agent.
- Configs
[]Discovery
Agent Config Args - Configuration for the agent. This is a required field.
- Environment
Identifier string - The environment identifier of the agent. This is a required field.
- Infra
Identifier string - The infrastructure identifier of the agent. This is a required field.
- Correlation
Id string - Correlation ID for the agent.
- Installation
Type string - Type of installation for the agent.
- Name string
- The name of the agent. This is a required field.
- Org
Identifier string - 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 string - The project identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
- Webhook
Url string - Webhook URL for the agent.
- configs
List<Discovery
Agent Config> - Configuration for the agent. This is a required field.
- environment
Identifier String - The environment identifier of the agent. This is a required field.
- infra
Identifier String - The infrastructure identifier of the agent. This is a required field.
- correlation
Id String - Correlation ID for the agent.
- installation
Type String - Type of installation for the agent.
- name String
- The name of the agent. This is a required field.
- org
Identifier String - The organization identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
- permanent
Installation Boolean - Whether this is a permanent installation.
- project
Identifier String - The project identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
- webhook
Url String - Webhook URL for the agent.
- configs
Discovery
Agent Config[] - Configuration for the agent. This is a required field.
- environment
Identifier string - The environment identifier of the agent. This is a required field.
- infra
Identifier string - The infrastructure identifier of the agent. This is a required field.
- correlation
Id string - Correlation ID for the agent.
- installation
Type string - Type of installation for the agent.
- name string
- The name of the agent. This is a required field.
- org
Identifier string - The organization identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
- permanent
Installation boolean - Whether this is a permanent installation.
- project
Identifier string - The project identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
- webhook
Url string - Webhook URL for the agent.
- configs
Sequence[Discovery
Agent Config Args] - 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.
- environment
Identifier String - The environment identifier of the agent. This is a required field.
- infra
Identifier String - The infrastructure identifier of the agent. This is a required field.
- correlation
Id String - Correlation ID for the agent.
- installation
Type String - Type of installation for the agent.
- name String
- The name of the agent. This is a required field.
- org
Identifier String - The organization identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
- permanent
Installation Boolean - Whether this is a permanent installation.
- project
Identifier String - The project identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
- webhook
Url 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:
- Created
At string - Timestamp when the agent was created.
- Created
By 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.
- Installation
Details List<DiscoveryAgent Installation Detail> - Installation details of the agent.
- Network
Map intCount - Number of network maps associated with this agent.
- Removed bool
- Whether the agent has been removed.
- Removed
At string - Timestamp when the agent was removed.
- Service
Count int - Number of services managed by this agent.
- List<string>
- List of resource tags for the agent.
- Updated
At string - Timestamp when the agent was last updated.
- Updated
By string - User who last updated the agent.
- Created
At string - Timestamp when the agent was created.
- Created
By 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.
- Installation
Details []DiscoveryAgent Installation Detail - Installation details of the agent.
- Network
Map intCount - Number of network maps associated with this agent.
- Removed bool
- Whether the agent has been removed.
- Removed
At string - Timestamp when the agent was removed.
- Service
Count int - Number of services managed by this agent.
- []string
- List of resource tags for the agent.
- Updated
At string - Timestamp when the agent was last updated.
- Updated
By string - User who last updated the agent.
- created
At String - Timestamp when the agent was created.
- created
By 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.
- installation
Details List<DiscoveryAgent Installation Detail> - Installation details of the agent.
- network
Map IntegerCount - Number of network maps associated with this agent.
- removed Boolean
- Whether the agent has been removed.
- removed
At String - Timestamp when the agent was removed.
- service
Count Integer - Number of services managed by this agent.
- List<String>
- List of resource tags for the agent.
- updated
At String - Timestamp when the agent was last updated.
- updated
By String - User who last updated the agent.
- created
At string - Timestamp when the agent was created.
- created
By 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.
- installation
Details DiscoveryAgent Installation Detail[] - Installation details of the agent.
- network
Map numberCount - Number of network maps associated with this agent.
- removed boolean
- Whether the agent has been removed.
- removed
At string - Timestamp when the agent was removed.
- service
Count number - Number of services managed by this agent.
- string[]
- List of resource tags for the agent.
- updated
At string - Timestamp when the agent was last updated.
- updated
By 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[DiscoveryAgent Installation Detail] - Installation details of the agent.
- network_
map_ intcount - 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.
- 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.
- created
At String - Timestamp when the agent was created.
- created
By 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.
- installation
Details List<Property Map> - Installation details of the agent.
- network
Map NumberCount - Number of network maps associated with this agent.
- removed Boolean
- Whether the agent has been removed.
- removed
At String - Timestamp when the agent was removed.
- service
Count Number - Number of services managed by this agent.
- List<String>
- List of resource tags for the agent.
- updated
At String - Timestamp when the agent was last updated.
- updated
By 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.
- Configs
List<Discovery
Agent Config> - Configuration for the agent. This is a required field.
- Correlation
Id string - Correlation ID for the agent.
- Created
At string - Timestamp when the agent was created.
- Created
By string - User who created the agent.
- Description string
- Description of the agent.
- Environment
Identifier string - The environment identifier of the agent. This is a required field.
- Identity string
- The unique identity of the agent.
- Infra
Identifier string - The infrastructure identifier of the agent. This is a required field.
- Installation
Details List<DiscoveryAgent Installation Detail> - Installation details of the agent.
- Installation
Type string - Type of installation for the agent.
- Name string
- The name of the agent. This is a required field.
- Network
Map intCount - Number of network maps associated with this agent.
- Org
Identifier string - 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 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.
- Removed
At string - Timestamp when the agent was removed.
- Service
Count int - Number of services managed by this agent.
- List<string>
- List of resource tags for the agent.
- Updated
At string - Timestamp when the agent was last updated.
- Updated
By string - User who last updated the agent.
- Webhook
Url string - Webhook URL for the agent.
- Configs
[]Discovery
Agent Config Args - Configuration for the agent. This is a required field.
- Correlation
Id string - Correlation ID for the agent.
- Created
At string - Timestamp when the agent was created.
- Created
By string - User who created the agent.
- Description string
- Description of the agent.
- Environment
Identifier string - The environment identifier of the agent. This is a required field.
- Identity string
- The unique identity of the agent.
- Infra
Identifier string - The infrastructure identifier of the agent. This is a required field.
- Installation
Details []DiscoveryAgent Installation Detail Args - Installation details of the agent.
- Installation
Type string - Type of installation for the agent.
- Name string
- The name of the agent. This is a required field.
- Network
Map intCount - Number of network maps associated with this agent.
- Org
Identifier string - 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 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.
- Removed
At string - Timestamp when the agent was removed.
- Service
Count int - Number of services managed by this agent.
- []string
- List of resource tags for the agent.
- Updated
At string - Timestamp when the agent was last updated.
- Updated
By string - User who last updated the agent.
- Webhook
Url string - Webhook URL for the agent.
- configs
List<Discovery
Agent Config> - Configuration for the agent. This is a required field.
- correlation
Id String - Correlation ID for the agent.
- created
At String - Timestamp when the agent was created.
- created
By String - User who created the agent.
- description String
- Description of the agent.
- environment
Identifier String - The environment identifier of the agent. This is a required field.
- identity String
- The unique identity of the agent.
- infra
Identifier String - The infrastructure identifier of the agent. This is a required field.
- installation
Details List<DiscoveryAgent Installation Detail> - Installation details of the agent.
- installation
Type String - Type of installation for the agent.
- name String
- The name of the agent. This is a required field.
- network
Map IntegerCount - Number of network maps associated with this agent.
- org
Identifier String - The organization identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
- permanent
Installation Boolean - Whether this is a permanent installation.
- project
Identifier 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.
- removed
At String - Timestamp when the agent was removed.
- service
Count Integer - Number of services managed by this agent.
- List<String>
- List of resource tags for the agent.
- updated
At String - Timestamp when the agent was last updated.
- updated
By String - User who last updated the agent.
- webhook
Url String - Webhook URL for the agent.
- configs
Discovery
Agent Config[] - Configuration for the agent. This is a required field.
- correlation
Id string - Correlation ID for the agent.
- created
At string - Timestamp when the agent was created.
- created
By string - User who created the agent.
- description string
- Description of the agent.
- environment
Identifier string - The environment identifier of the agent. This is a required field.
- identity string
- The unique identity of the agent.
- infra
Identifier string - The infrastructure identifier of the agent. This is a required field.
- installation
Details DiscoveryAgent Installation Detail[] - Installation details of the agent.
- installation
Type string - Type of installation for the agent.
- name string
- The name of the agent. This is a required field.
- network
Map numberCount - Number of network maps associated with this agent.
- org
Identifier string - The organization identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
- permanent
Installation boolean - Whether this is a permanent installation.
- project
Identifier 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.
- removed
At string - Timestamp when the agent was removed.
- service
Count number - Number of services managed by this agent.
- string[]
- List of resource tags for the agent.
- updated
At string - Timestamp when the agent was last updated.
- updated
By string - User who last updated the agent.
- webhook
Url string - Webhook URL for the agent.
- configs
Sequence[Discovery
Agent Config Args] - 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[DiscoveryAgent Installation Detail Args] - 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_ intcount - 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.
- 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.
- correlation
Id String - Correlation ID for the agent.
- created
At String - Timestamp when the agent was created.
- created
By String - User who created the agent.
- description String
- Description of the agent.
- environment
Identifier String - The environment identifier of the agent. This is a required field.
- identity String
- The unique identity of the agent.
- infra
Identifier String - The infrastructure identifier of the agent. This is a required field.
- installation
Details List<Property Map> - Installation details of the agent.
- installation
Type String - Type of installation for the agent.
- name String
- The name of the agent. This is a required field.
- network
Map NumberCount - Number of network maps associated with this agent.
- org
Identifier String - The organization identifier of the agent. Must be 1-64 characters and contain only alphanumeric characters, hyphens, or underscores.
- permanent
Installation Boolean - Whether this is a permanent installation.
- project
Identifier 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.
- removed
At String - Timestamp when the agent was removed.
- service
Count Number - Number of services managed by this agent.
- List<String>
- List of resource tags for the agent.
- updated
At String - Timestamp when the agent was last updated.
- updated
By String - User who last updated the agent.
- webhook
Url String - Webhook URL for the agent.
Supporting Types
DiscoveryAgentConfig, DiscoveryAgentConfigArgs
- Kubernetes
List<Discovery
Agent Config Kubernete> - Kubernetes-specific configuration.
- Collector
Image string - Docker image for the collector.
- Datas
List<Discovery
Agent Config Data> - Data collection configuration.
- Image
Pull List<string>Secrets - List of image pull secrets.
- Log
Watcher stringImage - Docker image for the log watcher.
- Mtls
List<Discovery
Agent Config Mtl> - mTLS configuration.
- Proxies
List<Discovery
Agent Config Proxy> - Proxy configuration.
- Skip
Secure boolVerify - Whether to skip TLS verification.
- Kubernetes
[]Discovery
Agent Config Kubernete - Kubernetes-specific configuration.
- Collector
Image string - Docker image for the collector.
- Datas
[]Discovery
Agent Config Data - Data collection configuration.
- Image
Pull []stringSecrets - List of image pull secrets.
- Log
Watcher stringImage - Docker image for the log watcher.
- Mtls
[]Discovery
Agent Config Mtl - mTLS configuration.
- Proxies
[]Discovery
Agent Config Proxy - Proxy configuration.
- Skip
Secure boolVerify - Whether to skip TLS verification.
- kubernetes
List<Discovery
Agent Config Kubernete> - Kubernetes-specific configuration.
- collector
Image String - Docker image for the collector.
- datas
List<Discovery
Agent Config Data> - Data collection configuration.
- image
Pull List<String>Secrets - List of image pull secrets.
- log
Watcher StringImage - Docker image for the log watcher.
- mtls
List<Discovery
Agent Config Mtl> - mTLS configuration.
- proxies
List<Discovery
Agent Config Proxy> - Proxy configuration.
- skip
Secure BooleanVerify - Whether to skip TLS verification.
- kubernetes
Discovery
Agent Config Kubernete[] - Kubernetes-specific configuration.
- collector
Image string - Docker image for the collector.
- datas
Discovery
Agent Config Data[] - Data collection configuration.
- image
Pull string[]Secrets - List of image pull secrets.
- log
Watcher stringImage - Docker image for the log watcher.
- mtls
Discovery
Agent Config Mtl[] - mTLS configuration.
- proxies
Discovery
Agent Config Proxy[] - Proxy configuration.
- skip
Secure booleanVerify - Whether to skip TLS verification.
- kubernetes
Sequence[Discovery
Agent Config Kubernete] - Kubernetes-specific configuration.
- collector_
image str - Docker image for the collector.
- datas
Sequence[Discovery
Agent Config Data] - Data collection configuration.
- image_
pull_ Sequence[str]secrets - List of image pull secrets.
- log_
watcher_ strimage - Docker image for the log watcher.
- mtls
Sequence[Discovery
Agent Config Mtl] - mTLS configuration.
- proxies
Sequence[Discovery
Agent Config Proxy] - Proxy configuration.
- skip_
secure_ boolverify - Whether to skip TLS verification.
- kubernetes List<Property Map>
- Kubernetes-specific configuration.
- collector
Image String - Docker image for the collector.
- datas List<Property Map>
- Data collection configuration.
- image
Pull List<String>Secrets - List of image pull secrets.
- log
Watcher StringImage - Docker image for the log watcher.
- mtls List<Property Map>
- mTLS configuration.
- proxies List<Property Map>
- Proxy configuration.
- skip
Secure BooleanVerify - Whether to skip TLS verification.
DiscoveryAgentConfigData, DiscoveryAgentConfigDataArgs
- Blacklisted
Namespaces List<string> - List of namespaces to exclude from discovery.
- Collection
Window intIn Min - Collection window in minutes.
- Crons
List<Discovery
Agent Config Data Cron> - Cron schedule for data collection.
- Enable
Batch boolResources - Whether to enable batch resources.
- Enable
Node boolAgent - Whether to enable node agent.
- Enable
Orphaned boolPod - Whether to enable orphaned pod detection.
- Namespace
Selector string - Namespace selector for the agent.
- Node
Agent stringSelector - Node selector for the node agent.
- Observed
Namespaces List<string> - List of namespaces to observe.
- Blacklisted
Namespaces []string - List of namespaces to exclude from discovery.
- Collection
Window intIn Min - Collection window in minutes.
- Crons
[]Discovery
Agent Config Data Cron - Cron schedule for data collection.
- Enable
Batch boolResources - Whether to enable batch resources.
- Enable
Node boolAgent - Whether to enable node agent.
- Enable
Orphaned boolPod - Whether to enable orphaned pod detection.
- Namespace
Selector string - Namespace selector for the agent.
- Node
Agent stringSelector - Node selector for the node agent.
- Observed
Namespaces []string - List of namespaces to observe.
- blacklisted
Namespaces List<String> - List of namespaces to exclude from discovery.
- collection
Window IntegerIn Min - Collection window in minutes.
- crons
List<Discovery
Agent Config Data Cron> - Cron schedule for data collection.
- enable
Batch BooleanResources - Whether to enable batch resources.
- enable
Node BooleanAgent - Whether to enable node agent.
- enable
Orphaned BooleanPod - Whether to enable orphaned pod detection.
- namespace
Selector String - Namespace selector for the agent.
- node
Agent StringSelector - Node selector for the node agent.
- observed
Namespaces List<String> - List of namespaces to observe.
- blacklisted
Namespaces string[] - List of namespaces to exclude from discovery.
- collection
Window numberIn Min - Collection window in minutes.
- crons
Discovery
Agent Config Data Cron[] - Cron schedule for data collection.
- enable
Batch booleanResources - Whether to enable batch resources.
- enable
Node booleanAgent - Whether to enable node agent.
- enable
Orphaned booleanPod - Whether to enable orphaned pod detection.
- namespace
Selector string - Namespace selector for the agent.
- node
Agent stringSelector - Node selector for the node agent.
- observed
Namespaces string[] - List of namespaces to observe.
- blacklisted_
namespaces Sequence[str] - List of namespaces to exclude from discovery.
- collection_
window_ intin_ min - Collection window in minutes.
- crons
Sequence[Discovery
Agent Config Data Cron] - Cron schedule for data collection.
- enable_
batch_ boolresources - Whether to enable batch resources.
- enable_
node_ boolagent - Whether to enable node agent.
- enable_
orphaned_ boolpod - Whether to enable orphaned pod detection.
- namespace_
selector str - Namespace selector for the agent.
- node_
agent_ strselector - Node selector for the node agent.
- observed_
namespaces Sequence[str] - List of namespaces to observe.
- blacklisted
Namespaces List<String> - List of namespaces to exclude from discovery.
- collection
Window NumberIn Min - Collection window in minutes.
- crons List<Property Map>
- Cron schedule for data collection.
- enable
Batch BooleanResources - Whether to enable batch resources.
- enable
Node BooleanAgent - Whether to enable node agent.
- enable
Orphaned BooleanPod - Whether to enable orphaned pod detection.
- namespace
Selector String - Namespace selector for the agent.
- node
Agent StringSelector - Node selector for the node agent.
- observed
Namespaces 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.
- Disable
Namespace boolCreation - Whether to disable namespace creation.
- Image
Pull stringPolicy - The image pull policy.
- Labels Dictionary<string, string>
- Labels to add to all resources.
- Namespaced bool
- Whether the agent is namespaced.
- Node
Selector Dictionary<string, string> - Node selector labels.
- Resources
List<Discovery
Agent Config Kubernete Resource> - Compute resource requirements for the agent container.
- Run
As intGroup - The group ID to run as.
- Run
As intUser - The user ID to run as.
- Service
Account string - Service account to use
- Tolerations
List<Discovery
Agent Config Kubernete Toleration> - Tolerations for pod assignment.
- Namespace string
- Kubernetes namespace to use
- Annotations map[string]string
- Annotations to add to all resources.
- Disable
Namespace boolCreation - Whether to disable namespace creation.
- Image
Pull stringPolicy - The image pull policy.
- Labels map[string]string
- Labels to add to all resources.
- Namespaced bool
- Whether the agent is namespaced.
- Node
Selector map[string]string - Node selector labels.
- Resources
[]Discovery
Agent Config Kubernete Resource - Compute resource requirements for the agent container.
- Run
As intGroup - The group ID to run as.
- Run
As intUser - The user ID to run as.
- Service
Account string - Service account to use
- Tolerations
[]Discovery
Agent Config Kubernete Toleration - Tolerations for pod assignment.
- namespace String
- Kubernetes namespace to use
- annotations Map<String,String>
- Annotations to add to all resources.
- disable
Namespace BooleanCreation - Whether to disable namespace creation.
- image
Pull StringPolicy - The image pull policy.
- labels Map<String,String>
- Labels to add to all resources.
- namespaced Boolean
- Whether the agent is namespaced.
- node
Selector Map<String,String> - Node selector labels.
- resources
List<Discovery
Agent Config Kubernete Resource> - Compute resource requirements for the agent container.
- run
As IntegerGroup - The group ID to run as.
- run
As IntegerUser - The user ID to run as.
- service
Account String - Service account to use
- tolerations
List<Discovery
Agent Config Kubernete Toleration> - Tolerations for pod assignment.
- namespace string
- Kubernetes namespace to use
- annotations {[key: string]: string}
- Annotations to add to all resources.
- disable
Namespace booleanCreation - Whether to disable namespace creation.
- image
Pull stringPolicy - The image pull policy.
- labels {[key: string]: string}
- Labels to add to all resources.
- namespaced boolean
- Whether the agent is namespaced.
- node
Selector {[key: string]: string} - Node selector labels.
- resources
Discovery
Agent Config Kubernete Resource[] - Compute resource requirements for the agent container.
- run
As numberGroup - The group ID to run as.
- run
As numberUser - The user ID to run as.
- service
Account string - Service account to use
- tolerations
Discovery
Agent Config Kubernete Toleration[] - Tolerations for pod assignment.
- namespace str
- Kubernetes namespace to use
- annotations Mapping[str, str]
- Annotations to add to all resources.
- disable_
namespace_ boolcreation - Whether to disable namespace creation.
- image_
pull_ strpolicy - 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[Discovery
Agent Config Kubernete Resource] - Compute resource requirements for the agent container.
- run_
as_ intgroup - The group ID to run as.
- run_
as_ intuser - The user ID to run as.
- service_
account str - Service account to use
- tolerations
Sequence[Discovery
Agent Config Kubernete Toleration] - Tolerations for pod assignment.
- namespace String
- Kubernetes namespace to use
- annotations Map<String>
- Annotations to add to all resources.
- disable
Namespace BooleanCreation - Whether to disable namespace creation.
- image
Pull StringPolicy - The image pull policy.
- labels Map<String>
- Labels to add to all resources.
- namespaced Boolean
- Whether the agent is namespaced.
- node
Selector Map<String> - Node selector labels.
- resources List<Property Map>
- Compute resource requirements for the agent container.
- run
As NumberGroup - The group ID to run as.
- run
As NumberUser - The user ID to run as.
- service
Account String - Service account to use
- tolerations List<Property Map>
- Tolerations for pod assignment.
DiscoveryAgentConfigKuberneteResource, DiscoveryAgentConfigKuberneteResourceArgs
- Limits
List<Discovery
Agent Config Kubernete Resource Limit> - Maximum amount of compute resources allowed.
- Requests
List<Discovery
Agent Config Kubernete Resource Request> - Minimum amount of compute resources required.
- Limits
[]Discovery
Agent Config Kubernete Resource Limit - Maximum amount of compute resources allowed.
- Requests
[]Discovery
Agent Config Kubernete Resource Request - Minimum amount of compute resources required.
- limits
List<Discovery
Agent Config Kubernete Resource Limit> - Maximum amount of compute resources allowed.
- requests
List<Discovery
Agent Config Kubernete Resource Request> - Minimum amount of compute resources required.
- limits
Discovery
Agent Config Kubernete Resource Limit[] - Maximum amount of compute resources allowed.
- requests
Discovery
Agent Config Kubernete Resource Request[] - Minimum amount of compute resources required.
- limits
Sequence[Discovery
Agent Config Kubernete Resource Limit] - Maximum amount of compute resources allowed.
- requests
Sequence[Discovery
Agent Config Kubernete Resource Request] - 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
DiscoveryAgentConfigKuberneteResourceRequest, DiscoveryAgentConfigKuberneteResourceRequestArgs
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.
- Toleration
Seconds 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.
- Toleration
Seconds 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.
- toleration
Seconds 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.
- toleration
Seconds 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.
- toleration
Seconds Number - TolerationSeconds represents the period of time the toleration tolerates the taint.
- value String
- The taint value the toleration matches to.
DiscoveryAgentConfigMtl, DiscoveryAgentConfigMtlArgs
- Cert
Path string - Path to the certificate file.
- Key
Path string - Path to the key file.
- Secret
Name string - Name of the Kubernetes secret containing the certificate and key.
- Url string
- URL of the mTLS server.
- Cert
Path string - Path to the certificate file.
- Key
Path string - Path to the key file.
- Secret
Name string - Name of the Kubernetes secret containing the certificate and key.
- Url string
- URL of the mTLS server.
- cert
Path String - Path to the certificate file.
- key
Path String - Path to the key file.
- secret
Name String - Name of the Kubernetes secret containing the certificate and key.
- url String
- URL of the mTLS server.
- cert
Path string - Path to the certificate file.
- key
Path string - Path to the key file.
- secret
Name 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.
- cert
Path String - Path to the certificate file.
- key
Path String - Path to the key file.
- secret
Name String - Name of the Kubernetes secret containing the certificate and key.
- url String
- URL of the mTLS server.
DiscoveryAgentConfigProxy, DiscoveryAgentConfigProxyArgs
- Http
Proxy string - HTTP proxy URL.
- Https
Proxy string - HTTPS proxy URL.
- No
Proxy string - Comma-separated list of hosts that should not use the proxy.
- Url string
- Proxy server URL.
- Http
Proxy string - HTTP proxy URL.
- Https
Proxy string - HTTPS proxy URL.
- No
Proxy string - Comma-separated list of hosts that should not use the proxy.
- Url string
- Proxy server URL.
- http
Proxy String - HTTP proxy URL.
- https
Proxy String - HTTPS proxy URL.
- no
Proxy String - Comma-separated list of hosts that should not use the proxy.
- url String
- Proxy server URL.
- http
Proxy string - HTTP proxy URL.
- https
Proxy string - HTTPS proxy URL.
- no
Proxy 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.
- http
Proxy String - HTTP proxy URL.
- https
Proxy String - HTTPS proxy URL.
- no
Proxy String - Comma-separated list of hosts that should not use the proxy.
- url String
- Proxy server URL.
DiscoveryAgentInstallationDetail, DiscoveryAgentInstallationDetailArgs
- Account
Identifier string - The account identifier for the installation.
- Agent
Details List<DiscoveryAgent Installation Detail Agent Detail> - Details about the installed agent.
- Agent
Id string - The ID of the installed agent.
- Created
At string - The timestamp when the installation was created.
- Created
By string - The user who created the installation.
- Delegate
Id string - The ID of the delegate used for installation.
- Delegate
Task stringId - The ID of the delegate task for the installation.
- Delegate
Task stringStatus - The status of the delegate task (e.g., 'SUCCESS').
- Environment
Identifier string - The environment identifier for the installation.
- Id string
- The unique identifier of the installation.
- Is
Cron boolTriggered - Whether the installation was triggered by a cron job.
- Log
Stream stringCreated At - The timestamp when the log stream was created.
- Log
Stream stringId - The ID of the log stream for the installation.
- Organization
Identifier string - The organization identifier for the installation.
- Project
Identifier string - The project identifier for the installation.
- Removed bool
- Whether the installation has been removed.
- Stopped bool
- Whether the installation has been stopped.
- Updated
At string - The timestamp when the installation was last updated.
- Updated
By string - The user who last updated the installation.
- Account
Identifier string - The account identifier for the installation.
- Agent
Details []DiscoveryAgent Installation Detail Agent Detail - Details about the installed agent.
- Agent
Id string - The ID of the installed agent.
- Created
At string - The timestamp when the installation was created.
- Created
By string - The user who created the installation.
- Delegate
Id string - The ID of the delegate used for installation.
- Delegate
Task stringId - The ID of the delegate task for the installation.
- Delegate
Task stringStatus - The status of the delegate task (e.g., 'SUCCESS').
- Environment
Identifier string - The environment identifier for the installation.
- Id string
- The unique identifier of the installation.
- Is
Cron boolTriggered - Whether the installation was triggered by a cron job.
- Log
Stream stringCreated At - The timestamp when the log stream was created.
- Log
Stream stringId - The ID of the log stream for the installation.
- Organization
Identifier string - The organization identifier for the installation.
- Project
Identifier string - The project identifier for the installation.
- Removed bool
- Whether the installation has been removed.
- Stopped bool
- Whether the installation has been stopped.
- Updated
At string - The timestamp when the installation was last updated.
- Updated
By string - The user who last updated the installation.
- account
Identifier String - The account identifier for the installation.
- agent
Details List<DiscoveryAgent Installation Detail Agent Detail> - Details about the installed agent.
- agent
Id String - The ID of the installed agent.
- created
At String - The timestamp when the installation was created.
- created
By String - The user who created the installation.
- delegate
Id String - The ID of the delegate used for installation.
- delegate
Task StringId - The ID of the delegate task for the installation.
- delegate
Task StringStatus - The status of the delegate task (e.g., 'SUCCESS').
- environment
Identifier String - The environment identifier for the installation.
- id String
- The unique identifier of the installation.
- is
Cron BooleanTriggered - Whether the installation was triggered by a cron job.
- log
Stream StringCreated At - The timestamp when the log stream was created.
- log
Stream StringId - The ID of the log stream for the installation.
- organization
Identifier String - The organization identifier for the installation.
- project
Identifier String - The project identifier for the installation.
- removed Boolean
- Whether the installation has been removed.
- stopped Boolean
- Whether the installation has been stopped.
- updated
At String - The timestamp when the installation was last updated.
- updated
By String - The user who last updated the installation.
- account
Identifier string - The account identifier for the installation.
- agent
Details DiscoveryAgent Installation Detail Agent Detail[] - Details about the installed agent.
- agent
Id string - The ID of the installed agent.
- created
At string - The timestamp when the installation was created.
- created
By string - The user who created the installation.
- delegate
Id string - The ID of the delegate used for installation.
- delegate
Task stringId - The ID of the delegate task for the installation.
- delegate
Task stringStatus - The status of the delegate task (e.g., 'SUCCESS').
- environment
Identifier string - The environment identifier for the installation.
- id string
- The unique identifier of the installation.
- is
Cron booleanTriggered - Whether the installation was triggered by a cron job.
- log
Stream stringCreated At - The timestamp when the log stream was created.
- log
Stream stringId - The ID of the log stream for the installation.
- organization
Identifier string - The organization identifier for the installation.
- project
Identifier string - The project identifier for the installation.
- removed boolean
- Whether the installation has been removed.
- stopped boolean
- Whether the installation has been stopped.
- updated
At string - The timestamp when the installation was last updated.
- updated
By string - The user who last updated the installation.
- account_
identifier str - The account identifier for the installation.
- agent_
details Sequence[DiscoveryAgent Installation Detail Agent Detail] - 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_ strid - The ID of the delegate task for the installation.
- delegate_
task_ strstatus - 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_ booltriggered - Whether the installation was triggered by a cron job.
- log_
stream_ strcreated_ at - The timestamp when the log stream was created.
- log_
stream_ strid - 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.
- account
Identifier String - The account identifier for the installation.
- agent
Details List<Property Map> - Details about the installed agent.
- agent
Id String - The ID of the installed agent.
- created
At String - The timestamp when the installation was created.
- created
By String - The user who created the installation.
- delegate
Id String - The ID of the delegate used for installation.
- delegate
Task StringId - The ID of the delegate task for the installation.
- delegate
Task StringStatus - The status of the delegate task (e.g., 'SUCCESS').
- environment
Identifier String - The environment identifier for the installation.
- id String
- The unique identifier of the installation.
- is
Cron BooleanTriggered - Whether the installation was triggered by a cron job.
- log
Stream StringCreated At - The timestamp when the log stream was created.
- log
Stream StringId - The ID of the log stream for the installation.
- organization
Identifier String - The organization identifier for the installation.
- project
Identifier String - The project identifier for the installation.
- removed Boolean
- Whether the installation has been removed.
- stopped Boolean
- Whether the installation has been stopped.
- updated
At String - The timestamp when the installation was last updated.
- updated
By String - The user who last updated the installation.
DiscoveryAgentInstallationDetailAgentDetail, DiscoveryAgentInstallationDetailAgentDetailArgs
- Clusters
List<Discovery
Agent Installation Detail Agent Detail Cluster> - Details about the cluster where the agent is installed.
- Status string
- The status of the agent installation.
- Clusters
[]Discovery
Agent Installation Detail Agent Detail Cluster - Details about the cluster where the agent is installed.
- Status string
- The status of the agent installation.
- clusters
List<Discovery
Agent Installation Detail Agent Detail Cluster> - Details about the cluster where the agent is installed.
- status String
- The status of the agent installation.
- clusters
Discovery
Agent Installation Detail Agent Detail Cluster[] - Details about the cluster where the agent is installed.
- status string
- The status of the agent installation.
- clusters
Sequence[Discovery
Agent Installation Detail Agent Detail Cluster] - 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
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.