rediscloud.CloudAccount
Explore with Pulumi AI
Creates a Cloud Account resource representing the access credentials to a cloud provider account, (AWS).
Redis Enterprise Cloud uses these credentials to provision databases within your infrastructure.
Example Usage
The following example defines a new AWS Cloud Account that is then used with a Subscription.
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Rediscloud = RedisLabs.Rediscloud;
return await Deployment.RunAsync(() => 
{
    var exampleCloudAccount = new Rediscloud.CloudAccount("exampleCloudAccount", new()
    {
        AccessKeyId = "abcdefg",
        AccessSecretKey = "9876543",
        ConsoleUsername = "username",
        ConsolePassword = "password",
        ProviderType = "AWS",
        SignInLoginUrl = "https://1234567890.signin.aws.amazon.com/console",
    });
    var exampleSubscription = new Rediscloud.Subscription("exampleSubscription", new()
    {
        PaymentMethodId = data.Rediscloud_payment_method.Card.Id,
        MemoryStorage = "ram",
        CloudProvider = new Rediscloud.Inputs.SubscriptionCloudProviderArgs
        {
            Provider = exampleCloudAccount.ProviderType,
            CloudAccountId = exampleCloudAccount.Id,
        },
    });
    // ...
});
package main
import (
	"github.com/RedisLabs/pulumi-rediscloud/sdk/go/rediscloud"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleCloudAccount, err := rediscloud.NewCloudAccount(ctx, "exampleCloudAccount", &rediscloud.CloudAccountArgs{
			AccessKeyId:     pulumi.String("abcdefg"),
			AccessSecretKey: pulumi.String("9876543"),
			ConsoleUsername: pulumi.String("username"),
			ConsolePassword: pulumi.String("password"),
			ProviderType:    pulumi.String("AWS"),
			SignInLoginUrl:  pulumi.String("https://1234567890.signin.aws.amazon.com/console"),
		})
		if err != nil {
			return err
		}
		_, err = rediscloud.NewSubscription(ctx, "exampleSubscription", &rediscloud.SubscriptionArgs{
			PaymentMethodId: pulumi.Any(data.Rediscloud_payment_method.Card.Id),
			MemoryStorage:   pulumi.String("ram"),
			CloudProvider: &rediscloud.SubscriptionCloudProviderArgs{
				Provider:       exampleCloudAccount.ProviderType,
				CloudAccountId: exampleCloudAccount.ID(),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.rediscloud.CloudAccount;
import com.pulumi.rediscloud.CloudAccountArgs;
import com.pulumi.rediscloud.Subscription;
import com.pulumi.rediscloud.SubscriptionArgs;
import com.pulumi.rediscloud.inputs.SubscriptionCloudProviderArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var exampleCloudAccount = new CloudAccount("exampleCloudAccount", CloudAccountArgs.builder()        
            .accessKeyId("abcdefg")
            .accessSecretKey("9876543")
            .consoleUsername("username")
            .consolePassword("password")
            .providerType("AWS")
            .signInLoginUrl("https://1234567890.signin.aws.amazon.com/console")
            .build());
        var exampleSubscription = new Subscription("exampleSubscription", SubscriptionArgs.builder()        
            .paymentMethodId(data.rediscloud_payment_method().card().id())
            .memoryStorage("ram")
            .cloudProvider(SubscriptionCloudProviderArgs.builder()
                .provider(exampleCloudAccount.providerType())
                .cloudAccountId(exampleCloudAccount.id())
                .build())
            .build());
    }
}
import * as pulumi from "@pulumi/pulumi";
import * as rediscloud from "@rediscloud/pulumi-rediscloud";
const exampleCloudAccount = new rediscloud.CloudAccount("exampleCloudAccount", {
    accessKeyId: "abcdefg",
    accessSecretKey: "9876543",
    consoleUsername: "username",
    consolePassword: "password",
    providerType: "AWS",
    signInLoginUrl: "https://1234567890.signin.aws.amazon.com/console",
});
const exampleSubscription = new rediscloud.Subscription("exampleSubscription", {
    paymentMethodId: data.rediscloud_payment_method.card.id,
    memoryStorage: "ram",
    cloudProvider: {
        provider: exampleCloudAccount.providerType,
        cloudAccountId: exampleCloudAccount.id,
    },
});
// ...
import pulumi
import pulumi_rediscloud as rediscloud
example_cloud_account = rediscloud.CloudAccount("exampleCloudAccount",
    access_key_id="abcdefg",
    access_secret_key="9876543",
    console_username="username",
    console_password="password",
    provider_type="AWS",
    sign_in_login_url="https://1234567890.signin.aws.amazon.com/console")
example_subscription = rediscloud.Subscription("exampleSubscription",
    payment_method_id=data["rediscloud_payment_method"]["card"]["id"],
    memory_storage="ram",
    cloud_provider=rediscloud.SubscriptionCloudProviderArgs(
        provider=example_cloud_account.provider_type,
        cloud_account_id=example_cloud_account.id,
    ))
# ...
resources:
  exampleCloudAccount:
    type: rediscloud:CloudAccount
    properties:
      accessKeyId: abcdefg
      accessSecretKey: '9876543'
      consoleUsername: username
      consolePassword: password
      providerType: AWS
      signInLoginUrl: https://1234567890.signin.aws.amazon.com/console
  exampleSubscription:
    type: rediscloud:Subscription
    properties:
      paymentMethodId: ${data.rediscloud_payment_method.card.id}
      memoryStorage: ram
      cloudProvider:
        provider: ${exampleCloudAccount.providerType}
        cloudAccountId: ${exampleCloudAccount.id}
Create CloudAccount Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new CloudAccount(name: string, args: CloudAccountArgs, opts?: CustomResourceOptions);@overload
def CloudAccount(resource_name: str,
                 args: CloudAccountArgs,
                 opts: Optional[ResourceOptions] = None)
@overload
def CloudAccount(resource_name: str,
                 opts: Optional[ResourceOptions] = None,
                 access_key_id: Optional[str] = None,
                 access_secret_key: Optional[str] = None,
                 console_password: Optional[str] = None,
                 console_username: Optional[str] = None,
                 provider_type: Optional[str] = None,
                 sign_in_login_url: Optional[str] = None,
                 name: Optional[str] = None)func NewCloudAccount(ctx *Context, name string, args CloudAccountArgs, opts ...ResourceOption) (*CloudAccount, error)public CloudAccount(string name, CloudAccountArgs args, CustomResourceOptions? opts = null)
public CloudAccount(String name, CloudAccountArgs args)
public CloudAccount(String name, CloudAccountArgs args, CustomResourceOptions options)
type: rediscloud:CloudAccount
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args CloudAccountArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args CloudAccountArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args CloudAccountArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args CloudAccountArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args CloudAccountArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var cloudAccountResource = new Rediscloud.CloudAccount("cloudAccountResource", new()
{
    AccessKeyId = "string",
    AccessSecretKey = "string",
    ConsolePassword = "string",
    ConsoleUsername = "string",
    ProviderType = "string",
    SignInLoginUrl = "string",
    Name = "string",
});
example, err := rediscloud.NewCloudAccount(ctx, "cloudAccountResource", &rediscloud.CloudAccountArgs{
	AccessKeyId:     pulumi.String("string"),
	AccessSecretKey: pulumi.String("string"),
	ConsolePassword: pulumi.String("string"),
	ConsoleUsername: pulumi.String("string"),
	ProviderType:    pulumi.String("string"),
	SignInLoginUrl:  pulumi.String("string"),
	Name:            pulumi.String("string"),
})
var cloudAccountResource = new CloudAccount("cloudAccountResource", CloudAccountArgs.builder()
    .accessKeyId("string")
    .accessSecretKey("string")
    .consolePassword("string")
    .consoleUsername("string")
    .providerType("string")
    .signInLoginUrl("string")
    .name("string")
    .build());
cloud_account_resource = rediscloud.CloudAccount("cloudAccountResource",
    access_key_id="string",
    access_secret_key="string",
    console_password="string",
    console_username="string",
    provider_type="string",
    sign_in_login_url="string",
    name="string")
const cloudAccountResource = new rediscloud.CloudAccount("cloudAccountResource", {
    accessKeyId: "string",
    accessSecretKey: "string",
    consolePassword: "string",
    consoleUsername: "string",
    providerType: "string",
    signInLoginUrl: "string",
    name: "string",
});
type: rediscloud:CloudAccount
properties:
    accessKeyId: string
    accessSecretKey: string
    consolePassword: string
    consoleUsername: string
    name: string
    providerType: string
    signInLoginUrl: string
CloudAccount Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The CloudAccount resource accepts the following input properties:
- AccessKey stringId 
- Cloud provider access key.
- AccessSecret stringKey 
- Cloud provider secret key. Note that drift cannot currently be detected for this.
- ConsolePassword string
- Cloud provider management console password. Note that drift cannot currently be detected for this.
- ConsoleUsername string
- Cloud provider management console username. Note that drift cannot currently be detected for this.
- ProviderType string
- Cloud provider type - either AWSorGCP. Note that drift cannot currently be detected for this. Modifying this attribute will force creation of a new resource.
- SignIn stringLogin Url 
- Cloud provider management console login URL. Note that drift cannot currently be detected for this.
- Name string
- Display name of the account.
- AccessKey stringId 
- Cloud provider access key.
- AccessSecret stringKey 
- Cloud provider secret key. Note that drift cannot currently be detected for this.
- ConsolePassword string
- Cloud provider management console password. Note that drift cannot currently be detected for this.
- ConsoleUsername string
- Cloud provider management console username. Note that drift cannot currently be detected for this.
- ProviderType string
- Cloud provider type - either AWSorGCP. Note that drift cannot currently be detected for this. Modifying this attribute will force creation of a new resource.
- SignIn stringLogin Url 
- Cloud provider management console login URL. Note that drift cannot currently be detected for this.
- Name string
- Display name of the account.
- accessKey StringId 
- Cloud provider access key.
- accessSecret StringKey 
- Cloud provider secret key. Note that drift cannot currently be detected for this.
- consolePassword String
- Cloud provider management console password. Note that drift cannot currently be detected for this.
- consoleUsername String
- Cloud provider management console username. Note that drift cannot currently be detected for this.
- providerType String
- Cloud provider type - either AWSorGCP. Note that drift cannot currently be detected for this. Modifying this attribute will force creation of a new resource.
- signIn StringLogin Url 
- Cloud provider management console login URL. Note that drift cannot currently be detected for this.
- name String
- Display name of the account.
- accessKey stringId 
- Cloud provider access key.
- accessSecret stringKey 
- Cloud provider secret key. Note that drift cannot currently be detected for this.
- consolePassword string
- Cloud provider management console password. Note that drift cannot currently be detected for this.
- consoleUsername string
- Cloud provider management console username. Note that drift cannot currently be detected for this.
- providerType string
- Cloud provider type - either AWSorGCP. Note that drift cannot currently be detected for this. Modifying this attribute will force creation of a new resource.
- signIn stringLogin Url 
- Cloud provider management console login URL. Note that drift cannot currently be detected for this.
- name string
- Display name of the account.
- access_key_ strid 
- Cloud provider access key.
- access_secret_ strkey 
- Cloud provider secret key. Note that drift cannot currently be detected for this.
- console_password str
- Cloud provider management console password. Note that drift cannot currently be detected for this.
- console_username str
- Cloud provider management console username. Note that drift cannot currently be detected for this.
- provider_type str
- Cloud provider type - either AWSorGCP. Note that drift cannot currently be detected for this. Modifying this attribute will force creation of a new resource.
- sign_in_ strlogin_ url 
- Cloud provider management console login URL. Note that drift cannot currently be detected for this.
- name str
- Display name of the account.
- accessKey StringId 
- Cloud provider access key.
- accessSecret StringKey 
- Cloud provider secret key. Note that drift cannot currently be detected for this.
- consolePassword String
- Cloud provider management console password. Note that drift cannot currently be detected for this.
- consoleUsername String
- Cloud provider management console username. Note that drift cannot currently be detected for this.
- providerType String
- Cloud provider type - either AWSorGCP. Note that drift cannot currently be detected for this. Modifying this attribute will force creation of a new resource.
- signIn StringLogin Url 
- Cloud provider management console login URL. Note that drift cannot currently be detected for this.
- name String
- Display name of the account.
Outputs
All input properties are implicitly available as output properties. Additionally, the CloudAccount resource produces the following output properties:
Look up Existing CloudAccount Resource
Get an existing CloudAccount resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: CloudAccountState, opts?: CustomResourceOptions): CloudAccount@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        access_key_id: Optional[str] = None,
        access_secret_key: Optional[str] = None,
        console_password: Optional[str] = None,
        console_username: Optional[str] = None,
        name: Optional[str] = None,
        provider_type: Optional[str] = None,
        sign_in_login_url: Optional[str] = None,
        status: Optional[str] = None) -> CloudAccountfunc GetCloudAccount(ctx *Context, name string, id IDInput, state *CloudAccountState, opts ...ResourceOption) (*CloudAccount, error)public static CloudAccount Get(string name, Input<string> id, CloudAccountState? state, CustomResourceOptions? opts = null)public static CloudAccount get(String name, Output<String> id, CloudAccountState state, CustomResourceOptions options)resources:  _:    type: rediscloud:CloudAccount    get:      id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- AccessKey stringId 
- Cloud provider access key.
- AccessSecret stringKey 
- Cloud provider secret key. Note that drift cannot currently be detected for this.
- ConsolePassword string
- Cloud provider management console password. Note that drift cannot currently be detected for this.
- ConsoleUsername string
- Cloud provider management console username. Note that drift cannot currently be detected for this.
- Name string
- Display name of the account.
- ProviderType string
- Cloud provider type - either AWSorGCP. Note that drift cannot currently be detected for this. Modifying this attribute will force creation of a new resource.
- SignIn stringLogin Url 
- Cloud provider management console login URL. Note that drift cannot currently be detected for this.
- Status string
- The current status of the account - draft,pendingoractive
- AccessKey stringId 
- Cloud provider access key.
- AccessSecret stringKey 
- Cloud provider secret key. Note that drift cannot currently be detected for this.
- ConsolePassword string
- Cloud provider management console password. Note that drift cannot currently be detected for this.
- ConsoleUsername string
- Cloud provider management console username. Note that drift cannot currently be detected for this.
- Name string
- Display name of the account.
- ProviderType string
- Cloud provider type - either AWSorGCP. Note that drift cannot currently be detected for this. Modifying this attribute will force creation of a new resource.
- SignIn stringLogin Url 
- Cloud provider management console login URL. Note that drift cannot currently be detected for this.
- Status string
- The current status of the account - draft,pendingoractive
- accessKey StringId 
- Cloud provider access key.
- accessSecret StringKey 
- Cloud provider secret key. Note that drift cannot currently be detected for this.
- consolePassword String
- Cloud provider management console password. Note that drift cannot currently be detected for this.
- consoleUsername String
- Cloud provider management console username. Note that drift cannot currently be detected for this.
- name String
- Display name of the account.
- providerType String
- Cloud provider type - either AWSorGCP. Note that drift cannot currently be detected for this. Modifying this attribute will force creation of a new resource.
- signIn StringLogin Url 
- Cloud provider management console login URL. Note that drift cannot currently be detected for this.
- status String
- The current status of the account - draft,pendingoractive
- accessKey stringId 
- Cloud provider access key.
- accessSecret stringKey 
- Cloud provider secret key. Note that drift cannot currently be detected for this.
- consolePassword string
- Cloud provider management console password. Note that drift cannot currently be detected for this.
- consoleUsername string
- Cloud provider management console username. Note that drift cannot currently be detected for this.
- name string
- Display name of the account.
- providerType string
- Cloud provider type - either AWSorGCP. Note that drift cannot currently be detected for this. Modifying this attribute will force creation of a new resource.
- signIn stringLogin Url 
- Cloud provider management console login URL. Note that drift cannot currently be detected for this.
- status string
- The current status of the account - draft,pendingoractive
- access_key_ strid 
- Cloud provider access key.
- access_secret_ strkey 
- Cloud provider secret key. Note that drift cannot currently be detected for this.
- console_password str
- Cloud provider management console password. Note that drift cannot currently be detected for this.
- console_username str
- Cloud provider management console username. Note that drift cannot currently be detected for this.
- name str
- Display name of the account.
- provider_type str
- Cloud provider type - either AWSorGCP. Note that drift cannot currently be detected for this. Modifying this attribute will force creation of a new resource.
- sign_in_ strlogin_ url 
- Cloud provider management console login URL. Note that drift cannot currently be detected for this.
- status str
- The current status of the account - draft,pendingoractive
- accessKey StringId 
- Cloud provider access key.
- accessSecret StringKey 
- Cloud provider secret key. Note that drift cannot currently be detected for this.
- consolePassword String
- Cloud provider management console password. Note that drift cannot currently be detected for this.
- consoleUsername String
- Cloud provider management console username. Note that drift cannot currently be detected for this.
- name String
- Display name of the account.
- providerType String
- Cloud provider type - either AWSorGCP. Note that drift cannot currently be detected for this. Modifying this attribute will force creation of a new resource.
- signIn StringLogin Url 
- Cloud provider management console login URL. Note that drift cannot currently be detected for this.
- status String
- The current status of the account - draft,pendingoractive
Import
rediscloud_cloud_account can be imported using the ID of the Cloud Account, e.g.
 $ pulumi import rediscloud:index/cloudAccount:CloudAccount example 12345678
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- rediscloud RedisLabs/pulumi-rediscloud
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the rediscloudTerraform Provider.