@pulumi/harness
Version:
A Pulumi package for creating and managing Harness resources.
470 lines (469 loc) • 14.2 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* Resource for managing Harness Chaos Infrastructure V2.
*
* ## Import
*
* The `pulumi import` command can be used, for example:
*
* Import Project level Chaos Infrastructure v2
*
* ```sh
* $ pulumi import harness:chaos/infrastructureV2:InfrastructureV2 example <org_id>/<project_id>/<environment_id>/<infra_id>
* ```
*/
export declare class InfrastructureV2 extends pulumi.CustomResource {
/**
* Get an existing InfrastructureV2 resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InfrastructureV2State, opts?: pulumi.CustomResourceOptions): InfrastructureV2;
/**
* Returns true if the given object is an instance of InfrastructureV2. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is InfrastructureV2;
/**
* Enable AI features for the infrastructure.
*/
readonly aiEnabled: pulumi.Output<boolean | undefined>;
/**
* Annotations to apply to the infrastructure pods.
*/
readonly annotation: pulumi.Output<{
[key: string]: string;
} | undefined>;
/**
* Container configurations.
*/
readonly containers: pulumi.Output<string | undefined>;
/**
* Correlation ID for the request.
*/
readonly correlationId: pulumi.Output<string>;
/**
* Creation timestamp.
*/
readonly createdAt: pulumi.Output<string>;
/**
* Description of the infrastructure.
*/
readonly description: pulumi.Output<string | undefined>;
/**
* ID of the discovery agent to use.
*/
readonly discoveryAgentId: pulumi.Output<string | undefined>;
/**
* The ID of the environment.
*/
readonly environmentId: pulumi.Output<string>;
/**
* List of environment variables to set in the container.
*/
readonly envs: pulumi.Output<outputs.chaos.InfrastructureV2Env[] | undefined>;
/**
* Identifier for the infrastructure.
*/
readonly identifiers: pulumi.Output<outputs.chaos.InfrastructureV2Identifier[]>;
/**
* Identity for the infrastructure.
*/
readonly identity: pulumi.Output<string>;
/**
* Configuration for the container image registry.
*/
readonly imageRegistries: pulumi.Output<outputs.chaos.InfrastructureV2ImageRegistry[]>;
/**
* ID of the infrastructure.
*/
readonly infraId: pulumi.Output<string>;
/**
* Namespace where the infrastructure is installed.
*/
readonly infraNamespace: pulumi.Output<string>;
/**
* Scope of the infrastructure. Valid values: NAMESPACE, CLUSTER
*/
readonly infraScope: pulumi.Output<string>;
/**
* Type of the infrastructure. Valid values: KUBERNETES, KUBERNETESV2
*/
readonly infraType: pulumi.Output<string | undefined>;
/**
* Skip TLS verification for the infrastructure.
*/
readonly insecureSkipVerify: pulumi.Output<boolean | undefined>;
/**
* Installation command for the infrastructure.
*/
readonly installCommand: pulumi.Output<string>;
/**
* Kubernetes connector identifier.
*/
readonly k8sConnectorId: pulumi.Output<string>;
/**
* Labels to apply to the infrastructure pods.
*/
readonly label: pulumi.Output<{
[key: string]: string;
} | undefined>;
/**
* mTLS configuration for the infrastructure.
*/
readonly mtls: pulumi.Output<outputs.chaos.InfrastructureV2Mtls | undefined>;
/**
* Name of the infrastructure.
*/
readonly name: pulumi.Output<string>;
/**
* Kubernetes namespace where the infrastructure will be installed. Maps to the infrastructure namespace.
*/
readonly namespace: pulumi.Output<string | undefined>;
/**
* Node selector for the infrastructure pods.
*/
readonly nodeSelector: pulumi.Output<{
[key: string]: string;
} | undefined>;
/**
* The ID of the organization.
*/
readonly orgId: pulumi.Output<string>;
/**
* The ID of the project.
*/
readonly projectId: pulumi.Output<string>;
/**
* Proxy configuration for the infrastructure.
*/
readonly proxy: pulumi.Output<outputs.chaos.InfrastructureV2Proxy | undefined>;
/**
* Group ID to run the infrastructure as.
*/
readonly runAsGroup: pulumi.Output<number | undefined>;
/**
* User ID to run the infrastructure as.
*/
readonly runAsUser: pulumi.Output<number | undefined>;
/**
* Service account used by the infrastructure.
*/
readonly serviceAccount: pulumi.Output<string | undefined>;
/**
* Status of the infrastructure.
*/
readonly status: pulumi.Output<string>;
/**
* Tags for the infrastructure.
*/
readonly tags: pulumi.Output<string[] | undefined>;
/**
* If specified, the pod's tolerations.
*/
readonly tolerations: pulumi.Output<outputs.chaos.InfrastructureV2Toleration[] | undefined>;
/**
* Last update timestamp.
*/
readonly updatedAt: pulumi.Output<string>;
/**
* Volume mounts for the container.
*/
readonly volumeMounts: pulumi.Output<outputs.chaos.InfrastructureV2VolumeMount[] | undefined>;
/**
* Volumes to be created in the infrastructure.
*/
readonly volumes: pulumi.Output<outputs.chaos.InfrastructureV2Volume[] | undefined>;
/**
* Create a InfrastructureV2 resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name: string, args: InfrastructureV2Args, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering InfrastructureV2 resources.
*/
export interface InfrastructureV2State {
/**
* Enable AI features for the infrastructure.
*/
aiEnabled?: pulumi.Input<boolean>;
/**
* Annotations to apply to the infrastructure pods.
*/
annotation?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* Container configurations.
*/
containers?: pulumi.Input<string>;
/**
* Correlation ID for the request.
*/
correlationId?: pulumi.Input<string>;
/**
* Creation timestamp.
*/
createdAt?: pulumi.Input<string>;
/**
* Description of the infrastructure.
*/
description?: pulumi.Input<string>;
/**
* ID of the discovery agent to use.
*/
discoveryAgentId?: pulumi.Input<string>;
/**
* The ID of the environment.
*/
environmentId?: pulumi.Input<string>;
/**
* List of environment variables to set in the container.
*/
envs?: pulumi.Input<pulumi.Input<inputs.chaos.InfrastructureV2Env>[]>;
/**
* Identifier for the infrastructure.
*/
identifiers?: pulumi.Input<pulumi.Input<inputs.chaos.InfrastructureV2Identifier>[]>;
/**
* Identity for the infrastructure.
*/
identity?: pulumi.Input<string>;
/**
* Configuration for the container image registry.
*/
imageRegistries?: pulumi.Input<pulumi.Input<inputs.chaos.InfrastructureV2ImageRegistry>[]>;
/**
* ID of the infrastructure.
*/
infraId?: pulumi.Input<string>;
/**
* Namespace where the infrastructure is installed.
*/
infraNamespace?: pulumi.Input<string>;
/**
* Scope of the infrastructure. Valid values: NAMESPACE, CLUSTER
*/
infraScope?: pulumi.Input<string>;
/**
* Type of the infrastructure. Valid values: KUBERNETES, KUBERNETESV2
*/
infraType?: pulumi.Input<string>;
/**
* Skip TLS verification for the infrastructure.
*/
insecureSkipVerify?: pulumi.Input<boolean>;
/**
* Installation command for the infrastructure.
*/
installCommand?: pulumi.Input<string>;
/**
* Kubernetes connector identifier.
*/
k8sConnectorId?: pulumi.Input<string>;
/**
* Labels to apply to the infrastructure pods.
*/
label?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* mTLS configuration for the infrastructure.
*/
mtls?: pulumi.Input<inputs.chaos.InfrastructureV2Mtls>;
/**
* Name of the infrastructure.
*/
name?: pulumi.Input<string>;
/**
* Kubernetes namespace where the infrastructure will be installed. Maps to the infrastructure namespace.
*/
namespace?: pulumi.Input<string>;
/**
* Node selector for the infrastructure pods.
*/
nodeSelector?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* The ID of the organization.
*/
orgId?: pulumi.Input<string>;
/**
* The ID of the project.
*/
projectId?: pulumi.Input<string>;
/**
* Proxy configuration for the infrastructure.
*/
proxy?: pulumi.Input<inputs.chaos.InfrastructureV2Proxy>;
/**
* Group ID to run the infrastructure as.
*/
runAsGroup?: pulumi.Input<number>;
/**
* User ID to run the infrastructure as.
*/
runAsUser?: pulumi.Input<number>;
/**
* Service account used by the infrastructure.
*/
serviceAccount?: pulumi.Input<string>;
/**
* Status of the infrastructure.
*/
status?: pulumi.Input<string>;
/**
* Tags for the infrastructure.
*/
tags?: pulumi.Input<pulumi.Input<string>[]>;
/**
* If specified, the pod's tolerations.
*/
tolerations?: pulumi.Input<pulumi.Input<inputs.chaos.InfrastructureV2Toleration>[]>;
/**
* Last update timestamp.
*/
updatedAt?: pulumi.Input<string>;
/**
* Volume mounts for the container.
*/
volumeMounts?: pulumi.Input<pulumi.Input<inputs.chaos.InfrastructureV2VolumeMount>[]>;
/**
* Volumes to be created in the infrastructure.
*/
volumes?: pulumi.Input<pulumi.Input<inputs.chaos.InfrastructureV2Volume>[]>;
}
/**
* The set of arguments for constructing a InfrastructureV2 resource.
*/
export interface InfrastructureV2Args {
/**
* Enable AI features for the infrastructure.
*/
aiEnabled?: pulumi.Input<boolean>;
/**
* Annotations to apply to the infrastructure pods.
*/
annotation?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* Container configurations.
*/
containers?: pulumi.Input<string>;
/**
* Correlation ID for the request.
*/
correlationId?: pulumi.Input<string>;
/**
* Description of the infrastructure.
*/
description?: pulumi.Input<string>;
/**
* ID of the discovery agent to use.
*/
discoveryAgentId?: pulumi.Input<string>;
/**
* The ID of the environment.
*/
environmentId: pulumi.Input<string>;
/**
* List of environment variables to set in the container.
*/
envs?: pulumi.Input<pulumi.Input<inputs.chaos.InfrastructureV2Env>[]>;
/**
* Configuration for the container image registry.
*/
imageRegistries?: pulumi.Input<pulumi.Input<inputs.chaos.InfrastructureV2ImageRegistry>[]>;
/**
* ID of the infrastructure.
*/
infraId: pulumi.Input<string>;
/**
* Scope of the infrastructure. Valid values: NAMESPACE, CLUSTER
*/
infraScope?: pulumi.Input<string>;
/**
* Type of the infrastructure. Valid values: KUBERNETES, KUBERNETESV2
*/
infraType?: pulumi.Input<string>;
/**
* Skip TLS verification for the infrastructure.
*/
insecureSkipVerify?: pulumi.Input<boolean>;
/**
* Labels to apply to the infrastructure pods.
*/
label?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* mTLS configuration for the infrastructure.
*/
mtls?: pulumi.Input<inputs.chaos.InfrastructureV2Mtls>;
/**
* Name of the infrastructure.
*/
name?: pulumi.Input<string>;
/**
* Kubernetes namespace where the infrastructure will be installed. Maps to the infrastructure namespace.
*/
namespace?: pulumi.Input<string>;
/**
* Node selector for the infrastructure pods.
*/
nodeSelector?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* The ID of the organization.
*/
orgId: pulumi.Input<string>;
/**
* The ID of the project.
*/
projectId: pulumi.Input<string>;
/**
* Proxy configuration for the infrastructure.
*/
proxy?: pulumi.Input<inputs.chaos.InfrastructureV2Proxy>;
/**
* Group ID to run the infrastructure as.
*/
runAsGroup?: pulumi.Input<number>;
/**
* User ID to run the infrastructure as.
*/
runAsUser?: pulumi.Input<number>;
/**
* Service account used by the infrastructure.
*/
serviceAccount?: pulumi.Input<string>;
/**
* Tags for the infrastructure.
*/
tags?: pulumi.Input<pulumi.Input<string>[]>;
/**
* If specified, the pod's tolerations.
*/
tolerations?: pulumi.Input<pulumi.Input<inputs.chaos.InfrastructureV2Toleration>[]>;
/**
* Volume mounts for the container.
*/
volumeMounts?: pulumi.Input<pulumi.Input<inputs.chaos.InfrastructureV2VolumeMount>[]>;
/**
* Volumes to be created in the infrastructure.
*/
volumes?: pulumi.Input<pulumi.Input<inputs.chaos.InfrastructureV2Volume>[]>;
}