如何使用AWS Cloudformation中的create-change-set创建新堆栈

时间:2018-03-27 13:12:23

标签: amazon-web-services amazon-cloudformation changeset

我能够在现有AWS堆栈上使用更改集。我读了这个doc,似乎也可以为新堆栈创建一个更改集。

现在我尝试使用CLI:

aws cloudformation create-change-set --change-set-name ChangeSet-82 --stack-name test-bucket-xx --region eu-west-1 --template-body file://xxx

这会返回错误:

An error occurred (ValidationError) when calling the CreateChangeSet operation: Stack [test-bucket-xx] does not exist.

我在这里缺少什么?

1 个答案:

答案 0 :(得分:3)

更改集操作的类型。要为新堆栈创建更改集,请指定CREATE。要为现有堆栈创建更改集,请指定UPDATE。

struct Book {
    let id: Int
    var title = "default"

    init (id: Int) {
        self.id = id
    }
}
var arrayBook = [Book]()
arrayBook.append(Book(id: 0))
arrayBook.append(Book(id:1))
arrayBook.forEach { book in
    print(book.title)
}

arrayBook = arrayBook.map{
    var mutableBook = $0
    if $0.id == 1 {
        mutableBook.title = "modified"
    }
    return mutableBook
}

arrayBook.forEach { book in
    print(book.title)
}

Source

  

为不存在的堆栈创建更改集   change-set-type参数,指定CREATE。要为其创建更改集   现有堆栈,为change-set-type参数指定UPDATE。   在create-change-set调用成功完成后,AWS   CloudFormation开始创建更改集。检查状态   更改集或查看它,使用describe-change-set操作。