import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; /** * Provides a resource to perform the clone of database instance based on the input parameters. * * ## Example Usage * * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as nutanix from "@pierskarsenbarg/nutanix"; * * //# resource for cloning using Point in time given time machine name * const name = new nutanix.NdbClone("name", { * timeMachineName: "test-pg-inst", * name: "test-inst-tf-check", * nxClusterId: "{{ nx_Cluster_id }}", * sshPublicKey: "{{ sshkey }}", * userPitrTimestamp: "{{ point_in_time }}", * timeZone: "Asia/Calcutta", * createDbserver: true, * computeProfileId: "{{ compute_profile_id }}", * networkProfileId: "{{ network_profile_id }}", * databaseParameterProfileId: "{{ databse_profile_id }}", * nodes: [{ * vmName: "test_vm_clone", * computeProfileId: "{{ compute_profile_id }}", * networkProfileId: "{{ network_profile_id }}", * nxClusterId: "{{ nx_Cluster_id }}", * }], * postgresqlInfos: [{ * vmName: "test_vm_clone", * dbPassword: "pass", * }], * }); * ``` * */ export declare class NdbClone extends pulumi.CustomResource { /** * Get an existing NdbClone 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?: NdbCloneState, opts?: pulumi.CustomResourceOptions): NdbClone; /** * Returns true if the given object is an instance of NdbClone. 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 NdbClone; /** * if any action arguments is required */ readonly actionarguments: pulumi.Output; /** * cloned or not */ readonly clone: pulumi.Output; /** * clone will be clustered or not */ readonly clustered: pulumi.Output; /** * specify the compute profile id */ readonly computeProfileId: pulumi.Output; /** * create new dbserver */ readonly createDbserver: pulumi.Output; /** * database cluster type */ readonly databaseClusterType: pulumi.Output; /** * database name */ readonly databaseName: pulumi.Output; /** * database nodes associated with database instance */ readonly databaseNodes: pulumi.Output; /** * specify the database parameter profile id */ readonly databaseParameterProfileId: pulumi.Output; /** * date created for clone */ readonly dateCreated: pulumi.Output; /** * last modified date for clone */ readonly dateModified: pulumi.Output; /** * dbserver cluster id */ readonly dbserverClusterId: pulumi.Output; /** * Specify if you want to create a database server. This value can be set to true or false as required. */ readonly dbserverId: pulumi.Output; /** * dbserver logical cluster */ readonly dbserverLogicalCluster: pulumi.Output<{ [key: string]: string; }>; /** * dbserver logical cluster id */ readonly dbserverLogicalClusterId: pulumi.Output; /** * - (Optional) Delete the database clone from the VM. Default value is true */ readonly delete: pulumi.Output; /** * - (Optional) Delete the logical cluster. Default is true */ readonly deleteLogicalCluster: pulumi.Output; /** * - (Optional) Delete the database's Time Machine (snapshots/logs) from the NDB. Default value is true */ readonly deleteTimeMachine: pulumi.Output; /** * database instance description */ readonly description: pulumi.Output; /** * - (Optional) Force delete of instance. Default is false */ readonly forced: pulumi.Output; /** * info of clone */ readonly infos: pulumi.Output; /** * latest snapshot */ readonly latestSnapshot: pulumi.Output; /** * LCM Config contains the expiry details and refresh details */ readonly lcmConfigs: pulumi.Output; /** * linked databases within database instance */ readonly linkedDatabases: pulumi.Output; /** * Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM. */ readonly metric: pulumi.Output<{ [key: string]: string; }>; /** * database instance name */ readonly name: pulumi.Output; /** * specify the network profile id */ readonly networkProfileId: pulumi.Output; /** * Node count. Default is 1 for single instance */ readonly nodeCount: pulumi.Output; /** * Nodes contain info about dbservers vm */ readonly nodes: pulumi.Output; /** * cluster id on where clone will be present */ readonly nxClusterId: pulumi.Output; readonly parentDatabaseId: pulumi.Output; /** * postgresql info for the clone */ readonly postgresqlInfos: pulumi.Output; /** * List of all the properties */ readonly properties: pulumi.Output; /** * - (Optional) Unregister the database clone from NDB. Default value is false */ readonly remove: pulumi.Output; /** * remove logical cluster. Default value is false */ readonly removeLogicalCluster: pulumi.Output; /** * snapshot id from where clone is created */ readonly snapshotId: pulumi.Output; /** * - (Optional) Soft remove. Default will be false */ readonly softRemove: pulumi.Output; /** * ssh public key */ readonly sshPublicKey: pulumi.Output; /** * status of clone */ readonly status: pulumi.Output; /** * allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags. */ readonly tags: pulumi.Output; /** * time machine id */ readonly timeMachineId: pulumi.Output; /** * time machine name */ readonly timeMachineName: pulumi.Output; readonly timeMachines: pulumi.Output; /** * timezone */ readonly timeZone: pulumi.Output; /** * type of clone */ readonly type: pulumi.Output; /** * point in time for clone to be created */ readonly userPitrTimestamp: pulumi.Output; /** * vm password */ readonly vmPassword: pulumi.Output; /** * Create a NdbClone 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: NdbCloneArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering NdbClone resources. */ export interface NdbCloneState { /** * if any action arguments is required */ actionarguments?: pulumi.Input[] | undefined>; /** * cloned or not */ clone?: pulumi.Input; /** * clone will be clustered or not */ clustered?: pulumi.Input; /** * specify the compute profile id */ computeProfileId?: pulumi.Input; /** * create new dbserver */ createDbserver?: pulumi.Input; /** * database cluster type */ databaseClusterType?: pulumi.Input; /** * database name */ databaseName?: pulumi.Input; /** * database nodes associated with database instance */ databaseNodes?: pulumi.Input[] | undefined>; /** * specify the database parameter profile id */ databaseParameterProfileId?: pulumi.Input; /** * date created for clone */ dateCreated?: pulumi.Input; /** * last modified date for clone */ dateModified?: pulumi.Input; /** * dbserver cluster id */ dbserverClusterId?: pulumi.Input; /** * Specify if you want to create a database server. This value can be set to true or false as required. */ dbserverId?: pulumi.Input; /** * dbserver logical cluster */ dbserverLogicalCluster?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * dbserver logical cluster id */ dbserverLogicalClusterId?: pulumi.Input; /** * - (Optional) Delete the database clone from the VM. Default value is true */ delete?: pulumi.Input; /** * - (Optional) Delete the logical cluster. Default is true */ deleteLogicalCluster?: pulumi.Input; /** * - (Optional) Delete the database's Time Machine (snapshots/logs) from the NDB. Default value is true */ deleteTimeMachine?: pulumi.Input; /** * database instance description */ description?: pulumi.Input; /** * - (Optional) Force delete of instance. Default is false */ forced?: pulumi.Input; /** * info of clone */ infos?: pulumi.Input[] | undefined>; /** * latest snapshot */ latestSnapshot?: pulumi.Input; /** * LCM Config contains the expiry details and refresh details */ lcmConfigs?: pulumi.Input[] | undefined>; /** * linked databases within database instance */ linkedDatabases?: pulumi.Input[] | undefined>; /** * Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM. */ metric?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * database instance name */ name?: pulumi.Input; /** * specify the network profile id */ networkProfileId?: pulumi.Input; /** * Node count. Default is 1 for single instance */ nodeCount?: pulumi.Input; /** * Nodes contain info about dbservers vm */ nodes?: pulumi.Input[] | undefined>; /** * cluster id on where clone will be present */ nxClusterId?: pulumi.Input; parentDatabaseId?: pulumi.Input; /** * postgresql info for the clone */ postgresqlInfos?: pulumi.Input[] | undefined>; /** * List of all the properties */ properties?: pulumi.Input[] | undefined>; /** * - (Optional) Unregister the database clone from NDB. Default value is false */ remove?: pulumi.Input; /** * remove logical cluster. Default value is false */ removeLogicalCluster?: pulumi.Input; /** * snapshot id from where clone is created */ snapshotId?: pulumi.Input; /** * - (Optional) Soft remove. Default will be false */ softRemove?: pulumi.Input; /** * ssh public key */ sshPublicKey?: pulumi.Input; /** * status of clone */ status?: pulumi.Input; /** * allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags. */ tags?: pulumi.Input[] | undefined>; /** * time machine id */ timeMachineId?: pulumi.Input; /** * time machine name */ timeMachineName?: pulumi.Input; timeMachines?: pulumi.Input[] | undefined>; /** * timezone */ timeZone?: pulumi.Input; /** * type of clone */ type?: pulumi.Input; /** * point in time for clone to be created */ userPitrTimestamp?: pulumi.Input; /** * vm password */ vmPassword?: pulumi.Input; } /** * The set of arguments for constructing a NdbClone resource. */ export interface NdbCloneArgs { /** * if any action arguments is required */ actionarguments?: pulumi.Input[] | undefined>; /** * clone will be clustered or not */ clustered?: pulumi.Input; /** * specify the compute profile id */ computeProfileId?: pulumi.Input; /** * create new dbserver */ createDbserver?: pulumi.Input; /** * specify the database parameter profile id */ databaseParameterProfileId?: pulumi.Input; /** * dbserver cluster id */ dbserverClusterId?: pulumi.Input; /** * Specify if you want to create a database server. This value can be set to true or false as required. */ dbserverId?: pulumi.Input; /** * dbserver logical cluster id */ dbserverLogicalClusterId?: pulumi.Input; /** * - (Optional) Delete the database clone from the VM. Default value is true */ delete?: pulumi.Input; /** * - (Optional) Delete the logical cluster. Default is true */ deleteLogicalCluster?: pulumi.Input; /** * - (Optional) Delete the database's Time Machine (snapshots/logs) from the NDB. Default value is true */ deleteTimeMachine?: pulumi.Input; /** * database instance description */ description?: pulumi.Input; /** * - (Optional) Force delete of instance. Default is false */ forced?: pulumi.Input; /** * latest snapshot */ latestSnapshot?: pulumi.Input; /** * LCM Config contains the expiry details and refresh details */ lcmConfigs?: pulumi.Input[] | undefined>; /** * database instance name */ name?: pulumi.Input; /** * specify the network profile id */ networkProfileId?: pulumi.Input; /** * Node count. Default is 1 for single instance */ nodeCount?: pulumi.Input; /** * Nodes contain info about dbservers vm */ nodes: pulumi.Input[]>; /** * cluster id on where clone will be present */ nxClusterId: pulumi.Input; /** * postgresql info for the clone */ postgresqlInfos?: pulumi.Input[] | undefined>; /** * - (Optional) Unregister the database clone from NDB. Default value is false */ remove?: pulumi.Input; /** * remove logical cluster. Default value is false */ removeLogicalCluster?: pulumi.Input; /** * snapshot id from where clone is created */ snapshotId?: pulumi.Input; /** * - (Optional) Soft remove. Default will be false */ softRemove?: pulumi.Input; /** * ssh public key */ sshPublicKey?: pulumi.Input; /** * allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags. */ tags?: pulumi.Input[] | undefined>; /** * time machine id */ timeMachineId?: pulumi.Input; /** * time machine name */ timeMachineName?: pulumi.Input; /** * timezone */ timeZone?: pulumi.Input; /** * point in time for clone to be created */ userPitrTimestamp?: pulumi.Input; /** * vm password */ vmPassword?: pulumi.Input; } //# sourceMappingURL=ndbClone.d.ts.map