本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
AWS CloudFormation 成品
CodePipeline 會在執行管道時對成品 CodePipeline 執行任務。對於 AWS CloudFormation,成品可以包含堆疊範本檔案、範本組態檔案或兩者。 CodePipeline 使用這些成品來使用 AWS CloudFormation 堆疊和變更集。
如果您使用 Amazon Simple Storage Service (Amazon S3) 作為來源儲存庫,則必須先將範本和範本組態檔案壓縮為單一檔案,再將檔案上傳至 S3 儲存貯體。對於其他儲存庫,例如 GitHub 和 AWS CodeCommit,上傳成品而不壓縮它們。如需詳細資訊,請參閱AWS CodePipeline 《 使用者指南》中的建立管道、階段和動作。
您可以將所需數目的檔案新增至儲存庫。例如,建議您包括相同範本的兩個不同組態:一個用於測試組態,另一個用於生產組態。
本主題說明每種成品類型。
堆疊範本檔案
堆疊範本檔案會定義 AWS CloudFormation 佈建和設定的資源。這些檔案與您使用 建立或更新堆疊時所使用的範本檔案相同 AWS CloudFormation。您可以使用 JSONYAML或 格式的範本。如需範本的詳細資訊,請參閱CloudFormation 範本區段。
範本組態檔案
範本組態檔案是 JSON格式化的文字檔案,可指定範本參數值、堆疊政策和標籤。使用這些組態檔案,以指定參數值或堆疊的堆疊政策。您指定的所有參數值都必須宣告於相關聯的範本中。
若您在檔案包含敏感資訊 —例如密碼— 請限制此檔案的存取。例如,如果您將成品上傳至 S3 儲存貯體,則請使用 S3 儲存貯體政策或使用者政策來限制存取權。
若要建立組態檔案,請使用下列格式:
{ "Parameters" : { "
NameOfTemplateParameter
" : "ValueOfParameter
", ... }, "Tags" : { "TagKey
" : "TagValue
", ... }, "StackPolicy" : { "Statement" : [StackPolicyStatement
] } }
下列範例指定 TestEC2Key
參數的 KeyName
,並新增值為 Department
的 Marketing
標籤,然後新增允許所有更新動作的堆疊政策,但刪除資源的更新除外。
{ "Parameters" : { "KeyName" : "TestEC2Key" }, "Tags" : { "Department" : "Marketing" }, "StackPolicy" : { "Statement" : [ { "Effect" : "Allow", "NotAction" : "Update:Delete", "Principal": "*", "Resource" : "*" } ] } }
另請參閱
以下相關資源可協助您使用這些參數。
-
如需 中 CloudFormation 動作參數的詳細資訊 CodePipeline,請參閱AWS CodePipeline 《 使用者指南》中的AWS CloudFormation 部署動作組態參考。
-
如需動作提供者的範例範本值 (例如
Owner
欄位或configuration
欄位),請參閱 AWS CodePipeline User Guide (《 使用者指南》) 中的 Action structure reference (動作結構參考)。 -
若要下載 YAML或 JSON 格式的範例管道堆疊範本,請參閱 AWS CodePipeline 使用者指南中的教學:使用 建立管道 AWS CloudFormation。