本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
AWS CloudFormation 文物
CodePipeline 執行管線 CodePipeline 時,對人工因素執行工作。對於 AWS CloudFormation,人工因素可以包含堆疊範本檔案、範本組態檔案或兩者。 CodePipeline 會使用這些成品來處理 AWS CloudFormation 堆疊和變更集。
如果您使用 Amazon Simple Storage Service (Amazon S3) 作為來源儲存庫,則必須先將範本和範本組態檔案壓縮為單一檔案,再將檔案上傳至 S3 儲存貯體。對於其他存放庫,例如 GitHub 和 AWS CodeCommit,上傳成品而不壓縮它們。如需詳細資訊,請參閱《AWS CodePipeline 使用指南》 CodePipeline中的〈建立管道〉。
您可以將所需數目的檔案新增至儲存庫。例如,建議您包括相同範本的兩個不同組態:一個用於測試組態,另一個用於生產組態。
本主題說明每種成品類型。
堆疊範本檔案
堆疊範本檔案會定義 AWS CloudFormation 佈建和設定的資源。這些檔案與您使用建立或更新堆疊時所使用的範本檔案相同 AWS CloudFormation。您可以使用YAML或JSON格式化的模板。如需範本的詳細資訊,請參閱範本區段。
範本組態檔案
範本組態檔是一種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" : "*" } ] } }
另請參閱
以下相關資源可協助您使用這些參數。
-
如需有關中 AWS CloudFormation 動作參數的詳細資訊 CodePipeline,請參閱《AWS CodePipeline 使用指南》中的AWS CloudFormation動作組態參考。
-
如需動作提供者的範例範本值 (例如
Owner
欄位或configuration
欄位),請參閱 AWS CodePipeline User Guide (《 使用者指南》) 中的 Action structure reference (動作結構參考)。 -
若要以YAML或JSON格式下載範例管線堆疊範本,請參閱AWS CodePipeline 使用指南 AWS CloudFormation中的建立管線下的教學課程。