UNPKG

@volcengine/pulumi

Version:

A Pulumi package for creating and managing volcengine cloud resources.

190 lines (189 loc) 6.46 kB
import * as pulumi from "@pulumi/pulumi"; import * as outputs from "../types/output"; /** * Use this data source to query detailed information of mongodb endpoints * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as volcengine from "@pulumi/volcengine"; * import * as volcengine from "@volcengine/pulumi"; * * const fooZones = volcengine.ecs.getZones({}); * const fooVpc = new volcengine.vpc.Vpc("fooVpc", { * vpcName: "acc-test-vpc", * cidrBlock: "172.16.0.0/16", * }); * const fooSubnet = new volcengine.vpc.Subnet("fooSubnet", { * subnetName: "acc-test-subnet", * cidrBlock: "172.16.0.0/24", * zoneId: fooZones.then(fooZones => fooZones.zones?.[0]?.id), * vpcId: fooVpc.id, * }); * const fooInstance = new volcengine.mongodb.Instance("fooInstance", { * dbEngineVersion: "MongoDB_4_0", * instanceType: "ShardedCluster", * superAccountPassword: "@acc-test-123", * nodeSpec: "mongo.shard.1c2g", * mongosNodeSpec: "mongo.mongos.1c2g", * instanceName: "acc-test-mongo-shard", * chargeType: "PostPaid", * projectName: "default", * mongosNodeNumber: 2, * shardNumber: 2, * storageSpaceGb: 20, * subnetId: fooSubnet.id, * zoneId: fooZones.then(fooZones => fooZones.zones?.[0]?.id), * tags: [{ * key: "k1", * value: "v1", * }], * }); * const fooAddress: volcengine.eip.Address[] = []; * for (const range = {value: 0}; range.value < 2; range.value++) { * fooAddress.push(new volcengine.eip.Address(`fooAddress-${range.value}`, { * billingType: "PostPaidByBandwidth", * bandwidth: 1, * isp: "ChinaUnicom", * description: "acc-test", * projectName: "default", * })); * } * const fooPublic = new volcengine.mongodb.Endpoint("fooPublic", { * instanceId: fooInstance.id, * networkType: "Public", * objectId: fooInstance.mongosId, * mongosNodeIds: [ * fooInstance.mongos.apply(mongos => mongos[0].mongosNodeId), * fooInstance.mongos.apply(mongos => mongos[1].mongosNodeId), * ], * eipIds: fooAddress.map(__item => __item.id), * }); * const fooPrivate = new volcengine.mongodb.Endpoint("fooPrivate", { * instanceId: fooInstance.id, * networkType: "Private", * objectId: fooInstance.configServersId, * }); * const fooEndpoints = volcengine.mongodb.getEndpointsOutput({ * instanceId: fooInstance.id, * }); * ``` */ /** @deprecated volcengine.mongodb.Endpoints has been deprecated in favor of volcengine.mongodb.getEndpoints */ export declare function endpoints(args?: EndpointsArgs, opts?: pulumi.InvokeOptions): Promise<EndpointsResult>; /** * A collection of arguments for invoking Endpoints. */ export interface EndpointsArgs { /** * The instance ID to query. */ instanceId?: string; /** * File name where to save data source results. */ outputFile?: string; } /** * A collection of values returned by Endpoints. */ export interface EndpointsResult { /** * The collection of mongodb endpoints query. */ readonly endpoints: outputs.mongodb.EndpointsEndpoint[]; /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; readonly instanceId?: string; readonly outputFile?: string; /** * The total count of mongodb endpoint query. */ readonly totalCount: number; } /** * Use this data source to query detailed information of mongodb endpoints * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as volcengine from "@pulumi/volcengine"; * import * as volcengine from "@volcengine/pulumi"; * * const fooZones = volcengine.ecs.getZones({}); * const fooVpc = new volcengine.vpc.Vpc("fooVpc", { * vpcName: "acc-test-vpc", * cidrBlock: "172.16.0.0/16", * }); * const fooSubnet = new volcengine.vpc.Subnet("fooSubnet", { * subnetName: "acc-test-subnet", * cidrBlock: "172.16.0.0/24", * zoneId: fooZones.then(fooZones => fooZones.zones?.[0]?.id), * vpcId: fooVpc.id, * }); * const fooInstance = new volcengine.mongodb.Instance("fooInstance", { * dbEngineVersion: "MongoDB_4_0", * instanceType: "ShardedCluster", * superAccountPassword: "@acc-test-123", * nodeSpec: "mongo.shard.1c2g", * mongosNodeSpec: "mongo.mongos.1c2g", * instanceName: "acc-test-mongo-shard", * chargeType: "PostPaid", * projectName: "default", * mongosNodeNumber: 2, * shardNumber: 2, * storageSpaceGb: 20, * subnetId: fooSubnet.id, * zoneId: fooZones.then(fooZones => fooZones.zones?.[0]?.id), * tags: [{ * key: "k1", * value: "v1", * }], * }); * const fooAddress: volcengine.eip.Address[] = []; * for (const range = {value: 0}; range.value < 2; range.value++) { * fooAddress.push(new volcengine.eip.Address(`fooAddress-${range.value}`, { * billingType: "PostPaidByBandwidth", * bandwidth: 1, * isp: "ChinaUnicom", * description: "acc-test", * projectName: "default", * })); * } * const fooPublic = new volcengine.mongodb.Endpoint("fooPublic", { * instanceId: fooInstance.id, * networkType: "Public", * objectId: fooInstance.mongosId, * mongosNodeIds: [ * fooInstance.mongos.apply(mongos => mongos[0].mongosNodeId), * fooInstance.mongos.apply(mongos => mongos[1].mongosNodeId), * ], * eipIds: fooAddress.map(__item => __item.id), * }); * const fooPrivate = new volcengine.mongodb.Endpoint("fooPrivate", { * instanceId: fooInstance.id, * networkType: "Private", * objectId: fooInstance.configServersId, * }); * const fooEndpoints = volcengine.mongodb.getEndpointsOutput({ * instanceId: fooInstance.id, * }); * ``` */ /** @deprecated volcengine.mongodb.Endpoints has been deprecated in favor of volcengine.mongodb.getEndpoints */ export declare function endpointsOutput(args?: EndpointsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<EndpointsResult>; /** * A collection of arguments for invoking Endpoints. */ export interface EndpointsOutputArgs { /** * The instance ID to query. */ instanceId?: pulumi.Input<string>; /** * File name where to save data source results. */ outputFile?: pulumi.Input<string>; }