@volcengine/pulumi
Version:
A Pulumi package for creating and managing volcengine cloud resources.
161 lines (160 loc) • 4.87 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
* Use this data source to query detailed information of redis accounts
* ## 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.redis.Instance("fooInstance", {
* zoneIds: [fooZones.then(fooZones => fooZones.zones?.[0]?.id)],
* instanceName: "acc-test-tf-redis",
* shardedCluster: 1,
* password: "1qaz!QAZ12",
* nodeNumber: 2,
* shardCapacity: 1024,
* shardNumber: 2,
* engineVersion: "5.0",
* subnetId: fooSubnet.id,
* deletionProtection: "disabled",
* vpcAuthMode: "close",
* chargeType: "PostPaid",
* port: 6381,
* projectName: "default",
* });
* const fooAccount = new volcengine.redis.Account("fooAccount", {
* accountName: "acc_test_account",
* instanceId: fooInstance.id,
* password: "Password@@",
* roleName: "ReadOnly",
* });
* const fooAccounts = volcengine.redis.getAccountsOutput({
* accountName: fooAccount.accountName,
* instanceId: fooInstance.id,
* });
* ```
*/
export declare function getAccounts(args: GetAccountsArgs, opts?: pulumi.InvokeOptions): Promise<GetAccountsResult>;
/**
* A collection of arguments for invoking getAccounts.
*/
export interface GetAccountsArgs {
/**
* The name of the redis account.
*/
accountName?: string;
/**
* The id of the Redis instance.
*/
instanceId: string;
/**
* File name where to save data source results.
*/
outputFile?: string;
}
/**
* A collection of values returned by getAccounts.
*/
export interface GetAccountsResult {
/**
* The name of the redis account.
*/
readonly accountName?: string;
/**
* The collection of redis instance account query.
*/
readonly accounts: outputs.redis.GetAccountsAccount[];
/**
* The provider-assigned unique ID for this managed resource.
*/
readonly id: string;
/**
* The id of instance.
*/
readonly instanceId: string;
readonly outputFile?: string;
/**
* The total count of redis accounts query.
*/
readonly totalCount: number;
}
/**
* Use this data source to query detailed information of redis accounts
* ## 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.redis.Instance("fooInstance", {
* zoneIds: [fooZones.then(fooZones => fooZones.zones?.[0]?.id)],
* instanceName: "acc-test-tf-redis",
* shardedCluster: 1,
* password: "1qaz!QAZ12",
* nodeNumber: 2,
* shardCapacity: 1024,
* shardNumber: 2,
* engineVersion: "5.0",
* subnetId: fooSubnet.id,
* deletionProtection: "disabled",
* vpcAuthMode: "close",
* chargeType: "PostPaid",
* port: 6381,
* projectName: "default",
* });
* const fooAccount = new volcengine.redis.Account("fooAccount", {
* accountName: "acc_test_account",
* instanceId: fooInstance.id,
* password: "Password@@",
* roleName: "ReadOnly",
* });
* const fooAccounts = volcengine.redis.getAccountsOutput({
* accountName: fooAccount.accountName,
* instanceId: fooInstance.id,
* });
* ```
*/
export declare function getAccountsOutput(args: GetAccountsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetAccountsResult>;
/**
* A collection of arguments for invoking getAccounts.
*/
export interface GetAccountsOutputArgs {
/**
* The name of the redis account.
*/
accountName?: pulumi.Input<string>;
/**
* The id of the Redis instance.
*/
instanceId: pulumi.Input<string>;
/**
* File name where to save data source results.
*/
outputFile?: pulumi.Input<string>;
}