import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; /** * Creates and manages a BYOC custom cloud environment on AWS. * * > **Beta resource** * This resource is in the beta stage and may change without notice. Set the `PROVIDER_AIVEN_ENABLE_BETA` environment variable to use the resource. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aiven from "@pulumi/aiven"; * * const example = new aiven.ByocAwsEntity("example", { * contactEmails: [{ * email: "jane@example.com", * realName: "Jane Smith", * role: "admin", * }], * organizationId: "org1a23f456789", * cloudProvider: "aws", * cloudRegion: "eu-west-1", * deploymentModel: "standard", * displayName: "byoc-cloud-prod-eu-west-1", * reservedCidr: "192.168.6.0/24", * tags: { * foo: "foo", * }, * }); * ``` * * ## Import * * ```sh * $ pulumi import aiven:index/byocAwsEntity:ByocAwsEntity example ORGANIZATION_ID/CUSTOM_CLOUD_ENVIRONMENT_ID * ``` */ export declare class ByocAwsEntity extends pulumi.CustomResource { /** * Get an existing ByocAwsEntity 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?: ByocAwsEntityState, opts?: pulumi.CustomResourceOptions): ByocAwsEntity; /** * Returns true if the given object is an instance of ByocAwsEntity. 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 ByocAwsEntity; /** * Entity that assumes the IAM role for controlling the BYOC account. */ readonly aivenAwsAccountPrincipal: pulumi.Output; /** * External ID for assuming the IAM role for controlling the BYOC account. */ readonly aivenAwsAssumeRoleExternalId: pulumi.Output; /** * Amazon Resource Name. */ readonly aivenAwsObjectStorageCredentialsCreatorArn: pulumi.Output; /** * Amazon Resource Name. */ readonly aivenAwsObjectStorageUserArn: pulumi.Output; /** * IP address ranges for incoming connections to the bastion host from the Aiven management plane. */ readonly aivenManagementCidrBlocks: pulumi.Output; /** * Google account identifier. */ readonly aivenObjectStorageCredentialsCreatorUser: pulumi.Output; /** * Subnets to build in the bastion VPC. */ readonly awsSubnetsBastion: pulumi.Output<{ [key: string]: string; }>; /** * Subnets to build in the workload VPC. */ readonly awsSubnetsWorkload: pulumi.Output<{ [key: string]: string; }>; /** * Names and usages of buckets required for workloads. */ readonly bucketNames: pulumi.Output<{ [key: string]: string; }>; /** * Set of tags for the resources provisioned on the BYOC account. */ readonly byocResourceTags: pulumi.Output<{ [key: string]: string; }>; /** * Name for all the resources created for the custom cloud environment. */ readonly byocUniqueName: pulumi.Output; /** * Cloud provider for the BYOC cloud. The possible values are `aws`, `azure`, `google` and `oracle`. Changing this property forces recreation of the resource. */ readonly cloudProvider: pulumi.Output; /** * Cloud region for the BYOC cloud. Maximum length: `32`. Changing this property forces recreation of the resource. */ readonly cloudRegion: pulumi.Output; /** * Email addresses for notifications and alerts for this BYOC cloud. */ readonly contactEmails: pulumi.Output; /** * ID of a custom cloud environment. */ readonly customCloudEnvironmentId: pulumi.Output; /** * Deployment model for the BYOC cloud. The possible values are `directIpsecIngress`, `hipaa`, `ipsecIngress`, `pciDss`, `standard` and `standardPublic`. Changing this property forces recreation of the resource. */ readonly deploymentModel: pulumi.Output; /** * Short name for this BYOC cloud. Maximum length: `64`. */ readonly displayName: pulumi.Output; /** * ID of an organization. Changing this property forces recreation of the resource. */ readonly organizationId: pulumi.Output; /** * CIDR range reserved for Aiven provisioned networks in the BYOC cloud. Maximum length: `18`. Changing this property forces recreation of the resource. */ readonly reservedCidr: pulumi.Output; /** * Set of resource tags. */ readonly tags: pulumi.Output<{ [key: string]: string; } | undefined>; readonly timeouts: pulumi.Output; /** * True if this BYOC cloud is using customer owned storage. */ readonly useCustomerOwnedStorage: pulumi.Output; /** * Create a ByocAwsEntity 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: ByocAwsEntityArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering ByocAwsEntity resources. */ export interface ByocAwsEntityState { /** * Entity that assumes the IAM role for controlling the BYOC account. */ aivenAwsAccountPrincipal?: pulumi.Input; /** * External ID for assuming the IAM role for controlling the BYOC account. */ aivenAwsAssumeRoleExternalId?: pulumi.Input; /** * Amazon Resource Name. */ aivenAwsObjectStorageCredentialsCreatorArn?: pulumi.Input; /** * Amazon Resource Name. */ aivenAwsObjectStorageUserArn?: pulumi.Input; /** * IP address ranges for incoming connections to the bastion host from the Aiven management plane. */ aivenManagementCidrBlocks?: pulumi.Input[] | undefined>; /** * Google account identifier. */ aivenObjectStorageCredentialsCreatorUser?: pulumi.Input; /** * Subnets to build in the bastion VPC. */ awsSubnetsBastion?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * Subnets to build in the workload VPC. */ awsSubnetsWorkload?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * Names and usages of buckets required for workloads. */ bucketNames?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * Set of tags for the resources provisioned on the BYOC account. */ byocResourceTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * Name for all the resources created for the custom cloud environment. */ byocUniqueName?: pulumi.Input; /** * Cloud provider for the BYOC cloud. The possible values are `aws`, `azure`, `google` and `oracle`. Changing this property forces recreation of the resource. */ cloudProvider?: pulumi.Input; /** * Cloud region for the BYOC cloud. Maximum length: `32`. Changing this property forces recreation of the resource. */ cloudRegion?: pulumi.Input; /** * Email addresses for notifications and alerts for this BYOC cloud. */ contactEmails?: pulumi.Input[] | undefined>; /** * ID of a custom cloud environment. */ customCloudEnvironmentId?: pulumi.Input; /** * Deployment model for the BYOC cloud. The possible values are `directIpsecIngress`, `hipaa`, `ipsecIngress`, `pciDss`, `standard` and `standardPublic`. Changing this property forces recreation of the resource. */ deploymentModel?: pulumi.Input; /** * Short name for this BYOC cloud. Maximum length: `64`. */ displayName?: pulumi.Input; /** * ID of an organization. Changing this property forces recreation of the resource. */ organizationId?: pulumi.Input; /** * CIDR range reserved for Aiven provisioned networks in the BYOC cloud. Maximum length: `18`. Changing this property forces recreation of the resource. */ reservedCidr?: pulumi.Input; /** * Set of resource tags. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; timeouts?: pulumi.Input; /** * True if this BYOC cloud is using customer owned storage. */ useCustomerOwnedStorage?: pulumi.Input; } /** * The set of arguments for constructing a ByocAwsEntity resource. */ export interface ByocAwsEntityArgs { /** * Cloud provider for the BYOC cloud. The possible values are `aws`, `azure`, `google` and `oracle`. Changing this property forces recreation of the resource. */ cloudProvider: pulumi.Input; /** * Cloud region for the BYOC cloud. Maximum length: `32`. Changing this property forces recreation of the resource. */ cloudRegion: pulumi.Input; /** * Email addresses for notifications and alerts for this BYOC cloud. */ contactEmails?: pulumi.Input[] | undefined>; /** * Deployment model for the BYOC cloud. The possible values are `directIpsecIngress`, `hipaa`, `ipsecIngress`, `pciDss`, `standard` and `standardPublic`. Changing this property forces recreation of the resource. */ deploymentModel: pulumi.Input; /** * Short name for this BYOC cloud. Maximum length: `64`. */ displayName: pulumi.Input; /** * ID of an organization. Changing this property forces recreation of the resource. */ organizationId: pulumi.Input; /** * CIDR range reserved for Aiven provisioned networks in the BYOC cloud. Maximum length: `18`. Changing this property forces recreation of the resource. */ reservedCidr: pulumi.Input; /** * Set of resource tags. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; timeouts?: pulumi.Input; } //# sourceMappingURL=byocAwsEntity.d.ts.map