新增資源到專案 - AWS CodeStar

2024 年 7 月 31 日,Amazon Web Services (AWS) 將停止建立和檢視AWS CodeStar專案的支援。2024 年 7 月 31 日之後,您將無法再存取AWS CodeStar主控台或建立新專案。但是AWS CodeStar,由建立的AWS資源 (包括您的來源儲存庫、管道和組建) 將不受此變更的影響,並將繼續運作。 AWS CodeStar連線和AWS CodeStar通知不會受到此停止的影響。

 

如果您想要追蹤工作、開發程式碼以及建置、測試和部署應用程式,Amazon CodeCatalyst 提供簡化的入門程序和其他功能來管理軟體專案。進一步了解 Amazon 的功能定價 CodeCatalyst。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

新增資源到專案

所有專案的每個AWS CodeStar範本都附有一個AWS CloudFormation檔案,該檔案會建立應用程式的AWS執行階段相依性,例如資料庫資料表和 Lambda 函數。此檔案存放於檔案 /template.yml 中的來源儲存庫。

注意

您可以對以下專案使用這些步驟,使用下列建立的專案支援變更:

  • 任何 Lambda 專案。

  • 對於 2018 年 8 月 3 日之後建立的 Amazon EC2 或 Elastic Beanstalk 專案,在專案儲存庫中AWS CodeStar佈建/template.yml檔案。

您可以藉由新增 AWS CloudFormation 資源到 Resources 部分來修改此檔案。修改 template.yml 檔案允許 AWS CodeStar 和 AWS CloudFormation 將新資源加入到您的專案。某些資源會要求您將其他權限新增至專案 CloudFormation 背景工作者角色的原則。如需範本元素和格式的詳細資訊,請參閱AWS資源類型參考

在判斷哪些資源必須新增到專案之後,需遵循這些高階步驟來自訂範本。如需AWS CloudFormation資源及其必要屬性的清單,請參閱AWS資源類型參考

使用本節中的步驟修改AWS CodeStar專案範本以新增資源,然後在 IAM 中展開專案 CloudFormation 背景工作者角色的許可。在此範例中,會將AWS::SQS::Queue資源新增至template.yml檔案。變更會啟動自動回應AWS CloudFormation,將 Amazon 簡單佇列服務佇列新增至您的專案。

步驟 1:在 IAM 中編輯 CloudFormation背景工作角色

您必須以系統管理員身分登入,才能執行步驟 1 和 5。

注意

如果您的專案是使用許可界限政策來佈建,則可以略過此步驟。

對於在 2018 年 12 月 6 日 (PDT) 之後建立的專案,請使用權限界限原則AWS CodeStar佈建您的專案。

  1. 請登入AWS Management Console並開啟AWS CodeStar主控台,網址為 https://console.aws.amazon.com/codestar/

  2. 建立專案或選擇使用 template.yml file 的現有專案,然後開啟 Project resources (​專案資源) 頁面。

  3. 在「專案資源」下,找出資源清單中為 CodeStarWorker/AWS CloudFormation角色建立的 IAM 角色。該角色名稱遵循此格式:role/CodeStarWorker-Project_name-CloudFormation

  4. 在 IAM 主控台開啟該角色。在 ​Permissions (許可) 標籤上,擴展 Inline Policies (內嵌政策)的服務角色政策列,並選擇 Edit Policy (編輯政策)

  5. 選擇 JSON 標籤以編輯政策。

    注意

    連接至工作者角色的政策是 CodeStarWorkerCloudFormationRolePolicy

  6. JSON 欄位中,在 Statement 元素中新增下列政策聲明:

    { "Action": [ "sqs:CreateQueue", "sqs:DeleteQueue", "sqs:GetQueueAttributes", "sqs:SetQueueAttributes", "sqs:ListQueues", "sqs:GetQueueUrl" ], "Resource": [ "*" ], "Effect": "Allow" }
  7. 選擇 Review policy (檢閱政策) 以確保政策沒有包含錯誤,然後選擇 Save changes (儲存變更)

步驟 2:修改 template.yml 檔案

  1. 請在以下位置開啟AWS CodeStar主控台。 https://console.aws.amazon.com/codestar/

  2. 選擇您的無伺服器專案,然後開啟程式碼頁面。在最高階的儲存庫中,記下 template.yml 的位置。

  3. 使用 IDE、主控台或本機儲存庫的命令列來編輯儲存庫中的 template.yml 檔案。將資源貼到 Resources 部分。在本範例中,當以下文字被複製,便會新增 Resources 部分。

    Resources: TestQueue: Type: AWS::SQS::Queue

    此範例顯示修改過的範本:

步驟 3:遞交和推送您的範本變更

  • 遞交和推送在步驟 2 儲存的 template.yml 檔案中的變更。

    注意

    此會啟動您的管道。如果您在更新 IAM 許可之前遞交變更,您的管道開始執行,且 AWS CloudFormation 堆疊更新發生錯誤,造成堆疊更新會還原。如果發生這種情況,請修正權限,然後重新啟動您的管道。

步驟 4:監視 AWS CloudFormation 堆疊更新

  1. 當專案的管道啟動部署階段,AWS CloudFormation 堆疊更新便會開始。您可以在您的 AWS CodeStar 儀表板上的管道中選擇 AWS CloudFormation 階段,以查看堆疊更新。

    故障診斷:

    如果所需的資源許可權遺失,堆疊更新會失敗。在 AWS CodeStar 儀表板查看您專案的管道的故障狀態。

    選擇管道部署階段中的CloudFormation連結,以便在AWS CloudFormation主控台中對故障進行疑難排解。在主控台的 Events (事件) 清單中,選擇您的專案以檢視堆疊建立詳細資訊。有一個訊息顯示故障詳細資訊。在此範例中,sqs:CreateQueue 許可遺失。

    透過編輯連接到您專案的 AWS CloudFormation 工作者角色之政策來新增任何遺失的許可。請參閱 步驟 1:在 IAM 中編輯 CloudFormation背景工作角色

  2. 成功執行您的管道之後,AWS CloudFormation 堆疊中會建立資源。在的 [資源] 清單中AWS CloudFormation,檢視為您的專案建立的資源。在此範例中, TestQueue佇列會列在 [資源] 區段中。

    佇列 URL 可用於 AWS CloudFormation。佇列 URL 遵循以下格式:

    https://{REGION_ENDPOINT}/queue.|api-domain|/{YOUR_ACCOUNT_NUMBER}/{YOUR_QUEUE_NAME}

    如需詳細資訊,請參閱傳送 Amazon SQS 訊息接收來自 Amazon SQS 佇列的訊息,以及刪除來自 Amazon SQS 佇列的訊息

步驟 5:在資源許可新增內嵌政策

授予團隊成員存取您的新資源的權限,做法是新增適當的內嵌政策並加入到使用者的角色。並不是所有資源都需要您新增許可。若要執行下列步驟,您必須以 root 使用者、帳戶中的系統管理員使用者身分登入主控台,或使用AdministratorAccess受管政策或同等政策的 IAM 使用者或聯合身分登入主控台。

若要使用 JSON 政策編輯器來建立政策
  1. 登入 AWS Management Console,並開啟位於 https://console.aws.amazon.com/iam/ 的 IAM 主控台。

  2. 在左側的導覽窗格中,選擇 Policies (政策)

    如果這是您第一次選擇 Policies (政策),將會顯示 Welcome to Managed Policies (歡迎使用受管政策) 頁面。選擇 Get Started (開始使用)

  3. 在頁面頂端,選擇 Create policy (建立政策)

  4. 政策編輯器中,選擇 JSON 選項。

  5. 輸入下列 JSON 政策文件:

    { "Action": [ "sqs:CreateQueue", "sqs:DeleteQueue", "sqs:GetQueueAttributes", "sqs:SetQueueAttributes", "sqs:ListQueues", "sqs:GetQueueUrl" ], "Resource": [ "*" ], "Effect": "Allow" }
  6. 選擇下一步

    注意

    您可以隨時切換視覺化JSON 編輯器選項。不過,如果您進行變更或在視覺化編輯器中選擇下一步,IAM 就可能會調整您的政策結構,以便針對視覺化編輯器進行最佳化。如需詳細資訊,請參閱 IAM 使用者指南中的調整政策結構

  7. 檢視與建立頁面上,為您正在建立的政策輸入政策名稱描述 (選用)。檢視此政策中定義的許可,來查看您的政策所授予的許可。

  8. 選擇 Create policy (建立政策) 儲存您的新政策。