Cloudformation 元数据命令

Cloudformation metadata commands

我正在尝试学习 Cloudformation。 有人可以向我解释为什么 1-install-roles 的编号是“1”吗? 这行是做什么的 "if not \"None\" EQU \"",

Resource("WindowsServer") do
    Type("AWS::EC2::Instance")
    Metadata("AWS::CloudFormation::Init", {
  "config" => {
    "commands" => {
      "1-install-roles"    => {
        "command" => FnJoin("", [
  "if not \"None\" EQU \"",
  Ref("Roles"),
  "\" (powershell.exe add-windowsfeature ",
  Ref("Roles"),
  " -restart)"
])

1- 用于排序以确保先执行命令。它按字母顺序执行。 if not \"None\" EQU \" 位是 windows 批处理脚本。EQU 是一个比较运算符,表示 "equal".

假设引用角色 returns 字符串 "Something",执行的命令将是:

if not "None" EQU "Something" "(powershell.exe add-windowsfeature Something -restart)"