Modelos de projetos do AWS CodeStar - 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á.

Modelos de projetos do AWS CodeStar

Os modelos de projeto do AWS CodeStar permitem começar com um aplicativo de exemplo e implantá-lo usando os recursos do AWS criados para oferecer suporte ao projeto de desenvolvimento. Quando você escolhe um modelo de projeto do AWS CodeStar, o tipo de aplicativo, a linguagem de programação e a plataforma de computação são provisionados para você. Depois de criar projetos com aplicativos web, serviços web, habilidades Alexa e páginas estáticas da Web, você poderá substituir o aplicativo de exemplo pelos próprios.

Depois que o AWS CodeStar cria o projeto, você pode modificar os recursos do AWS que oferecem suporte à entrega do aplicativo. O AWS CodeStar funciona com AWS CloudFormation para permitir que você use o código para criar serviços de suporte e servidores/plataformas de tecnologia sem servidor na nuvem. O AWS CloudFormation permite que você modele toda a infraestrutura em um arquivo de texto.

Arquivos de projeto e recursos do AWS CodeStar

Um projeto do AWS CodeStar é uma combinação de código-fonte e os recursos criados para implantar o código. A coleção de recursos que ajudam a compilar, lançar e implantar o código são chamados de recursos da cadeia de ferramentas. Na criação do projeto, um modelo do AWS CloudFormation provisiona os recursos da cadeia de ferramentas em um pipeline de integração/implantação contínuas (CI/CD).

Você pode usar o AWS CodeStar para criar projetos de duas formas, dependendo do seu nível de experiência com a criação de recursos do AWS:

  • Quando você usa o console para criar um projeto, o AWS CodeStar cria sua cadeia de ferramentas de recursos, incluindo seu repositório e preenche seu repositório com exemplos de código de aplicativo e arquivos de projeto. Use o console para configurar rapidamente projetos de amostra com base em um conjunto de opções de projeto pré-configurado.

  • Ao usar a CLI para criar um projeto, forneça o modelo do AWS CloudFormation que cria os recursos da cadeia de ferramentas e o código-fonte do aplicativo. Use a CLI para permitir que o AWS CodeStar crie seu projeto com base no modelo e, em seguida, preencher seu repositório com seu código de exemplo.

Um projeto do AWS CodeStar fornece um ponto único de gerenciamento. Você pode usar o assistente Criar projeto no console para configurar um projeto de exemplo. Em seguida, você pode usá-lo como uma plataforma de colaboração para gerenciar permissões e recursos para a equipe. Para obter mais informações, consulte O que é o AWS CodeStar?. Quando você usa o console para criar um projeto, o código-fonte é fornecido como um código de exemplo e os recursos da cadeia de ferramentas CI/CD são criados para você

Quando você cria um projeto no console, o AWS CodeStar provisiona os seguintes recursos:

  • Um repositório de código no GitHub ou no CodeCommit.

  • No repositório do projeto, um arquivo README.md que dá detalhes dos arquivos e diretórios.

  • No repositório do projeto, um arquivo template.yml que armazena a definição da pilha do tempo de execução do aplicativo. Você pode usar esse arquivo para adicionar ou modificar recursos do projeto que não sejam recursos da cadeia de ferramentas, como recursos do AWS usados para notificações, suporte ao banco de dados, monitoramento e rastreamento.

  • Os serviços e os recursos do AWS criados com o pipeline, como o bucket de artefatos do Amazon S3, o Amazon CloudWatch Events e os perfis de serviço relacionados.

  • Um aplicativo de exemplo funcional com código-fonte completo e um endpoint HTTP público.

  • Um recurso de computação do AWS, com base no tipo de modelo de projeto do AWS CodeStar:

    • Uma função Lambda.

    • Uma instância do Amazon EC2.

    • Um ambiente do AWS Elastic Beanstalk.

  • A partir de 6 de dezembro de 2018 (horário do Pacífico):

    • Um limite de permissões que é uma política do IAM especializada para controlar o acesso aos recursos do projeto. Por padrão, o limite de permissões é anexado às funções no projeto de exemplo. Para obter mais informações, consulte Limite de permissões do IAM para funções de operador.

    • Um perfil do IAM do AWS CloudFormation para criar recursos do projeto usando o AWS CloudFormation que inclui permissões para todos os recursos com suporte do AWS CloudFormation, incluindo perfis do IAM.

    • Uma função do IAM para cadeia de ferramentas.

    • Funções de execução do Lambda definidas na pilha de aplicativos, que você pode modificar.

  • Antes de 6 de dezembro de 2018 (horário do Pacífico):

    • Uma função do IAM para o AWS CloudFormation para a criação de recursos do projeto com suporte para um conjunto limitado de recursos do AWS CloudFormation.

    • Um perfil do IAM para criação de um recurso do CodePipeline.

    • Um perfil do IAM para criação de um recurso do CodeBuild.

    • Um perfil do IAM para criação de um recurso do CodeDeploy, se aplicável ao tipo do projeto.

    • Um perfil do IAM para criação do aplicativo web do Amazon EC2, se aplicável ao tipo do projeto.

    • Um perfil do IAM para criar um recurso do CloudWatch Events.

    • Uma função de execução para o Lambda modificada dinamicamente para incluir um conjunto parcial de recursos.

O projeto inclui páginas de detalhes que mostram o status e contêm links para gerenciamento de equipe, links para instruções de configuração para IDEs ou o repositório e um histórico de confirmação de código-fonte é alterado no repositório. Você também pode selecionar ferramentas para se conectar com ferramentas de rastreamento de problemas externos, como o Jira.

Primeiros passos: escolher um modelo de projeto

Quando escolhe um projeto do AWS CodeStar no console, você está escolhendo de um conjunto de opções pré-configuradas com código de exemplo e recursos para dar rapidamente os primeiros passos. Essas opções são chamadas de modelos de projeto. Cada modelo de projeto do AWS CodeStar consiste em uma linguagem de programação, um tipo de aplicativo e uma plataforma de computação. A combinação que você seleciona determina o modelo de projeto.

Escolha uma plataforma de computação de modelo

Cada modelo configura um dos seguintes tipos de plataforma de computação:

  • Ao escolher um projeto do AWS Elastic Beanstalk, você implanta em um ambiente do AWS Elastic Beanstalk em instâncias do Amazon Elastic Compute Cloud na nuvem.

  • Quando você escolhe um projeto do Amazon EC2, o AWS CodeStar cria instâncias do Linux EC2 para hospedar o aplicativo na nuvem. Os membros da equipe do projeto podem acessar as instâncias e a equipe usa o par de chaves que você fornece para o SSH em suas instâncias do Amazon EC2. O AWS CodeStar também tem um SSH gerenciado que usa permissões do membro da equipe para gerenciar conexões de pares de chaves.

  • Quando você escolhe AWS Lambda, o AWS CodeStar cria um ambiente de tecnologia sem servidor acessado por meio do Amazon API Gateway, sem instâncias ou servidores para manter.

Escolha um tipo de aplicativo de modelo

Cada modelo configura um dos seguintes tipos de aplicativo:

  • Serviço web

    Um serviço web é usado em tarefas executadas em segundo plano, como chamar APIs. Depois que o AWS CodeStar criar o projeto de serviço da web de exemplo, você poderá escolher o URL do endpoint para ver a saída "Hello World", mas o uso principal desse tipo de aplicativo não é como uma interface de usuário (UI). Os modelos de projeto do AWS CodeStar nessa categoria oferecem suporte ao desenvolvimento em Ruby, Java, ASP.NET, PHP, Node.js e muito mais.

  • Aplicativo Web

    Um aplicativo web tem uma interface do usuário. Depois que o AWS CodeStar cria o projeto de aplicativo web de exemplo, você pode escolher o URL do endpoint para ver um aplicativo web interativo. Os modelos de projeto do AWS CodeStar nessa categoria oferecem suporte ao desenvolvimento em Ruby, Java, ASP.NET, PHP, Node.js e muito mais.

  • Página da web estática

    Escolha esse modelo se você quiser um projeto para um site HTML. Os modelos de projeto do AWS CodeStar nessa categoria oferecem suporte ao desenvolvimento em HTML5.

  • Habilidade do Alexa

    Selecione esse modelo se quiser um projeto para uma habilidade do Alexa com uma função do AWS Lambda. Ao criar o projeto de habilidade, o AWS CodeStar retornará um nome do recurso da Amazon (ARN) que pode ser usado como um endpoint do serviço. Para obter mais informações, consulte Hospedar uma habilidade personalizada como uma função do AWS Lambda.

    nota

    As funções do Lambda para as habilidades do Alexa são compatíveis somente nas regiões Leste dos EUA (Norte da Virgínia), Oeste dos EUA (Oregon), UE (Irlanda) e Ásia-Pacífico (Tóquio).

  • Regra do Config

    Escolha esse modelo caso queira um projeto para uma regra do AWS Config que permite que você automatize regras em recursos do AWS em sua conta. A função retorna um ARN que você pode usar como um endpoint de serviço para a regra.

Escolha um modelo de linguagem de programação

Ao escolher um modelo de projeto, você seleciona uma linguagem de programação, como Ruby, Java, ASP.NET, PHP, Node.js e muito mais.

Como fazer alterações no projeto do AWS CodeStar

Você pode atualizar o projeto modificando:

  • Código de exemplo e recursos de linguagem de programação para o aplicativo.

  • Os recursos que compõem a infraestrutura na qual o aplicativo é armazenado e implantado (sistemas operacionais, aplicativos e serviços de suporte, parâmetros de implantação, e a plataforma de computação em nuvem). Você pode modificar recursos de aplicativos no arquivo template.yml. Este é o arquivo AWS CloudFormation que modela o ambiente de tempo de execução do aplicativo.

nota

Se estiver trabalhando com um projeto do AWS CodeStar de habilidades do Alexa, não é possível fazer alterações na habilidade fora do repositório de origem do AWS CodeStar (CodeCommit ou GitHub). Se você editar a habilidade no portal do desenvolvedor do Alexa, talvez a alteração não esteja visível no repositório de origem e as duas versões ficarão fora de sincronia.

Alterar o código-fonte do aplicativo e enviar alterações por push

Para modificar o código-fonte de exemplo, scripts e outros arquivos de origem do aplicativo, edite os arquivos no repositório de origem por:

  • Usar o modo de edição no CodeCommit ou no GitHub.

  • Abrir o projeto em um IDE, como AWS Cloud9.

  • Clonar o repositório localmente e confirmar e enviar as alterações. Para obter mais informações, consulte Etapa 4: Confirmar uma alteração.

Alterar recursos do aplicativo com o arquivo template.yml

Em vez de modificar manualmente um recurso de infraestrutura, use AWS CloudFormation para modelar e implantar os recursos de tempo de execução do aplicativo.

Você pode modificar ou adicionar um recurso de aplicativo, como uma função do Lambda, na pilha de tempo de execução, editando o arquivo template.yml no repositório do projeto. Você pode adicionar qualquer recurso que esteja disponível como um recurso do AWS CloudFormation.

Para alterar o código ou as configurações de uma função do AWS Lambda, consulte Adicionar um recurso a um projeto.

Modifique o arquivo template.yml no repositório do projeto para adicionar o tipo de recursos do AWS CloudFormation que são recursos de aplicativos. Quando você adiciona um recurso de aplicativo à seção Resources do arquivo template.yml, o AWS CloudFormation e o AWS CodeStar criam o recurso para você. Para obter uma lista de recursos do AWS CloudFormation e suas propriedades obrigatórias, consulte Referência de tipos de recurso do AWS. Para obter mais informações, consulte este exemplo em Etapa 1: editar a função de operador do CloudFormation no IAM.

O AWS CodeStar permite que você implemente as melhores práticas ao configurar a modelagem e o ambiente de tempo de execução do aplicativo.

Como gerenciar permissões para alterar recursos do aplicativo

Quando você usa o AWS CloudFormation para adicionar recursos de aplicativo de tempo de execução, como uma função do Lambda, a função de operador do AWS CloudFormation pode usar as permissões que ela já tem. Para alguns recursos de aplicativo em tempo de execução, você deve ajustar manualmente as permissões da função de operador do AWS CloudFormation antes de editar o arquivo template.yml.

Para obter um exemplo de como alterar as permissões da função de operador do AWS CloudFormation, consulte Etapa 5: adicionar permissões de recursos com uma política em linha.