A Pulumi provider SDK for creating and managing Amazon Web Services (AWS) cloud resources in Go, providing strongly-typed resource classes and data sources for all major AWS services.
Documentation for AWS CloudFormation (infrastructure stacks and stack sets) and AWS Systems Manager (SSM) Parameter Store and Documents.
cloudformation, ssmgithub.com/pulumi/pulumi-aws/sdk/v7/go/aws/cloudformationgithub.com/pulumi/pulumi-aws/sdk/v7/go/aws/ssmimport (
"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/cloudformation"
"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/ssm"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)Manages a CloudFormation Stack, allowing you to deploy AWS resources defined in a CloudFormation template. Outputs from the stack are accessible via the Outputs attribute.
func NewStack(ctx *pulumi.Context,
name string, args *StackArgs, opts ...pulumi.ResourceOption) (*Stack, error)
func GetStack(ctx *pulumi.Context,
name string, id pulumi.IDInput, state *StackState, opts ...pulumi.ResourceOption) (*Stack, error)
type Stack struct {
pulumi.CustomResourceState
// Valid values: "CAPABILITY_IAM", "CAPABILITY_NAMED_IAM", "CAPABILITY_AUTO_EXPAND"
Capabilities pulumi.StringArrayOutput `pulumi:"capabilities"`
DisableRollback pulumi.BoolPtrOutput `pulumi:"disableRollback"`
IamRoleArn pulumi.StringPtrOutput `pulumi:"iamRoleArn"`
Name pulumi.StringOutput `pulumi:"name"`
NotificationArns pulumi.StringArrayOutput `pulumi:"notificationArns"`
// Valid values: "DO_NOTHING", "ROLLBACK", "DELETE". Conflicts with DisableRollback.
OnFailure pulumi.StringPtrOutput `pulumi:"onFailure"`
// Map of outputs from the stack template
Outputs pulumi.StringMapOutput `pulumi:"outputs"`
// Map of input parameters for the stack
Parameters pulumi.StringMapOutput `pulumi:"parameters"`
PolicyBody pulumi.StringOutput `pulumi:"policyBody"`
PolicyUrl pulumi.StringPtrOutput `pulumi:"policyUrl"`
Region pulumi.StringOutput `pulumi:"region"`
Tags pulumi.StringMapOutput `pulumi:"tags"`
TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
// Template body JSON/YAML string (max 51,200 bytes)
TemplateBody pulumi.StringOutput `pulumi:"templateBody"`
// S3 URL to template (max 460,800 bytes). Conflicts with TemplateBody.
TemplateUrl pulumi.StringPtrOutput `pulumi:"templateUrl"`
TimeoutInMinutes pulumi.IntPtrOutput `pulumi:"timeoutInMinutes"`
}
type StackArgs struct {
// Valid values: "CAPABILITY_IAM", "CAPABILITY_NAMED_IAM", "CAPABILITY_AUTO_EXPAND"
Capabilities pulumi.StringArrayInput
// Set true to disable rollback on creation failure. Conflicts with OnFailure.
DisableRollback pulumi.BoolPtrInput
IamRoleArn pulumi.StringPtrInput
Name pulumi.StringPtrInput
NotificationArns pulumi.StringArrayInput
// Valid values: "DO_NOTHING", "ROLLBACK", "DELETE"
OnFailure pulumi.StringPtrInput
Parameters pulumi.StringMapInput
PolicyBody pulumi.StringPtrInput
PolicyUrl pulumi.StringPtrInput
Region pulumi.StringPtrInput
Tags pulumi.StringMapInput
TemplateBody pulumi.StringPtrInput
TemplateUrl pulumi.StringPtrInput
TimeoutInMinutes pulumi.IntPtrInput
}Manages a CloudFormation StackSet for deploying stacks across multiple AWS accounts and regions.
func NewStackSet(ctx *pulumi.Context,
name string, args *StackSetArgs, opts ...pulumi.ResourceOption) (*StackSet, error)
func GetStackSet(ctx *pulumi.Context,
name string, id pulumi.IDInput, state *StackSetState, opts ...pulumi.ResourceOption) (*StackSet, error)
type StackSet struct {
pulumi.CustomResourceState
// Required for SELF_MANAGED permission model
AdministrationRoleArn pulumi.StringPtrOutput `pulumi:"administrationRoleArn"`
Arn pulumi.StringOutput `pulumi:"arn"`
// SERVICE_MANAGED only
AutoDeployment StackSetAutoDeploymentPtrOutput `pulumi:"autoDeployment"`
// Valid values: "SELF" (default), "DELEGATED_ADMIN"
CallAs pulumi.StringPtrOutput `pulumi:"callAs"`
// Valid values: "CAPABILITY_IAM", "CAPABILITY_NAMED_IAM", "CAPABILITY_AUTO_EXPAND"
Capabilities pulumi.StringArrayOutput `pulumi:"capabilities"`
Description pulumi.StringPtrOutput `pulumi:"description"`
// Default: "AWSCloudFormationStackSetExecutionRole" for SELF_MANAGED
ExecutionRoleName pulumi.StringOutput `pulumi:"executionRoleName"`
ManagedExecution StackSetManagedExecutionPtrOutput `pulumi:"managedExecution"`
Name pulumi.StringOutput `pulumi:"name"`
OperationPreferences StackSetOperationPreferencesPtrOutput `pulumi:"operationPreferences"`
Parameters pulumi.StringMapOutput `pulumi:"parameters"`
// Valid values: "SELF_MANAGED" (default), "SERVICE_MANAGED"
PermissionModel pulumi.StringPtrOutput `pulumi:"permissionModel"`
Region pulumi.StringOutput `pulumi:"region"`
StackSetId pulumi.StringOutput `pulumi:"stackSetId"`
Tags pulumi.StringMapOutput `pulumi:"tags"`
TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
TemplateBody pulumi.StringOutput `pulumi:"templateBody"`
TemplateUrl pulumi.StringPtrOutput `pulumi:"templateUrl"`
}Retrieves outputs and metadata from an existing CloudFormation stack.
func LookupStack(ctx *pulumi.Context, args *LookupStackArgs, opts ...pulumi.InvokeOption) (*LookupStackResult, error)
type LookupStackArgs struct {
// Name of the stack
Name string `pulumi:"name"`
Region *string `pulumi:"region"`
Tags map[string]string `pulumi:"tags"`
}
type LookupStackResult struct {
Capabilities []string `pulumi:"capabilities"`
Description string `pulumi:"description"`
DisableRollback bool `pulumi:"disableRollback"`
IamRoleArn string `pulumi:"iamRoleArn"`
Id string `pulumi:"id"`
Name string `pulumi:"name"`
NotificationArns []string `pulumi:"notificationArns"`
// Map of stack outputs
Outputs map[string]string `pulumi:"outputs"`
Parameters map[string]string `pulumi:"parameters"`
Region string `pulumi:"region"`
Tags map[string]string `pulumi:"tags"`
TemplateBody string `pulumi:"templateBody"`
TimeoutInMinutes int `pulumi:"timeoutInMinutes"`
}// Resources
func NewStack(ctx *pulumi.Context, name string, args *StackArgs, opts ...pulumi.ResourceOption) (*Stack, error)
func NewStackSet(ctx *pulumi.Context, name string, args *StackSetArgs, opts ...pulumi.ResourceOption) (*StackSet, error)
func NewStackInstances(ctx *pulumi.Context, name string, args *StackInstancesArgs, opts ...pulumi.ResourceOption) (*StackInstances, error)
func NewStackSetInstance(ctx *pulumi.Context, name string, args *StackSetInstanceArgs, opts ...pulumi.ResourceOption) (*StackSetInstance, error)
func NewCloudFormationType(ctx *pulumi.Context, name string, args *CloudFormationTypeArgs, opts ...pulumi.ResourceOption) (*CloudFormationType, error)
// Data sources
func LookupStack(ctx *pulumi.Context, args *LookupStackArgs, opts ...pulumi.InvokeOption) (*LookupStackResult, error)
func GetStackSet(ctx *pulumi.Context, args *GetStackSetArgs, opts ...pulumi.InvokeOption) (*GetStackSetResult, error)
func GetStackInstances(ctx *pulumi.Context, args *GetStackInstancesArgs, opts ...pulumi.InvokeOption) (*GetStackInstancesResult, error)
func GetStackSetInstance(ctx *pulumi.Context, args *GetStackSetInstanceArgs, opts ...pulumi.InvokeOption) (*GetStackSetInstanceResult, error)
func GetExport(ctx *pulumi.Context, args *GetExportArgs, opts ...pulumi.InvokeOption) (*GetExportResult, error)
func GetCloudFormationType(ctx *pulumi.Context, args *GetCloudFormationTypeArgs, opts ...pulumi.InvokeOption) (*GetCloudFormationTypeResult, error)Manages SSM Parameter Store values for configuration data and secrets. Supports String, StringList, and SecureString (KMS-encrypted) types.
func NewParameter(ctx *pulumi.Context,
name string, args *ParameterArgs, opts ...pulumi.ResourceOption) (*Parameter, error)
func GetParameter(ctx *pulumi.Context,
name string, id pulumi.IDInput, state *ParameterState, opts ...pulumi.ResourceOption) (*Parameter, error)
type Parameter struct {
pulumi.CustomResourceState
AllowedPattern pulumi.StringPtrOutput `pulumi:"allowedPattern"`
Arn pulumi.StringOutput `pulumi:"arn"`
// Valid values: "text", "aws:ssm:integration", "aws:ec2:image"
DataType pulumi.StringOutput `pulumi:"dataType"`
Description pulumi.StringPtrOutput `pulumi:"description"`
HasValueWo pulumi.BoolOutput `pulumi:"hasValueWo"`
// Insecure plain-text value. Not valid with type "SecureString".
InsecureValue pulumi.StringOutput `pulumi:"insecureValue"`
// KMS key ID or ARN for SecureString encryption
KeyId pulumi.StringOutput `pulumi:"keyId"`
Name pulumi.StringOutput `pulumi:"name"`
Overwrite pulumi.BoolPtrOutput `pulumi:"overwrite"`
Region pulumi.StringOutput `pulumi:"region"`
Tags pulumi.StringMapOutput `pulumi:"tags"`
TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
// Valid values: "Standard", "Advanced", "Intelligent-Tiering"
Tier pulumi.StringOutput `pulumi:"tier"`
// Required. Valid values: "String", "StringList", "SecureString"
Type pulumi.StringOutput `pulumi:"type"`
// Always shown as sensitive in preview output
Value pulumi.StringOutput `pulumi:"value"`
// Write-only field; never stored in state
ValueWo pulumi.StringPtrOutput `pulumi:"valueWo"`
ValueWoVersion pulumi.IntPtrOutput `pulumi:"valueWoVersion"`
Version pulumi.IntOutput `pulumi:"version"`
}
type ParameterArgs struct {
AllowedPattern pulumi.StringPtrInput
Arn pulumi.StringPtrInput
// Valid values: "text", "aws:ssm:integration", "aws:ec2:image"
DataType pulumi.StringPtrInput
Description pulumi.StringPtrInput
// Insecure plain-text value. Not valid with type "SecureString".
InsecureValue pulumi.StringPtrInput
KeyId pulumi.StringPtrInput
// Path parameters must start with "/" (e.g., "/myapp/db/password")
Name pulumi.StringPtrInput
Overwrite pulumi.BoolPtrInput
Region pulumi.StringPtrInput
Tags pulumi.StringMapInput
// Valid values: "Standard", "Advanced", "Intelligent-Tiering"
Tier pulumi.StringPtrInput
// Required. Valid values: "String", "StringList", "SecureString"
Type pulumi.StringInput
Value pulumi.StringPtrInput
// Write-only. Use with ValueWoVersion to trigger updates.
ValueWo pulumi.StringPtrInput
ValueWoVersion pulumi.IntPtrInput
}Manages SSM Documents which define runbooks or configuration for running commands, automations, and other operations on managed instances.
func NewDocument(ctx *pulumi.Context,
name string, args *DocumentArgs, opts ...pulumi.ResourceOption) (*Document, error)
func GetDocument(ctx *pulumi.Context,
name string, id pulumi.IDInput, state *DocumentState, opts ...pulumi.ResourceOption) (*Document, error)
type Document struct {
pulumi.CustomResourceState
Arn pulumi.StringOutput `pulumi:"arn"`
AttachmentsSources DocumentAttachmentsSourceArrayOutput `pulumi:"attachmentsSources"`
// JSON or YAML content (max 64KB)
Content pulumi.StringOutput `pulumi:"content"`
CreatedDate pulumi.StringOutput `pulumi:"createdDate"`
DefaultVersion pulumi.StringOutput `pulumi:"defaultVersion"`
Description pulumi.StringOutput `pulumi:"description"`
// Valid values: "JSON" (default), "TEXT", "YAML"
DocumentFormat pulumi.StringPtrOutput `pulumi:"documentFormat"`
// See AWS API Reference for valid document types
DocumentType pulumi.StringOutput `pulumi:"documentType"`
DocumentVersion pulumi.StringOutput `pulumi:"documentVersion"`
Hash pulumi.StringOutput `pulumi:"hash"`
HashType pulumi.StringOutput `pulumi:"hashType"`
LatestVersion pulumi.StringOutput `pulumi:"latestVersion"`
Name pulumi.StringOutput `pulumi:"name"`
Owner pulumi.StringOutput `pulumi:"owner"`
Parameters DocumentParameterArrayOutput `pulumi:"parameters"`
Permissions pulumi.StringMapOutput `pulumi:"permissions"`
// Valid values: "Windows", "Linux", "MacOS"
PlatformTypes pulumi.StringArrayOutput `pulumi:"platformTypes"`
Region pulumi.StringOutput `pulumi:"region"`
SchemaVersion pulumi.StringOutput `pulumi:"schemaVersion"`
// Valid values: "Creating", "Active", "Updating", "Deleting", "Failed"
Status pulumi.StringOutput `pulumi:"status"`
Tags pulumi.StringMapOutput `pulumi:"tags"`
TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
TargetType pulumi.StringPtrOutput `pulumi:"targetType"`
VersionName pulumi.StringPtrOutput `pulumi:"versionName"`
}
type DocumentArgs struct {
AttachmentsSources DocumentAttachmentsSourceArrayInput
Content pulumi.StringInput
// Valid values: "JSON" (default), "TEXT", "YAML"
DocumentFormat pulumi.StringPtrInput
// e.g., "Command", "Automation", "Package", "Session", "Policy"
DocumentType pulumi.StringInput
Name pulumi.StringPtrInput
Permissions pulumi.StringMapInput
Region pulumi.StringPtrInput
Tags pulumi.StringMapInput
TargetType pulumi.StringPtrInput
VersionName pulumi.StringPtrInput
}Retrieves the value of an SSM parameter by name. Use name:version format to retrieve a specific version.
func LookupParameter(ctx *pulumi.Context, args *LookupParameterArgs, opts ...pulumi.InvokeOption) (*LookupParameterResult, error)
type LookupParameterArgs struct {
// Parameter name. Use "name:version" (e.g., "foo:3") to retrieve a specific version.
Name string `pulumi:"name"`
Region *string `pulumi:"region"`
// Whether to decrypt SecureString values. Default: true.
WithDecryption *bool `pulumi:"withDecryption"`
}
type LookupParameterResult struct {
Arn string `pulumi:"arn"`
Id string `pulumi:"id"`
Name string `pulumi:"name"`
Type string `pulumi:"type"`
Value string `pulumi:"value"`
Version int `pulumi:"version"`
WithDecryption bool `pulumi:"withDecryption"`
}Retrieves all SSM parameters under a given path hierarchy.
func GetParametersByPath(ctx *pulumi.Context, args *GetParametersByPathArgs, opts ...pulumi.InvokeOption) (*GetParametersByPathResult, error)
type GetParametersByPathArgs struct {
// The hierarchy prefix path (e.g., "/myapp/production/").
// Note: specifying a full parameter name will not retrieve its value unless
// other parameters use it as a path prefix.
Path string `pulumi:"path"`
// Whether to retrieve parameters recursively. Default: false.
Recursive *bool `pulumi:"recursive"`
Region *string `pulumi:"region"`
// Whether to decrypt SecureString values. Default: true.
WithDecryption *bool `pulumi:"withDecryption"`
}
type GetParametersByPathResult struct {
Arns []string `pulumi:"arns"`
Id string `pulumi:"id"`
Names []string `pulumi:"names"`
Path string `pulumi:"path"`
Recursive bool `pulumi:"recursive"`
Region string `pulumi:"region"`
// Map of parameter name to value
Values []string `pulumi:"values"`
WithDecryption bool `pulumi:"withDecryption"`
Types []string `pulumi:"types"`
}// Resources
func NewParameter(ctx *pulumi.Context, name string, args *ParameterArgs, opts ...pulumi.ResourceOption) (*Parameter, error)
func NewDocument(ctx *pulumi.Context, name string, args *DocumentArgs, opts ...pulumi.ResourceOption) (*Document, error)
func NewActivation(ctx *pulumi.Context, name string, args *ActivationArgs, opts ...pulumi.ResourceOption) (*Activation, error)
func NewAssociation(ctx *pulumi.Context, name string, args *AssociationArgs, opts ...pulumi.ResourceOption) (*Association, error)
func NewDefaultPatchBaseline(ctx *pulumi.Context, name string, args *DefaultPatchBaselineArgs, opts ...pulumi.ResourceOption) (*DefaultPatchBaseline, error)
func NewMaintenanceWindow(ctx *pulumi.Context, name string, args *MaintenanceWindowArgs, opts ...pulumi.ResourceOption) (*MaintenanceWindow, error)
func NewMaintenanceWindowTarget(ctx *pulumi.Context, name string, args *MaintenanceWindowTargetArgs, opts ...pulumi.ResourceOption) (*MaintenanceWindowTarget, error)
func NewMaintenanceWindowTask(ctx *pulumi.Context, name string, args *MaintenanceWindowTaskArgs, opts ...pulumi.ResourceOption) (*MaintenanceWindowTask, error)
func NewPatchBaseline(ctx *pulumi.Context, name string, args *PatchBaselineArgs, opts ...pulumi.ResourceOption) (*PatchBaseline, error)
func NewPatchGroup(ctx *pulumi.Context, name string, args *PatchGroupArgs, opts ...pulumi.ResourceOption) (*PatchGroup, error)
func NewResourceDataSync(ctx *pulumi.Context, name string, args *ResourceDataSyncArgs, opts ...pulumi.ResourceOption) (*ResourceDataSync, error)
func NewServiceSetting(ctx *pulumi.Context, name string, args *ServiceSettingArgs, opts ...pulumi.ResourceOption) (*ServiceSetting, error)
func NewContactsRotation(ctx *pulumi.Context, name string, args *ContactsRotationArgs, opts ...pulumi.ResourceOption) (*ContactsRotation, error)
func NewQuicksetupConfigurationManager(ctx *pulumi.Context, name string, args *QuicksetupConfigurationManagerArgs, opts ...pulumi.ResourceOption) (*QuicksetupConfigurationManager, error)
// Data sources
func LookupParameter(ctx *pulumi.Context, args *LookupParameterArgs, opts ...pulumi.InvokeOption) (*LookupParameterResult, error)
func GetParametersByPath(ctx *pulumi.Context, args *GetParametersByPathArgs, opts ...pulumi.InvokeOption) (*GetParametersByPathResult, error)
func GetActivation(ctx *pulumi.Context, args *GetActivationArgs, opts ...pulumi.InvokeOption) (*GetActivationResult, error)
func GetAssociation(ctx *pulumi.Context, args *GetAssociationArgs, opts ...pulumi.InvokeOption) (*GetAssociationResult, error)
func GetDocument(ctx *pulumi.Context, args *GetDocumentArgs, opts ...pulumi.InvokeOption) (*GetDocumentResult, error)
func GetInstances(ctx *pulumi.Context, args *GetInstancesArgs, opts ...pulumi.InvokeOption) (*GetInstancesResult, error)
func GetMaintenanceWindow(ctx *pulumi.Context, args *GetMaintenanceWindowArgs, opts ...pulumi.InvokeOption) (*GetMaintenanceWindowResult, error)
func GetMaintenanceWindows(ctx *pulumi.Context, args *GetMaintenanceWindowsArgs, opts ...pulumi.InvokeOption) (*GetMaintenanceWindowsResult, error)
func GetPatchBaseline(ctx *pulumi.Context, args *GetPatchBaselineArgs, opts ...pulumi.InvokeOption) (*GetPatchBaselineResult, error)
func GetPatchBaselines(ctx *pulumi.Context, args *GetPatchBaselinesArgs, opts ...pulumi.InvokeOption) (*GetPatchBaselinesResult, error)
func GetDefaultPatchBaseline(ctx *pulumi.Context, args *GetDefaultPatchBaselineArgs, opts ...pulumi.InvokeOption) (*GetDefaultPatchBaselineResult, error)
func GetServiceSetting(ctx *pulumi.Context, args *GetServiceSettingArgs, opts ...pulumi.InvokeOption) (*GetServiceSettingResult, error)
func GetContactsRotation(ctx *pulumi.Context, args *GetContactsRotationArgs, opts ...pulumi.InvokeOption) (*GetContactsRotationResult, error)package main
import (
"encoding/json"
"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/cloudformation"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
template, _ := json.Marshal(map[string]interface{}{
"Parameters": map[string]interface{}{
"VPCCidr": map[string]interface{}{
"Type": "String",
"Default": "10.0.0.0/16",
},
},
"Resources": map[string]interface{}{
"myVpc": map[string]interface{}{
"Type": "AWS::EC2::VPC",
"Properties": map[string]interface{}{
"CidrBlock": map[string]interface{}{"Ref": "VPCCidr"},
},
},
},
})
stack, err := cloudformation.NewStack(ctx, "network", &cloudformation.StackArgs{
Name: pulumi.String("networking-stack"),
Parameters: pulumi.StringMap{
"VPCCidr": pulumi.String("10.0.0.0/16"),
},
TemplateBody: pulumi.String(string(template)),
Tags: pulumi.StringMap{
"Environment": pulumi.String("production"),
},
})
if err != nil {
return err
}
ctx.Export("vpcId", stack.Outputs.ApplyT(func(outputs map[string]string) string {
return outputs["VpcId"]
}).(pulumi.StringOutput))
return nil
})
}network, err := cloudformation.LookupStack(ctx, &cloudformation.LookupStackArgs{
Name: "my-network-stack",
}, nil)
if err != nil {
return err
}
// Access stack outputs
subnetId := network.Outputs["SubnetId"]package main
import (
"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/ssm"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// Create a SecureString parameter
_, err := ssm.NewParameter(ctx, "dbPassword", &ssm.ParameterArgs{
Name: pulumi.String("/production/database/password"),
Description: pulumi.String("Database master password"),
Type: pulumi.String(ssm.ParameterTypeSecureString),
Value: pulumi.String("supersecret"),
Tags: pulumi.StringMap{
"Environment": pulumi.String("production"),
},
})
if err != nil {
return err
}
// Read an existing parameter
param, err := ssm.LookupParameter(ctx, &ssm.LookupParameterArgs{
Name: "/production/database/host",
WithDecryption: pulumi.BoolRef(true),
}, nil)
if err != nil {
return err
}
ctx.Export("dbHost", pulumi.String(param.Value))
return nil
})
}// Retrieve all parameters under a path
params, err := ssm.GetParametersByPath(ctx, &ssm.GetParametersByPathArgs{
Path: "/production/database/",
Recursive: pulumi.BoolRef(true),
}, nil)
if err != nil {
return err
}
// params.Names contains all parameter names
// params.Values contains all parameter values_, err = ssm.NewDocument(ctx, "installPkg", &ssm.DocumentArgs{
Name: pulumi.String("install-package"),
DocumentType: pulumi.String("Command"),
Content: pulumi.String(`{
"schemaVersion": "2.2",
"description": "Install a package",
"parameters": {},
"mainSteps": [
{
"action": "aws:runShellScript",
"name": "installPackage",
"inputs": {
"runCommand": ["yum install -y httpd"]
}
}
]
}`),
})Install with Tessl CLI
npx tessl i tessl/golang-github-com-pulumi-pulumi-aws-sdk-v7docs