Adicionar um recurso a um projeto - AWS CodeStar

Em 31 de julho de 2024, a Amazon Web Services (AWS) interromperá o suporte para criação e visualização AWS CodeStar de projetos. Depois de 31 de julho de 2024, você não poderá mais acessar o AWS CodeStar console nem criar novos projetos. No entanto, os AWS recursos criados por AWS CodeStar, incluindo seus repositórios de origem, pipelines e compilações, não serão afetados por essa alteração e continuarão funcionando. AWS CodeStar As conexões e AWS CodeStar notificações não serão afetadas por essa descontinuação.

 

Se você deseja monitorar o trabalho, desenvolver código e criar, testar e implantar seus aplicativos, a Amazon CodeCatalyst fornece um processo de introdução simplificado e funcionalidades adicionais para gerenciar seus projetos de software. Saiba mais sobre a funcionalidade e os preços da Amazon CodeCatalyst.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Adicionar um recurso a um projeto

Cada modelo do AWS CodeStar de todos os projetos é fornecido com um arquivo do AWS CloudFormation que modela as dependências de runtime do AWS do aplicativo, como tabelas de banco de dados e funções do Lambda. Isso é armazenado no repositório de origem no arquivo /template.yml.

nota

Você pode usar estas etapas para os seguintes projetos, criados com as seguintes alterações de suporte do projeto:

  • Qualquer projeto do Lambda.

  • Para projetos do Amazon EC2 ou do Elastic Beanstalk criados depois de 3 de agosto de 2018, o AWS CodeStar provisionou um arquivo /template.yml no repositório do projeto.

Você pode modificar esse arquivo adicionando recursos do AWS CloudFormation à seção Resources. Modificar o arquivo template.yml permite que o AWS CodeStar e o AWS CloudFormation adicione o novo recurso ao projeto. Alguns recursos exigem adicionar outras permissões à política da função de operador do CloudFormation do projeto. Para obter mais informações sobre elementos de modelo e formatação, consulte Referência de tipos de recurso do AWS.

Depois de determinar quais recursos você deve adicionar ao projeto, estas serão as etapas de alto nível a serem seguidas para personalizar um modelo. Para obter uma lista de recursos do AWS CloudFormation e suas propriedades obrigatórias, consulte Referência de tipos de recurso do AWS.

Use as etapas nesta seção para modificar o modelo de projeto do AWS CodeStar a fim de adicionar um recurso e expandir as permissões da função de operador do CloudFormation do projeto no IAM. Neste exemplo, o recurso AWS::SQS::Queue é adicionado ao arquivo template.yml. A alteração inicia uma resposta automática no AWS CloudFormation, que adiciona uma fila do Amazon Simple Queue Service ao projeto.

Etapa 1: editar a função de operador do CloudFormation no IAM

Você deve entrar como administrador para realizar as etapas 1 e 5.

nota

Você pode ignorar essa etapa se seu projeto tiver sido provisionado com uma política de limite de permissões.

Para projetos criados depois de 6 de dezembro de 2018, horário do Pacífico, o AWS CodeStar terá provisionado seu projeto com uma política de limite de permissões.

  1. Faça login no AWS Management Console e então abra o console do AWS CodeStar em https://console.aws.amazon.com/codestar/.

  2. Crie um projeto ou escolha um projeto existente com um template.yml file e abra a página Project resources (Recursos do projeto).

  3. Em Project Resources (Recursos do projeto), localize a função do IAM criada para a função CodeStarWorker/AWS CloudFormation na lista de recursos. O nome da função segue este formato: role/CodeStarWorker-Project_name-CloudFormation.

  4. A função é aberta no console do IAM. Na guia Permissions (Permissões), em Inline Policies (Políticas em linha), expanda a linha da política da função de serviço e escolha Edit Policy (Editar política).

  5. Escolha a guia JSON para editar a política.

    nota

    A política anexada à função de operador é CodeStarWorkerCloudFormationRolePolicy.

  6. No campo JSON, adicione a declaração de política a seguir no elemento Statement.

    { "Action": [ "sqs:CreateQueue", "sqs:DeleteQueue", "sqs:GetQueueAttributes", "sqs:SetQueueAttributes", "sqs:ListQueues", "sqs:GetQueueUrl" ], "Resource": [ "*" ], "Effect": "Allow" }
  7. Escolha Review policy (Revisar política) para garantir que a política não contenha erros e selecione Save changes (Salvar alterações).

Etapa 2: modificar o arquivo template.yml

  1. Abra o console do AWS CodeStar em https://console.aws.amazon.com/codestar/.

  2. Escolha o projeto com tecnologia sem servidor e abra a página Code (Código). No nível superior do repositório, anote o local de template.yml.

  3. Use um IDE, o console ou a linha de comando no repositório local para editar o arquivo template.yml no repositório. Cole o recurso na seção Resources. Neste exemplo, quando o texto a seguir é copiado, ele adiciona a seção Resources.

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

    Este exemplo mostra um modelo modificado:

Etapa 3: confirmar e enviar a alteração do modelo

  • Confirme e envie as alterações no arquivo template.yml salvas na etapa 2.

    nota

    Isso inicia o pipeline. Se você confirmar as alterações antes de atualizar as permissões do IAM, o pipeline será iniciado e a pilha do AWS CloudFormation encontrará erros, o que fará a atualização da pilha ser revertida. Se isso acontecer, corrija as permissões e reinicie o pipeline.

Etapa 4: monitorar a atualização da pilha do AWS CloudFormation

  1. Quando o pipeline do projeto inicia o estágio de implantação, a atualização da pilha do AWS CloudFormation começa. Você pode escolher o estágio do AWS CloudFormation no pipeline no painel AWS CodeStar para ver a atualização da pilha.

    Solucionar problemas:

    A atualização da pilha falhará se as permissões de recursos necessárias não forem encontradas. Veja o status da falha na visualização do painel do AWS CodeStar do pipeline do projeto.

    Escolha o link CloudFormation no estágio de implantação do pipeline para solucionar problemas da falha no console do AWS CloudFormation. No console, na lista Events (Eventos), escolha o projeto para visualizar detalhes de criação da pilha. Há uma mensagem com os detalhes da falha. Neste exemplo, a permissão sqs:CreateQueue não foi encontrada.

    Adicione todas as permissões ausentes editando a política anexada à função de operador AWS CloudFormation do projeto. Consulte Etapa 1: editar a função de operador do CloudFormation no IAM.

  2. Após a execução bem-sucedida do pipeline, os recursos são criados na pilha do AWS CloudFormation. Na lista Resources (Recursos) no AWS CloudFormation, visualize os recursos criados para o projeto. Neste exemplo, a fila TestQueue está listada na seção Resources (Recursos).

    O URL da fila está disponível em AWS CloudFormation. O URL da fila segue este formato:

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

    Para obter mais informações, consulte Enviar uma mensagem do Amazon SQS, Receber uma mensagem de uma fila do Amazon SQS e Excluir uma mensagem de uma fila do Amazon SQS.

Etapa 5: adicionar permissões de recursos com uma política em linha

Conceda a membros da equipe acesso ao novo recurso adicionando a política em linha à função do usuário. Nem todos os recursos exigem que você adicione permissões. Para realizar as etapas a seguir, você deve entrar no console como um usuário raiz, um usuário do administrador na conta ou um usuário do IAM ou um usuário federado com a política gerenciada AdministratorAccess ou equivalente.

Para usar o editor de políticas JSON para criar uma política
  1. Faça login no AWS Management Console e abra o console do IAM em https://console.aws.amazon.com/iam/.

  2. No painel de navegação à esquerda, escolha Políticas.

    Se essa for a primeira vez que escolhe Políticas, a página Bem-vindo às políticas gerenciadas será exibida. Escolha Get Started.

  3. Na parte superior da página, escolha Create policy (Criar política).

  4. Na seção Editor de políticas, escolha a opção JSON.

  5. Insira o seguinte documento de política JSON:

    { "Action": [ "sqs:CreateQueue", "sqs:DeleteQueue", "sqs:GetQueueAttributes", "sqs:SetQueueAttributes", "sqs:ListQueues", "sqs:GetQueueUrl" ], "Resource": [ "*" ], "Effect": "Allow" }
  6. Escolha Next (Próximo).

    nota

    Você pode alternar entre as opções de editor Visual e JSON a qualquer momento. Porém, se você fizer alterações ou escolher Avançar no editor Visual, o IAM poderá reestruturar a política a fim de otimizá-la para o editor visual. Para obter mais informações, consulte Restruturação de política no Manual do usuário do IAM.

  7. Na página Revisar e criar, insira um Nome de política e uma Descrição (opcional) para a política que você está criando. Revise Permissões definidas nessa política para ver as permissões que são concedidas pela política.

  8. Escolha Create Policy (Criar política) para salvar sua nova política.