import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Resource for managing an AWS Resilience Hub V2 Input Source. * * An input source defines where Resilience Hub discovers AWS resources for a service. Supported source types include CloudFormation stacks, Terraform state files (stored in S3), and EKS clusters. * * > **Note:** This resource does not support in-place updates. Any change to the resource configuration will destroy and recreate the input source. * * ## Example Usage * * ### CloudFormation Stack * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = new aws.resiliencehub.V2InputSource("example", { * resourceConfiguration: { * cfnStackArn: "arn:aws:cloudformation:us-west-2:123456789012:stack/my-stack/abc123", * }, * serviceArn: exampleAwsResiliencehubv2Service.arn, * }); * ``` * * ### Terraform State File * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = new aws.resiliencehub.V2InputSource("example", { * resourceConfiguration: { * tfStateFileUrl: "s3://my-bucket/terraform.tfstate", * }, * serviceArn: exampleAwsResiliencehubv2Service.arn, * }); * ``` * * ### EKS Cluster * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = new aws.resiliencehub.V2InputSource("example", { * resourceConfiguration: { * eks: { * clusterArn: "arn:aws:eks:us-west-2:123456789012:cluster/my-cluster", * namespaces: [ * "default", * "production", * ], * }, * }, * serviceArn: exampleAwsResiliencehubv2Service.arn, * }); * ``` * * ## Import * * ### Identity Schema * * #### Required * * * `serviceArn` (String) ARN of the service this input source belongs to. * * `inputSourceId` (String) Unique identifier of the input source. * * #### Optional * * * `accountId` (String) AWS Account where this resource is managed. * * `region` (String) Region where this resource is managed. * * Using `pulumi import`, import Resilience Hub V2 Input Source using the `serviceArn` and `inputSourceId` separated by a comma (`,`). For example: * * ```sh * $ pulumi import aws:resiliencehub/v2InputSource:V2InputSource example arn:aws:resiliencehub:us-west-2:123456789012:service/example-service:abc123,12345678-1234-1234-1234-123456789012 * ``` */ export declare class V2InputSource extends pulumi.CustomResource { /** * Get an existing V2InputSource 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, state?: V2InputSourceState, opts?: pulumi.CustomResourceOptions): V2InputSource; /** * Returns true if the given object is an instance of V2InputSource. 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 V2InputSource; /** * Unique identifier of the input source. */ readonly inputSourceId: pulumi.Output; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ readonly region: pulumi.Output; /** * Resource configuration for an input source. See `resourceConfiguration` Block below. */ readonly resourceConfiguration: pulumi.Output; /** * ARN of the service this input source belongs to. * * The following arguments are optional: */ readonly serviceArn: pulumi.Output; /** * Create a V2InputSource 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: V2InputSourceArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering V2InputSource resources. */ export interface V2InputSourceState { /** * Unique identifier of the input source. */ inputSourceId?: pulumi.Input; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ region?: pulumi.Input; /** * Resource configuration for an input source. See `resourceConfiguration` Block below. */ resourceConfiguration?: pulumi.Input; /** * ARN of the service this input source belongs to. * * The following arguments are optional: */ serviceArn?: pulumi.Input; } /** * The set of arguments for constructing a V2InputSource resource. */ export interface V2InputSourceArgs { /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ region?: pulumi.Input; /** * Resource configuration for an input source. See `resourceConfiguration` Block below. */ resourceConfiguration: pulumi.Input; /** * ARN of the service this input source belongs to. * * The following arguments are optional: */ serviceArn: pulumi.Input; } //# sourceMappingURL=v2inputSource.d.ts.map