@pulumi/harness
Version:
A Pulumi package for creating and managing Harness resources.
293 lines (292 loc) • 8.3 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* Data source for retrieving a Harness Chaos Infrastructure V2.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as harness from "@pulumi/harness";
*
* // Data source to fetch a specific agent by name
* const byName = harness.service.getDiscoveryAgent({
* name: "example-agent",
* orgIdentifier: orgIdentifier,
* projectIdentifier: projectIdentifier,
* environmentIdentifier: environmentIdentifier,
* });
* export const agentDetailsByName = byName;
* // Data source to fetch a specific agent by identity
* const byIdentity = harness.service.getDiscoveryAgent({
* identity: "example-infra",
* orgIdentifier: orgIdentifier,
* projectIdentifier: projectIdentifier,
* environmentIdentifier: environmentIdentifier,
* });
* export const agentDetailsByIdentity = byIdentity;
* ```
*/
export declare function getInfrastructureV2(args: GetInfrastructureV2Args, opts?: pulumi.InvokeOptions): Promise<GetInfrastructureV2Result>;
/**
* A collection of arguments for invoking getInfrastructureV2.
*/
export interface GetInfrastructureV2Args {
/**
* The ID of the environment.
*/
environmentId: string;
/**
* Configuration for the container image registry.
*/
imageRegistries?: inputs.chaos.GetInfrastructureV2ImageRegistry[];
/**
* The ID of the infrastructure.
*/
infraId: string;
/**
* mTLS configuration for the infrastructure.
*/
mtls?: inputs.chaos.GetInfrastructureV2Mtls;
/**
* The ID of the organization.
*/
orgId: string;
/**
* The ID of the project.
*/
projectId: string;
/**
* Proxy configuration for the infrastructure.
*/
proxy?: inputs.chaos.GetInfrastructureV2Proxy;
/**
* If specified, the pod's tolerations.
*/
tolerations?: inputs.chaos.GetInfrastructureV2Toleration[];
/**
* Volume mounts for the container.
*/
volumeMounts?: inputs.chaos.GetInfrastructureV2VolumeMount[];
/**
* Volumes to be created in the infrastructure.
*/
volumes?: inputs.chaos.GetInfrastructureV2Volume[];
}
/**
* A collection of values returned by getInfrastructureV2.
*/
export interface GetInfrastructureV2Result {
readonly annotation: {
[key: string]: string;
};
/**
* List of containers in the infrastructure.
*/
readonly containers: string;
/**
* Created at of the infrastructure.
*/
readonly createdAt: string;
/**
* Created by of the infrastructure.
*/
readonly createdBy: string;
/**
* Description of the infrastructure.
*/
readonly description: string;
/**
* The ID of the environment.
*/
readonly environmentId: string;
/**
* The provider-assigned unique ID for this managed resource.
*/
readonly id: string;
/**
* Identifier of the infrastructure.
*/
readonly identifier: string;
/**
* Identity of the infrastructure.
*/
readonly identity: string;
/**
* Configuration for the container image registry.
*/
readonly imageRegistries: outputs.chaos.GetInfrastructureV2ImageRegistry[];
/**
* The ID of the infrastructure.
*/
readonly infraId: string;
/**
* Scope of the infrastructure.
*/
readonly infraScope: string;
/**
* Type of the infrastructure.
*/
readonly infraType: string;
readonly insecureSkipVerify: boolean;
readonly isAiEnabled: boolean;
readonly isChaosEnabled: boolean;
readonly label: {
[key: string]: string;
};
/**
* Last heartbeat of the infrastructure.
*/
readonly lastHeartbeat: number;
/**
* Last workflow timestamp of the infrastructure.
*/
readonly lastWorkflowTimestamp: string;
/**
* mTLS configuration for the infrastructure.
*/
readonly mtls?: outputs.chaos.GetInfrastructureV2Mtls;
/**
* Name of the infrastructure.
*/
readonly name: string;
/**
* Kubernetes namespace for the infrastructure.
*/
readonly namespace: string;
/**
* Number of schedules for the infrastructure.
*/
readonly noOfSchedules: number;
/**
* Number of workflows for the infrastructure.
*/
readonly noOfWorkflows: number;
readonly nodeSelector: {
[key: string]: string;
};
/**
* The ID of the organization.
*/
readonly orgId: string;
/**
* The ID of the project.
*/
readonly projectId: string;
/**
* Proxy configuration for the infrastructure.
*/
readonly proxy?: outputs.chaos.GetInfrastructureV2Proxy;
readonly runAsGroup: number;
readonly runAsUser: number;
/**
* Service account used by the infrastructure.
*/
readonly serviceAccount: string;
/**
* Status of the infrastructure.
*/
readonly status: string;
/**
* Tags of the infrastructure.
*/
readonly tags: string[];
/**
* If specified, the pod's tolerations.
*/
readonly tolerations?: outputs.chaos.GetInfrastructureV2Toleration[];
/**
* Update status of the infrastructure.
*/
readonly updateStatus: string;
/**
* Updated at of the infrastructure.
*/
readonly updatedAt: string;
/**
* Updated by of the infrastructure.
*/
readonly updatedBy: string;
/**
* Volume mounts for the container.
*/
readonly volumeMounts?: outputs.chaos.GetInfrastructureV2VolumeMount[];
/**
* Volumes to be created in the infrastructure.
*/
readonly volumes?: outputs.chaos.GetInfrastructureV2Volume[];
}
/**
* Data source for retrieving a Harness Chaos Infrastructure V2.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as harness from "@pulumi/harness";
*
* // Data source to fetch a specific agent by name
* const byName = harness.service.getDiscoveryAgent({
* name: "example-agent",
* orgIdentifier: orgIdentifier,
* projectIdentifier: projectIdentifier,
* environmentIdentifier: environmentIdentifier,
* });
* export const agentDetailsByName = byName;
* // Data source to fetch a specific agent by identity
* const byIdentity = harness.service.getDiscoveryAgent({
* identity: "example-infra",
* orgIdentifier: orgIdentifier,
* projectIdentifier: projectIdentifier,
* environmentIdentifier: environmentIdentifier,
* });
* export const agentDetailsByIdentity = byIdentity;
* ```
*/
export declare function getInfrastructureV2Output(args: GetInfrastructureV2OutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetInfrastructureV2Result>;
/**
* A collection of arguments for invoking getInfrastructureV2.
*/
export interface GetInfrastructureV2OutputArgs {
/**
* The ID of the environment.
*/
environmentId: pulumi.Input<string>;
/**
* Configuration for the container image registry.
*/
imageRegistries?: pulumi.Input<pulumi.Input<inputs.chaos.GetInfrastructureV2ImageRegistryArgs>[]>;
/**
* The ID of the infrastructure.
*/
infraId: pulumi.Input<string>;
/**
* mTLS configuration for the infrastructure.
*/
mtls?: pulumi.Input<inputs.chaos.GetInfrastructureV2MtlsArgs>;
/**
* 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.GetInfrastructureV2ProxyArgs>;
/**
* If specified, the pod's tolerations.
*/
tolerations?: pulumi.Input<pulumi.Input<inputs.chaos.GetInfrastructureV2TolerationArgs>[]>;
/**
* Volume mounts for the container.
*/
volumeMounts?: pulumi.Input<pulumi.Input<inputs.chaos.GetInfrastructureV2VolumeMountArgs>[]>;
/**
* Volumes to be created in the infrastructure.
*/
volumes?: pulumi.Input<pulumi.Input<inputs.chaos.GetInfrastructureV2VolumeArgs>[]>;
}