本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用截止日期雲端自動化套件建置
對於 CI/CD 工作流程或當您需要為多個作業系統建置套件時,您可以建立截止日期雲端套件建置佇列。佇列排程在機群上建置任務,這會建置套件並將其發佈到您的 Amazon Simple Storage Service (Amazon S3) Conda 頻道。這可簡化維護所有所需組態中軟體版本的持續套件建置。
您可以使用 AWS CloudFormation (CloudFormation) 範本,或從截止日期雲端主控台手動建立套件建置佇列。 CloudFormation 範本會使用生產佇列和已設定的套件建置佇列來部署完整的陣列。從主控台建立佇列可讓您進一步控制個別設定。
使用 建立套件建置佇列 CloudFormation
您可以使用 CloudFormation 範本來建立包含套件建置佇列的截止日期雲端陣列。範本會使用私有 Amazon S3 Conda 頻道設定生產佇列和套件建置佇列。
部署範本之前,請建立 Amazon S3 儲存貯體以保留任務附件和您的 conda 頻道。您可以從 Amazon S3 主控台
部署 CloudFormation 範本
-
從 上的 Deadline Cloud 範例
儲存庫下載 deadline-cloud-starter-farm-template.yaml 範本GitHub。 -
從CloudFormation 主控台
中,選擇建立堆疊,然後選擇使用新資源 (標準)。 -
選取 選項以上傳範本檔案,然後上傳
deadline-cloud-starter-farm-template.yaml檔案。 -
輸入堆疊的名稱,例如
StarterFarm,並提供任務附件的 Amazon S3 儲存貯體名稱和 conda 頻道。 -
請依照 CloudFormation 主控台步驟完成堆疊建立。
如需範本參數和自訂選項的詳細資訊,請參閱 上 Deadline Cloud 範例儲存庫中的入門陣列 README
從主控台建立套件建置佇列
遵循在截止日期雲端使用者指南中建立佇列中的指示。進行下列變更:
-
在步驟 5 中,選擇現有的 Amazon S3 儲存貯體。指定根資料夾名稱,例如 ,
DeadlineCloudPackageBuild以便建置成品與您一般的截止日期雲端附件保持獨立。 -
在步驟 6 中,您可以將套件建置佇列與現有機群建立關聯,或者如果目前的機群不適合,則可以建立全新的機群。
-
在步驟 9 中,為套件建置佇列建立新的服務角色。您將修改許可,為佇列提供上傳套件和重新索引 conda 頻道所需的許可。
設定套件建置佇列許可
若要允許套件建置佇列存取佇列 Amazon S3 儲存貯體中的/Conda字首,您必須修改佇列的角色,以授予其讀取/寫入存取權。角色需要下列許可,套件建置任務才能上傳新套件並重新索引頻道。
-
s3:GetObject -
s3:PutObject -
s3:ListBucket -
s3:GetBucketLocation -
s3:DeleteObject
-
開啟截止日期雲端主控台,並導覽至套件建置佇列的佇列詳細資訊頁面。
-
選擇佇列服務角色,然後選擇編輯佇列。
-
捲動至佇列服務角色區段,然後在 IAM 主控台中選擇檢視此角色。
-
從許可政策清單中,為您的佇列選擇 AmazonDeadlineCloudQueuePolicy。
-
從許可索引標籤中,選擇編輯。
-
將新區段新增至佇列服務角色,如下所示。將
amzn-s3-demo-bucket和111122223333取代為您自己的儲存貯體和帳戶。{ "Effect": "Allow", "Sid": "CustomCondaChannelReadWrite", "Action": [ "s3:GetObject", "s3:PutObject", "s3:DeleteObject", "s3:ListBucket", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket", "arn:aws:s3:::amzn-s3-demo-bucket/Conda/*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "111122223333" } } },
提交套件建置任務
建立套件建置佇列並設定佇列許可後,您可以提交任務來建置 conda 套件。上的 Deadline Cloud 範例submit-package-job指令碼會GitHub提交 conda 配方的建置任務。
您需要下列項目:
-
安裝在工作站上的截止日期雲端 CLI
。 -
作用中AWS 的截止日期雲端監控 (截止日期雲端監控) 登入工作階段。
-
截止日期雲端範例
儲存庫的複製。
提交套件建置任務
-
開啟截止日期雲端組態 GUI,並將預設陣列和佇列設定為套件建置佇列。
deadline config gui -
變更為範例儲存庫中的
conda_recipes目錄。cd deadline-cloud-samples/conda_recipes -
使用配方目錄執行
submit-package-job指令碼。下列範例會建置 Blender 4.5 配方。./submit-package-job blender-4.5/如果配方需要您尚未下載的來源封存,指令碼會提供下載指示。下載封存並再次執行指令碼。
提交任務之後,請使用截止日期雲端監視器來檢視任務的進度和狀態。
監視器會顯示任務的兩個步驟:建置套件,然後重新索引 conda 頻道。當您在套件建置步驟的任務上按一下滑鼠右鍵並選擇檢視日誌時,監視器會顯示工作階段動作:
-
同步附件 – 複製輸入任務附件或掛載虛擬檔案系統。
-
啟動 Conda – 佇列環境動作。建置任務不會指定 conda 套件,因此此動作會快速完成。
-
啟動 CondaBuild Env – 使用建置 conda 套件和重新索引頻道所需的軟體建立 conda 虛擬環境。
-
任務執行 – 建置套件並將結果上傳至 Amazon S3。
當動作執行時,它們會將日誌傳送至 Amazon CloudWatch (CloudWatch)。當任務完成時,選取檢視所有任務的日誌,以查看有關環境設定和縮減的其他日誌。