UNPKG

@pulumi/harness

Version:

A Pulumi package for creating and managing Harness resources.

470 lines (469 loc) 14.2 kB
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>[]>; }