

A Amazon não CodeCatalyst está mais aberta a novos clientes. Os clientes atuais podem continuar usando o serviço normalmente. Para obter mais informações, consulte [Como migrar do CodeCatalyst](migration.md).

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á.

# Tutoriais de conceitos básicos
<a name="getting-started-topnode"></a>

O Amazon CodeCatalyst fornece vários modelos diferentes para ajudar você a começar a trabalhar com seus projetos. Você também pode optar por começar com um projeto vazio e adicionar recursos a ele. Siga as etapas desses tutoriais para saber mais sobre como trabalhar no CodeCatalyst. 

Se esta for a primeira vez que você usa o CodeCatalyst, sugerimos começar com [Tutorial: Criar um projeto com o esquema de aplicação web moderna de três níveis](getting-started-template-project.md).

**nota**  
Para seguir esses tutoriais, você deve primeiro concluir a configuração. Para obter mais informações, consulte [Configuração e login no CodeCatalystConfiguração e login no CodeCatalyst](setting-up-topnode.md).

**Topics**
+ [Tutorial: Criar um projeto com o esquema de aplicação web moderna de três níveis](getting-started-template-project.md)
+ [Tutorial: começo com um projeto vazio e adição manual de recursos](getting-started-blank-template.md)
+ [Tutorial: Usando recursos CodeCatalyst generativos de IA para acelerar seu trabalho de desenvolvimento](getting-started-project-assistance.md)

Para ver tutoriais adicionais que se concentram em áreas funcionais específicas no CodeCatalyst, consulte: 
+ [Conceitos básicos das notificações do Slack](getting-started-notifications.md)
+ [Introdução aos repositórios CodeCatalyst de origem e ao blueprint do aplicativo de página única](source-getting-started.md)
+ [Conceitos básicos de fluxos de trabalho](workflows-getting-started.md)
+ [Conceitos básicos de esquemas personalizados](getting-started-bp.md)
+ [Primeiros passos com o guia do desenvolvedor de ações do Amazon CodeCatalyst](https://docs.aws.amazon.com/codecatalyst/latest/adk/action-development-intro.html)

Para ver tutoriais detalhados, consulte:
+ [Tutorial: Fazer upload de artefatos no Amazon S3](build-deploy.md)
+ [Tutorial: Implantar uma aplicação sem servidor](deploy-tut-lambda.md)
+ [Tutorial: Implantar uma aplicação no Amazon ECS](deploy-tut-ecs.md)
+ [Tutorial: Implantar uma aplicação no Amazon EKS](deploy-tut-eks.md)
+ [Tutorial: código Lint usando uma GitHub ação](integrations-github-action-tutorial.md)
+ [Tutorial: Criar e atualizar uma aplicação React](blueprint-getting-started-tutorial.md)

# Tutorial: Criar um projeto com o esquema de aplicação web moderna de três níveis
<a name="getting-started-template-project"></a>

Você pode começar a desenvolver software mais rapidamente criando um projeto com um esquema. Um projeto criado com um esquema inclui os recursos necessários, incluindo um repositório de origem para gerenciar seu código e um fluxo de trabalho para criar e implantar a aplicação. Neste tutorial, explicaremos como usar o modelo de **aplicativo web moderno de três camadas** para criar um projeto na Amazon. CodeCatalyst O tutorial também inclui visualizar a amostra implantada, convidar outros usuários para trabalhar nela e fazer alterações no código com pull requests que são automaticamente criadas e implantadas nos recursos do Connected Conta da AWS quando a pull request é mesclada. Onde CodeCatalyst cria seu projeto com relatórios, feeds de atividades e outras ferramentas, seu blueprint cria AWS recursos Conta da AWS associados ao seu projeto. Os arquivos de esquema permitem que você crie e teste um exemplo de aplicação moderna e o implante na infraestrutura do Nuvem AWS.

A ilustração a seguir mostra como as ferramentas CodeCatalyst são usadas para criar um problema para rastrear, mesclar e criar automaticamente a alteração e, em seguida, iniciar um fluxo de trabalho no CodeCatalyst projeto que executa ações para permitir AWS CDK e CloudFormation provisionar sua infraestrutura. 

As ações geram recursos no associado Conta da AWS e implantam seu aplicativo em uma AWS Lambda função sem servidor com um endpoint do API Gateway. A AWS Cloud Development Kit (AWS CDK) ação converte uma ou mais AWS CDK pilhas em CloudFormation modelos e implanta pilhas em suas. Conta da AWS Os recursos em suas pilhas incluem CloudFront recursos da Amazon para distribuir conteúdo dinâmico da web, uma instância do Amazon DynamoDB para os dados do seu aplicativo e as funções e políticas que dão suporte ao aplicativo implantado.

![\[Uma alteração no código, desde a criação de um problema até a alteração no repositório de origem, que é então criado e implantado automaticamente nos recursos do AWS\]](http://docs.aws.amazon.com/pt_br/codecatalyst/latest/userguide/images/modern-app-overview.png)


Quando você cria um projeto com o esquema de **aplicação web moderna de três níveis**, seu projeto é criado com os seguintes recursos:

**No CodeCatalyst projeto**:
+ Um [repositório de origem](source.md) com código de amostra e YAML de fluxo de trabalho
+ Um [fluxo de trabalho](workflow.md) que cria e implanta o código de amostra sempre que uma alteração é feita na ramificação padrão
+ Um quadro de problemas e um backlog que você pode usar para planejar e monitorar o trabalho
+ Um pacote de relatórios de teste com relatórios automatizados incluídos no código de amostra

**No associado Conta da AWS**:
+ Três AWS CloudFormation pilhas que criam os recursos necessários para o aplicativo.

Para obter detalhes mais detalhados sobre os recursos que serão criados em AWS e CodeCatalyst como parte deste tutorial, consulte[Referência](#getting-started-template-project-reference).

**nota**  
Os recursos e os exemplos incluídos em um projeto dependem do esquema selecionado. A Amazon CodeCatalyst oferece vários planos de projetos que definem recursos relacionados à linguagem ou estrutura definida. Para saber mais sobre esquemas, consulte [Criação de um projeto abrangente com CodeCatalyst plantasCriação de um projeto abrangente com esquemas](project-blueprints.md).

**Topics**
+ [Pré-requisitos](#getting-started-template-project-prerequisites)
+ [Etapa 1: criar o projeto de aplicação web moderna de três níveis](#getting-started-template-project-proj-create)
+ [Etapa 2: convidar alguém para o projeto](#getting-started-template-project-ipa-user)
+ [Etapa 3: criar problemas para colaborar e monitorar o trabalho](#getting-started-template-project-issue)
+ [Etapa 4: visualizar o repositório de origem](#getting-started-template-project-source)
+ [Etapa 5: criar um Ambiente de Desenvolvimento com uma ramificação de teste e fazer uma alteração rápida no código](#getting-started-template-project-create-devenvironment)
+ [Etapa 6: visualizar o fluxo de trabalho que cria a aplicação moderna](#getting-started-template-project-view-workflow)
+ [Etapa 7: pedir que outras pessoas revisem suas alterações](#getting-started-template-project-pull-request)
+ [Etapa 8: encerrar o problema](#getting-started-template-project-close-issue)
+ [Limpar os recursos](#getting-started-template-project-clean-up)
+ [Referência](#getting-started-template-project-reference)

## Pré-requisitos
<a name="getting-started-template-project-prerequisites"></a>

Para criar um projeto de aplicação moderna neste tutorial, você deve ter concluído as tarefas em [Configuração e login no CodeCatalystConfiguração e login no CodeCatalyst](setting-up-topnode.md) seguinte forma:
+ Tenha um AWS Builder ID para fazer login CodeCatalyst.
+ Você deve pertencer a um espaço e ter o perfil **Administrador do espaço** ou **Usuário avançado** atribuído a você nesse espaço. Para obter mais informações, consulte [Criar um espaço](spaces-create.md), [Concessão de permissões de espaço aos usuários](spaces-members.md) e [Perfil de administrador do espaço](ipa-role-types.md#ipa-role-space-admin).
+  Conta da AWS Associe-se ao seu espaço e tenha a função do IAM que você criou durante a inscrição. Por exemplo, durante a inscrição, você tem a opção de escolher criar um perfil de serviço com uma política de perfil chamada **CodeCatalystWorkflowDevelopmentRole-*spaceName***. O perfil terá um nome `CodeCatalystWorkflowDevelopmentRole-spaceName` com um identificador exclusivo anexado. Para ter mais informações sobre o perfil e a política de perfis, consulte [Noções básicas sobre o perfil de serviço **CodeCatalystWorkflowDevelopmentRole-*spaceName***](ipa-iam-roles.md#ipa-iam-roles-service-role). Para as etapas necessárias para criar o perfil, consulte [Criar o perfil **CodeCatalystWorkflowDevelopmentRole-*spaceName*** para a conta e o espaço](ipa-iam-roles.md#ipa-iam-roles-service-create).

## Etapa 1: criar o projeto de aplicação web moderna de três níveis
<a name="getting-started-template-project-proj-create"></a>

Depois de criá-lo, no projeto, você desenvolverá e testará o código, coordenará as tarefas de desenvolvimento e visualizará as métricas do projeto. Seu projeto também contém ferramentas e recursos de desenvolvimento.

Neste tutorial, você usará o esquema de **aplicação web moderna de três níveis** para criar uma aplicação interativa. O fluxo de trabalho criado e executado automaticamente como parte do projeto criará e implantará a aplicação. O fluxo de trabalho só é executado com êxito depois que todos os perfis e informações da conta estiverem configurados para o seu espaço. Depois que o fluxo de trabalho for executado com êxito, acesse o URL do endpoint para ver a aplicação.

**Como criar um projeto com um esquema**

1. Abra o CodeCatalyst console em [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. No CodeCatalyst console, navegue até o espaço em que você deseja criar um projeto.

1. Escolha **Criar projeto**.

1. Selecione **Começar com um esquema**. 

1. Na barra de pesquisa, insira **modern**.

1. Selecione o esquema de **aplicação web moderna de três níveis** e selecione **Próximo**.

1. Em **Nome do projeto**, insira um nome para o projeto. Por exemplo:

   **MyExampleProject**.
**nota**  
O nome deve ser exclusivo no espaço.

1. Em **Conta**, escolha o Conta da AWS que você adicionou durante a inscrição. O esquema instalará recursos nessa conta.

1. Em **Perfil de implantação**, escolha o perfil que você adicionou durante a inscrição. Para este exemplo, selecione `CodeCatalystWorkflowDevelopmentRole-spaceName`. 

   Se não houver perfis listados, adicione um. Para adicionar uma função, escolha **Adicionar função do IAM** e adicione a função à sua Conta da AWS. Para obter mais informações, consulte [Permitindo acesso a AWS recursos com conexão Contas da AWS](ipa-connect-account.md).

1. Em **Plataforma de computação**, selecione **Lambda**.

1. Em **Opção de hospedagem de frontend**, selecione **Ampliar hospedagem**. Para obter informações sobre AWS Amplify, consulte [O que é AWS Amplify hospedagem?](https://docs.aws.amazon.com/amplify/latest/userguide/welcome.html) no *Guia do AWS Amplify usuário*.

1. Em **Região de implantação**, insira o código da Região da AWS em que você deseja que o esquema implante a aplicação Mysfits e os recursos de suporte. Para ver uma lista de códigos de região, consulte [Endpoints regionais](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints) na *Referência geral da AWS*.

1. Em **Nome da aplicação**, deixe o padrão de `mysfitsstring`.

1. (Opcional) Em **Gerar visualização prévia do projeto**, selecione **Exibir código** para visualizar os arquivos de origem que o esquema instalará. Escolha **Exibir fluxo de trabalho** para visualizar os arquivos CI/CD de definição do fluxo de trabalho que o blueprint instalará. A visualização é atualizada dinamicamente com base nas suas seleções.

1. Escolha **Criar projeto**. 

O fluxo de trabalho do projeto começa assim que você cria o projeto. Levará um pouco de tempo para concluir a criação e a implantação do código. Enquanto isso, vá em frente e convide outra pessoa para o seu projeto.

## Etapa 2: convidar alguém para o projeto
<a name="getting-started-template-project-ipa-user"></a>

Agora que você configurou seu projeto, convide outras pessoas para trabalhar com você.

**Para convidar alguém para o projeto**

1. Navegue até o projeto para o qual você deseja convidar usuários.

1. No painel de navegação, escolha **Configurações do projeto**.

1. Na guia **Membros**, selecione **Convidar**.

1. Digite os endereços de e-mail das pessoas que você deseja convidar como usuários para o projeto. Você pode digitar vários endereços de e-mail separados por um espaço ou uma vírgula. Você também pode escolher entre membros do seu espaço que não sejam membros do projeto. 

1. Escolha o perfil do usuário.

   Ao concluir a adição de usuários, selecione **Convidar**.

## Etapa 3: criar problemas para colaborar e monitorar o trabalho
<a name="getting-started-template-project-issue"></a>

CodeCatalyst ajuda você a monitorar recursos, tarefas, bugs e qualquer outro trabalho envolvido em seu projeto com problemas. Você pode criar problemas para monitorar as ideias e o trabalho necessários. Por padrão, quando você cria um problema, ele é adicionado ao backlog. Você pode mover os problemas para um quadro onde é possível acompanhar o trabalho em andamento. Você também pode atribuir um problema a um membro específico do projeto.

**Para criar um problema para um projeto**

1. No painel de navegação, selecione **Problemas**.

1. Selecione **Criar problema**. 

1. Em **Título do problema**, forneça um nome para o problema. Se desejar, forneça uma descrição do problema. Neste exemplo, use **make a change in the `src/mysfit_data.json` file.**

1. Escolha a prioridade, a estimativa, o status e os rótulos. Em **responsável**, selecione **\$1Adicionar a mim** para atribuir o problema a você mesmo.

1. Selecione **Criar problema**. O problema agora está visível no quadro. Escolha o cartão para mover o problema para a coluna **Em andamento**. 

Para obter mais informações, consulte [Acompanhe e organize o trabalho com problemas no CodeCatalystAcompanhar e organizar o trabalho com problemas](issues.md).

## Etapa 4: visualizar o repositório de origem
<a name="getting-started-template-project-source"></a>

O esquema instala um repositório de origem que contém arquivos para definir e comportar a aplicação ou o serviço. Alguns diretórios e arquivos notáveis no repositório de origem são:
+ Diretório **.cloud9**: contém arquivos de suporte para o Ambiente de Desenvolvimento do AWS Cloud9 .
+ Diretório **.codecatalyst**: contém o arquivo `YAML` de definição do fluxo de trabalho para cada fluxo de trabalho incluído no esquema.
+ **Diretório.idea** — contém arquivos de suporte para os ambientes de JetBrains desenvolvimento.
+ Diretório **.vscode**: contém arquivos de suporte para o Ambiente de Desenvolvimento do Visual Studio Code.
+ Diretório **CDKStacks** — Contém os arquivos de AWS CDK pilha que definem a infraestrutura no. Nuvem AWS
+ Diretório **src**: contém o código-fonte da aplicação.
+ diretório de **testes** — contém arquivos para os testes integ e unitários que são executados como parte do CI/CD fluxo de trabalho automatizado que é executado quando você cria e testa seu aplicativo.
+ Diretório **web**: contém o código-fonte do frontend. Outros arquivos incluem arquivos de projeto, como o arquivo `package.json` que contém metadados importantes sobre seu projeto, a página `index.html` do site, o arquivo `.eslintrc.cjs` para código de linting e o arquivo `tsconfig.json` para especificar arquivos raiz e opções do compilador.
+ Arquivo `Dockerfile`: descreve o contêiner da aplicação.
+ Arquivo `README.md`: contém as informações de configuração do projeto.

**Como navegar até os repositórios de origem de um projeto**

1. Navegue até o projeto e faça o seguinte:
   + Na página de resumo do seu projeto, selecione o repositório que você deseja na lista e, depois, selecione **Visualizar repositório**.
   + No painel de navegação, selecione **Código** e, depois, selecione **Repositórios de origem**. Em **Repositórios de origem**, selecione o nome do repositório na lista. Você pode filtrar a lista de repositórios digitando parte do nome do repositório na barra de filtro.

1. Na página inicial do repositório, visualize o conteúdo do repositório e as informações sobre os recursos associados, como o número de solicitações pull e fluxos de trabalho. Por padrão, o conteúdo da ramificação padrão é exibido. Você pode alterar a visualização selecionando uma ramificação diferente na lista suspensa.

## Etapa 5: criar um Ambiente de Desenvolvimento com uma ramificação de teste e fazer uma alteração rápida no código
<a name="getting-started-template-project-create-devenvironment"></a>

Você pode trabalhar no código rapidamente no repositório de origem criando um Ambiente de Desenvolvimento. Para este tutorial, presumimos que você vai:
+ Crie um ambiente de AWS Cloud9 desenvolvimento.
+ Escolher a opção de trabalhar em uma nova ramificação fora da ramificação **principal** ao criar o Ambiente de Desenvolvimento.
+ Usar o nome `test` dessa nova ramificação.

Em uma etapa posterior, você usará o Ambiente de Desenvolvimento para fazer uma alteração no código e criar uma solicitação pull.

**Como criar um Ambiente de Desenvolvimento com uma nova ramificação**

1. Abra o CodeCatalyst console em [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Navegue até o projeto em que deseja criar um Ambiente de Desenvolvimento.

1. Selecione o nome do repositório na lista de repositórios de origem do projeto. Como alternativa, no painel de navegação, escolha **Código**, **Repositórios de origem** e selecione o repositório para o qual você deseja criar um Ambiente de Desenvolvimento.

1. Na página inicial do repositório, selecione **Criar um ambiente de desenvolvimento**.

1. Selecione um IDE compatível no menu suspenso. Consulte [Ambientes de desenvolvimento integrados compatíveis para ambientes de desenvolvimento](devenvironment-create.md#devenvironment-supported-ide) para obter mais informações.

1. Escolha o repositório a ser clonado, selecione **Trabalhar em uma nova ramificação**, insira um nome de ramificação no campo **Nome da ramificação** e escolha uma ramificação a partir da qual criar a nova ramificação no menu **Criar ramificação**.

1. Opcionalmente, adicione um alias para o Ambiente de Desenvolvimento.

1. Opcionalmente, escolha o botão de edição da **configuração do Ambiente de Desenvolvimento** para editar a configuração de computação, armazenamento ou tempo limite do Ambiente de Desenvolvimento.

1. Escolha **Criar**. Enquanto seu Ambiente de Desenvolvimento estiver sendo criado, a coluna de status do Ambiente de Desenvolvimento exibirá **Iniciando** e a coluna de status exibirá **Executando** após a criação do Ambiente de Desenvolvimento. Uma nova guia será aberta com seu ambiente de desenvolvimento no IDE de sua escolha. Você pode editar o código, confirmar e enviar suas alterações.

Nesta seção, você trabalhará com seu aplicativo de amostra gerado CodeCatalyst fazendo alterações no código com pull requests que são automaticamente criadas e implantadas nos recursos do Connected Conta da AWS quando a pull request é mesclada. 

**Como fazer uma alteração no arquivo `src/mysfit_data.json`**

1. Navegue até o Ambiente de Desenvolvimento do projeto. Em AWS Cloud9, expanda o menu de navegação lateral para navegar pelos arquivos. Expanda `mysfits`, `src` e abra `src/mysfit_data.json`.

1. No arquivo, altere o valor do campo `"Age":` de 6 para 12. A linha deve ser semelhante a esta: 

   ```
       {
           "Age": 12,
           "Description": "Twilight's personality sparkles like the night sky and is looking for a forever home with a Greek hero or God. While on the smaller side at 14 hands, he is quite adept at accepting riders and can fly to 15,000 feet. Twilight needs a large area to run around in and will need to be registered with the FAA if you plan to fly him above 500 feet. His favorite activities include playing with chimeras, going on epic adventures into battle, and playing with a large inflatable ball around the paddock. If you bring him home, he'll quickly become your favorite little Pegasus.",
           "GoodEvil": "Good",
           "LawChaos": "Lawful",
           "Name": "Twilight Glitter",
           "ProfileImageUri": "https://www.mythicalmysfits.com/images/pegasus_hover.png",
           "Species": "Pegasus",
           "ThumbImageUri": "https://www.mythicalmysfits.com/images/pegasus_thumb.png"
       },
   ```

1. Salve o arquivo.

1. Mude para o repositório mysfits com o comando **cd /projects/mysfits**.

1. Adicione, confirme e envie as alterações com os comandos **git add**, **git commit** e **git push**.

   ```
   git add .
   git commit -m "make an example change"
   git push
   ```

## Etapa 6: visualizar o fluxo de trabalho que cria a aplicação moderna
<a name="getting-started-template-project-view-workflow"></a>

Depois de criar o projeto de aplicativo moderno, CodeCatalyst gera vários recursos em seu nome, incluindo um fluxo de trabalho. Um *fluxo de trabalho* é um procedimento automatizado definido em um arquivo .yaml que descreve como criar, testar e implantar seu código.

Neste tutorial, CodeCatalyst criei um fluxo de trabalho e o iniciei automaticamente quando você criou seu projeto. (O fluxo de trabalho ainda pode estar em execução, dependendo de há quanto tempo você criou o projeto.) Use os procedimentos a seguir para verificar o progresso do fluxo de trabalho, analisar os logs gerados e os relatórios de teste e, por fim, navegar até o URL da aplicação implantada.

**Como conferir o progresso do fluxo de trabalho**

1. **No CodeCatalyst console, no painel de navegação, escolha **CI/CD** e, em seguida, escolha Fluxos de trabalho.**

   Uma lista de fluxos de trabalho é exibida. Esses são os fluxos de trabalho que o CodeCatalyst blueprint gerou e iniciou quando você criou seu projeto.

1. Observe a lista de fluxos de trabalho. Você deve ver quatro:
   + Os dois fluxos de trabalho na parte superior correspondem à ramificação `test` que você criou anteriormente em [Etapa 5: criar um Ambiente de Desenvolvimento com uma ramificação de teste e fazer uma alteração rápida no código](#getting-started-template-project-create-devenvironment). Esses fluxos de trabalho são clones dos fluxos de trabalho na ramificação `main`. O não **ApplicationDeploymentPipeline**está ativo porque está configurado para uso com a `main` ramificação. O **OnPullRequest**fluxo de trabalho não foi executado porque nenhuma solicitação de pull foi feita.
   + Os dois fluxos de trabalho na parte inferior correspondem à ramificação `main` que foi criada quando você executou o esquema anteriormente. O **ApplicationDeploymentPipeline**fluxo de trabalho está ativo e tem uma execução em andamento (ou concluída).
**nota**  
Se a **ApplicationDeploymentPipeline**execução falhar com um **DeployBackend**erro ou **Build @cdk\$1bootstrap**, pode ser porque você executou o aplicativo web moderno de três camadas anteriormente e ele deixou recursos antigos para trás e esse conflito com o blueprint atual. Você precisará excluir esses recursos antigos e executar novamente o fluxo de trabalho. Para obter mais informações, consulte [Limpar os recursos](#getting-started-template-project-clean-up).

1. Escolha o **ApplicationDeploymentPipeline**fluxo de trabalho associado à `main` ramificação, na parte inferior. Esse fluxo de trabalho foi executado usando o código-fonte na ramificação `main`.

   Um diagrama do fluxo de trabalho é exibido. O diagrama mostra vários blocos, cada um representando uma tarefa ou *ação*. A maioria das ações é organizada na vertical, com as ações na parte superior sendo executadas antes das ações abaixo. As ações organizadas lado a lado são executadas em paralelo. Todas as ações agrupadas devem ser executadas com êxito antes que a ação abaixo delas possa ser iniciada.

   Os blocos principais são:
   + **WorkflowSource**— Esse bloco representa seu repositório de origem. Ele mostra, entre outras informações, o nome do repositório de origem (**mysfits**) e o commit que iniciou automaticamente a execução do fluxo de trabalho. CodeCatalyst gerou esse commit quando você criou seu projeto.
   + **Build** — Esse bloco representa um agrupamento de duas ações que devem ser concluídas para que a próxima ação seja iniciada.
   + **DeployBackend**— Esse bloco representa uma ação que implanta os componentes de back-end do aplicativo na AWS nuvem.
   + **Tests**: esse bloco representa um agrupamento de duas ações de teste que devem ser concluídas para que a próxima ação seja iniciada.
   + **DeployFrontend**— Esse bloco representa uma ação que implanta os componentes de front-end do aplicativo na AWS nuvem.

1. Escolha a guia **Definição** (na parte superior). O [arquivo de definição do fluxo de trabalho](workflow-reference.md) aparece à direita. O arquivo tem as seguintes seções dignas de nota:
   + Uma seção `Triggers`, na parte superior. Esta seção indica que o fluxo de trabalho deve começar sempre que o código for enviado para a ramificação `main` do repositório de origem. Os envios para outras ramificações (como `test`) não iniciarão esse fluxo de trabalho. O fluxo de trabalho é executado usando os arquivos na ramificação `main`.
   + Uma seção `Actions`, em `Triggers`. Esta seção define as ações que você vê no diagrama do fluxo de trabalho.

1. Escolha a guia **Estado mais recente** (na parte superior) e escolha qualquer ação no diagrama do fluxo de trabalho.

1. À direita, escolha a guia **Configuração** para ver as configurações usadas pela ação durante a última execução. Cada definição de configuração tem uma propriedade correspondente no arquivo de definição do fluxo de trabalho.

1. Deixe o console aberto e vá para o próximo procedimento.

**Para revisar os logs de compilação e os relatórios de teste**

1. Escolha a guia **Estado mais recente**.

1. No diagrama do fluxo de trabalho, escolha a **DeployFrontend**ação.

1. Aguarde o término da ação. Observe que o ícone “em andamento” (![\[Workflow in progress.\]](http://docs.aws.amazon.com/pt_br/codecatalyst/latest/userguide/images/flows/run-in-progress.png)) muda para um ícone de “sucesso” (![\[Workflow success.\]](http://docs.aws.amazon.com/pt_br/codecatalyst/latest/userguide/images/flows/run-success.png)).

1. Escolha a ação **build\$1backend**.

1. Escolha a guia **Logs** e expanda algumas seções para ver as mensagens de log dessas etapas. Você pode ver mensagens relacionadas à configuração do backend.

1. Escolha a guia **Relatórios** e, em seguida, escolha o `backend-coverage.xml` relatório. CodeCatalyst exibe o relatório associado. O relatório mostra os testes de cobertura de código que foram executados e indica a proporção de linhas de código que foram validadas com sucesso por meio de testes, como 80%.

   Para ter mais informações sobre os relatórios de teste, consulte [Teste com fluxos de trabalhoTeste com fluxos de trabalho](test-workflow-actions.md).
**dica**  
Você também pode visualizar os relatórios de teste escolhendo **Relatórios** no painel de navegação.

1. Deixe o CodeCatalyst console aberto e vá para o próximo procedimento.

**Como confirmar que a aplicação moderna foi implantada**

1. Retorne ao **ApplicationDeploymentPipeline**fluxo de trabalho e escolha o *string* link **Executar** da última execução.

1. No diagrama do fluxo de trabalho, encontre a **DeployFrontend**ação e escolha o link **Exibir aplicativo**. O site da Mysfit é exibido.
**nota**  
Se você não vê o link **Exibir aplicativo** dentro da **DeployFrontend**ação, certifique-se de escolher o link de ID de execução.

1. Procure o Pegasus Mysfit chamado **Twilight Glitter**. Anote o valor da idade. É `6`. Você fará uma alteração no código para atualizar a idade.

## Etapa 7: pedir que outras pessoas revisem suas alterações
<a name="getting-started-template-project-pull-request"></a>

Agora que você tem alterações em uma ramificação chamada `test`, pode pedir que outras pessoas as revisem criando uma solicitação pull. Execute as etapas a seguir para criar uma solicitação pull para mesclar as alterações da ramificação `test` na ramificação `main`.

**Para criar uma solicitação pull**

1. Navegue até o projeto.

1. Execute um destes procedimentos:
   + No painel de navegação, escolha **Código**, **Solicitações pull** e, depois, selecione **Criar solicitação pull**. 
   + Na página inicial do repositório, escolha **Mais** e, depois, selecione **Criar solicitação pull**.
   + Na página do projeto, selecione **Criar solicitação pull**.

1. No **Repositório de origem**, certifique-se de que o repositório de origem especificado seja aquele que contém o código confirmado. Essa opção só aparece se você não criou a solicitação pull na página principal do repositório.

1. Em **Ramificação de destino**, selecione a ramificação na qual mesclar o código depois que ele for revisado. 

1. Em **Ramificação de origem**, selecione a ramificação que contém o código confirmado. 

1. Em **Título da solicitação pull**, insira um título que ajude outros usuários a entender o que precisa ser revisado e por quê. 

1. (Opcional) Na **Descrição da solicitação pull**, forneça informações, como um link para problemas ou uma descrição das alterações.
**dica**  
Você pode escolher **Escrever descrição para mim** para gerar CodeCatalyst automaticamente uma descrição das alterações contidas na pull request. Você pode fazer alterações na descrição gerada automaticamente depois de adicioná-la à solicitação pull.  
Essa funcionalidade exige que os recursos de IA generativa estejam habilitados para o espaço e não estejam disponíveis para solicitações pull em repositórios vinculados. Para ter mais informações, consulte [Gerenciar recursos de IA generativa](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-generative-ai-features.html). 

1. (Opcional) Em **Problemas**, selecione **Vincular problemas** e, depois, selecione um problema na lista ou insira seu ID. Para desvincular um problema, selecione o ícone de desvinculação.

1. (Opcional) Em **Revisores obrigatórios**, selecione **Adicionar revisores obrigatórios**. Selecione na lista de membros do projeto para adicioná-los. Os revisores obrigatórios devem aprovar as alterações antes que a solicitação pull seja mesclada na ramificação de destino. 
**nota**  
Não é possível adicionar um revisor como revisor obrigatório e revisor opcional. Não é possível se adicionar como revisor. 

1. (Opcional) Em **Revisores opcionais**, selecione **Adicionar revisores opcionais**. Selecione na lista de membros do projeto para adicioná-los. Revisores opcionais não precisam aprovar as alterações como um requisito antes que a solicitação pull seja mesclada na ramificação de destino. 

1. Revise as diferenças entre as ramificações. A diferença exibida em uma solicitação pull são as alterações entre a revisão na ramificação de origem e a base de mesclagem, que é a confirmação principal da ramificação de destino no momento em que a solicitação pull foi criada. Se nenhuma alteração for exibida, as ramificações podem ser idênticas ou você pode ter escolhido a mesma ramificação para a origem e o destino. 

1. Quando a solicitação pull tiver o código e as alterações que você deseja revisar, selecione **Criar**.
**nota**  
Depois que você criar a solicitação pull, poderá adicionar comentários. Os comentários podem ser adicionados à solicitação pull ou a linhas individuais em arquivos, bem como à solicitação pull geral. Você pode adicionar links para recursos, como arquivos, usando o sinal @ seguido pelo nome do arquivo. 

Quando você cria a pull request, o **OnPullRequest**fluxo de trabalho começa a usar os arquivos de origem na `test` ramificação. Enquanto os revisores aprovam sua alteração de código, você pode observar os resultados escolhendo o fluxo de trabalho e visualizando o resultado do teste.

Depois de revisar a alteração, você pode mesclar o código. A mesclagem do código com a ramificação padrão iniciará automaticamente o fluxo de trabalho que criará e implantará suas alterações.<a name="getting-started-template-project-pull-requests-merge-console"></a>

**Para mesclar uma pull request do console CodeCatalyst**

1. Navegue até o seu projeto de aplicação moderna.

1. Na página do projeto, em **Abrir solicitações pull**, escolha a solicitação pull que você deseja mesclar. Se você não vir a solicitação pull, selecione **Exibir tudo** e, depois, escolha-a na lista. Escolha **Merge (Mesclar)**.

1. Selecione entre as estratégias de mesclagem disponíveis para a solicitação pull. Também é possível selecionar ou desmarcar a opção de excluir a ramificação de origem depois de mesclar a solicitação pull e, depois, selecionar **Mesclar**.
**nota**  
Se o botão **Mesclar** não estiver ativo ou você ver o rótulo **Não mesclável**, um ou mais revisores obrigatórios ainda não aprovaram a pull request ou a pull request não pode ser mesclada no console. CodeCatalyst Um revisor que não aprovou uma solicitação pull é indicado por um ícone de relógio em **Visão geral** na área **Detalhes da solicitação pull**. Se todos os revisores obrigatórios aprovaram a solicitação pull, mas o botão **Mesclar** ainda não estiver ativo, você pode ter um conflito de mesclagem. Você pode resolver conflitos de mesclagem para a ramificação de destino no CodeCatalyst console e, em seguida, mesclar a pull request, ou pode resolver conflitos e mesclar localmente e, em seguida, enviar o commit que contém a mesclagem para. CodeCatalyst Para ter mais informações, consulte [Mescla de uma solicitação pull (Git)](pull-requests-merge.md#pull-requests-merge-git) e a documentação do Git.

Depois de mesclar as alterações da `test` ramificação na ramificação, a **main** alteração inicia automaticamente o **ApplicationDeploymentPipeline**fluxo de trabalho que cria e implanta sua alteração. <a name="getting-started-template-project-pull-requests-merge-view-success"></a>

**Para ver a confirmação mesclada ser executada no fluxo de trabalho ApplicationDeploymentPipeline**

1. No painel de navegação, escolha **CI/CD** e **Fluxos de trabalho**. 

1. Em **Fluxos de trabalho**, em **ApplicationDeploymentPipeline**, expanda **Execuções recentes**. Você pode ver a execução do fluxo de trabalho iniciada pela confirmação de mesclagem. Se desejar, escolha-a para observar o progresso da execução. 

1. Quando a execução for concluída, recarregue o URL que você visitou anteriormente. Veja o pegasus para verificar se a idade mudou.  
![\[A alteração do código foi mesclada, criada e implantada, visível na aplicação.\]](http://docs.aws.amazon.com/pt_br/codecatalyst/latest/userguide/images/modified-mysfits.png)

## Etapa 8: encerrar o problema
<a name="getting-started-template-project-close-issue"></a>

Quando um problema é resolvido, ele pode ser fechado no CodeCatalyst console.

**Para fechar um problema para um projeto**

1. Navegue até o projeto.

1. No painel de navegação, selecione **Problemas**.

1. Drag-and-drop o problema na coluna **Concluído**.

Para obter mais informações, consulte [Acompanhe e organize o trabalho com problemas no CodeCatalystAcompanhar e organizar o trabalho com problemas](issues.md).

## Limpar os recursos
<a name="getting-started-template-project-clean-up"></a>

Limpe CodeCatalyst e AWS remova vestígios deste tutorial do seu ambiente.

Você pode optar por continuar usando o projeto usado neste tutorial ou excluir o projeto e os recursos associados.

**nota**  
A exclusão desse projeto excluirá todos os repositórios, problemas e artefatos do projeto para todos os membros.

**Para excluir um projeto**

1. Navegue até seu projeto e selecione **Configurações do projeto**.

1. Escolha a guia **Geral**.

1. No nome do projeto, selecione **Excluir projeto**.

**Para excluir recursos no CloudFormation Amazon S3**

1. Faça login no Console de gerenciamento da AWS com a mesma conta que você adicionou ao seu CodeCatalyst espaço.

1. Vá para o serviço **CloudFormation**.

1. Exclua a *string* pilha **mysfits**.

1. Exclua a pilha **development-mysfits *string***.

1. Escolha (mas não exclua) a **CDKToolkit**pilha. Escolha a guia **Recursos**. Escolha o **StagingBucket**link e exclua o bucket e o conteúdo do bucket no Amazon S3.
**nota**  
Se você não excluir esse bucket manualmente, poderá ver um erro ao executar novamente o esquema de aplicação web moderna de três níveis.

1. (Opcional) Exclua a **CDKToolkit**pilha.

## Referência
<a name="getting-started-template-project-reference"></a>

O modelo moderno de aplicativo web de três camadas implanta recursos em seu CodeCatalyst espaço e em sua AWS conta na nuvem. AWS Esses recursos são:
+ **No seu CodeCatalyst espaço**:
  + Um CodeCatalyst projeto que inclui os seguintes recursos:
    + Um [repositório de origem](source.md): esse repositório contém código de amostra para uma aplicação web “Mysfits”.
    + Um [fluxo de trabalho](workflow.md): esse fluxo de trabalho cria e implanta o código da aplicação Mysfits sempre que uma alteração é feita na ramificação padrão
    + [Quadro de problemas](issues.md) e backlog: esse quadro e o backlog podem ser usados para planejar e acompanhar o trabalho.
    + Um [pacote de relatórios de teste](test-workflow-actions.md): esse pacote inclui relatórios automatizados incluídos no código de amostra.
+ **No associado Conta da AWS**:
  + Uma **CDKToolkit**pilha — Essa pilha implanta os seguintes recursos:
    + Um bucket de armazenamento do Amazon S3, uma política de bucket e a AWS KMS chave usada para criptografar o bucket.
    + Um perfil de implantação do IAM para a ação de implantação.
    + AWS Funções e políticas do IAM em apoio aos recursos na pilha.
**nota**  
O não **CDKToolkit**é demolido e recriado para cada implantação. Essa pilha é iniciada em cada conta para apoiar o AWS CDK.
  + Uma pilha **development-mysfits** — Essa *string* BackEnd pilha implanta os seguintes recursos de back-end:
    + Um endpoint do Amazon API Gateway.
    + AWS Funções e políticas do IAM em apoio aos recursos na pilha.
    + Uma AWS Lambda função e uma camada fornecem a plataforma de computação sem servidor para o aplicativo moderno.
    + Uma política e um perfil do IAM para a implantação do bucket e a função do Lambda.
  + Uma pilha **mysfits** — Essa *string* pilha implanta o aplicativo de front-end. AWS Amplify 

### Consulte também
<a name="getting-started-template-project-reference-links"></a>

Para obter mais informações sobre os AWS serviços em que os recursos são criados como parte deste tutorial, consulte o seguinte:
+ **Amazon S3**: um serviço de armazenamento de ativos de frontend em um serviço de armazenamento de objetos oferecendo escalabilidade, disponibilidade de dados, segurança e performance líderes do setor. Para ter mais informações, consulte o [Guia do usuário do Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/).
+ **Amazon API Gateway** — Um serviço para criar, publicar, manter, monitorar e proteger REST, HTTP e WebSocket APIs em qualquer escala. Para obter mais informações, consulte o [Guia do desenvolvedor do API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/).
+ **Amplify**: serviço para hospedar a aplicação de frontend. Para ter mais informações, consulte o [Guia do usuário de hospedagem do AWS Amplify](https://docs.aws.amazon.com/amplify/latest/userguide/welcome.html).
+ **AWS Cloud Development Kit (AWS CDK)**— Uma estrutura para definir a infraestrutura de nuvem em código e provisioná-la por meio dela. AWS CloudFormation AWS CDK Isso inclui o AWS CDK Toolkit, que é uma ferramenta de linha de comando para interagir com AWS CDK aplicativos e pilhas. Para obter mais informações, consulte o [Guia do desenvolvedor do AWS Cloud Development Kit (AWS CDK)](https://docs.aws.amazon.com/cdk/latest/guide/).
+ **Amazon DynamoDB**: um serviço de banco de dados NoSQL totalmente gerenciado para armazenar dados. Para ter mais informações, consulte o [Guia do desenvolvedor do Amazon DynamoDB](https://docs.aws.amazon.com/amplify/latest/userguide/welcome.html).
+ **AWS Lambda** — Um serviço para invocar seu código em uma infraestrutura de computação de alta disponibilidade sem provisionar ou gerenciar servidores. Para obter mais informações, consulte o [Guia do desenvolvedor do AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/).
+ **AWS IAM** — Um serviço para controlar com segurança o acesso AWS e seus recursos. Para obter mais informações, consulte o [Manual do usuário do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/).

# Tutorial: começo com um projeto vazio e adição manual de recursos
<a name="getting-started-blank-template"></a>

Você pode criar um projeto vazio sem nenhum recurso predefinido dentro dele escolhendo o esquema **Projeto vazio** ao criar o projeto. Depois de criar um projeto vazio, você pode criar e adicionar recursos a ele de acordo com as necessidades do projeto. Como os projetos criados sem um blueprint ficam vazios na criação, essa opção exige mais conhecimento sobre criação e configuração de CodeCatalyst recursos para começar.

**Topics**
+ [Pré-requisitos](#getting-started-bt-prerequisites)
+ [Criar um projeto vazio](#getting-started-bt-proj-create)
+ [Criar um repositório de origem](#getting-started-bt-source-create)
+ [Criar um fluxo de trabalho para criar, testar e implantar uma alteração de código](#getting-started-bt-workflow-create)
+ [Convidar alguém para o projeto](#getting-started-bt-ipa-user)
+ [Criar problemas para colaborar e monitorar o trabalho](#getting-started-bt-issue)

## Pré-requisitos
<a name="getting-started-bt-prerequisites"></a>

Para criar um projeto vazio, você deve ter o perfil de **Administrador do espaço** ou **Usuário avançado**. Se esta é a primeira vez que você faz login CodeCatalyst, consulte[Configuração e login no CodeCatalystConfiguração e login no CodeCatalyst](setting-up-topnode.md).

## Criar um projeto vazio
<a name="getting-started-bt-proj-create"></a>

Criar um projeto é o primeiro passo para poder trabalhar em conjunto. Se quiser criar seus próprios recursos, como repositórios de origem e fluxos de trabalho, você pode começar com um projeto vazio. 

**Para criar um projeto vazio**

1. Navegue até o espaço onde você deseja criar um projeto.

1. No painel do espaço, escolha **Criar projeto**.

1. Escolha **Começar do zero**.

1. Em **Dê um nome ao projeto**, insira o nome que você deseja atribuir ao projeto. O nome deve ser exclusivo em seu espaço.

1. Escolha **Criar projeto**.

Agora que você tem um projeto vazio. A próxima etapa é criar um repositório de origem.

## Criar um repositório de origem
<a name="getting-started-bt-source-create"></a>

Crie um repositório de origem para armazenar e colaborar no código do projeto. Os membros do projeto podem clonar esse repositório nos computadores locais para trabalhar no código. Como alternativa, você pode optar por vincular um repositório hospedado em um serviço compatível, mas isso não será abordado neste tutorial. Para obter mais informações, consulte [Vincular um repositório de origem](source-repositories-link.md).

**Como criar um repositório de origem**

1. Abra o CodeCatalyst console em [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Navegue até o seu projeto.

1. No painel de navegação, selecione **Código** e, em seguida, selecione **Repositórios de origem**.

1. Escolha **Adicionar repositório** e selecione **Criar repositório**.

1. Em **Nomes de repositórios**, forneça um nome para o repositório. Neste guia, usamos*codecatalyst-source-repository*, mas você pode escolher um nome diferente. Os nomes dos repositórios devem ser exclusivos em um projeto. Para ter mais informações sobre os requisitos para nomes de repositórios, consulte [Cotas para repositórios de origem em CodeCatalyst](source-quotas.md).

1. (Opcional) Em **Descrição**, adicione uma descrição para o repositório que ajudará outros usuários no projeto a entender para que o repositório é usado. 

1. Selecione **Criar repositório (padrão)**. Essa opção cria um repositório que inclui uma ramificação padrão e um arquivo README.md. Ao contrário de um repositório vazio, você pode usar esse repositório assim que ele for criado.

1. Na **Ramificação padrão**, deixe o nome como *principal*, a menos que você tenha um motivo para escolher um nome diferente. Todos os exemplos neste guia usam o nome *principal* para a ramificação padrão.

1. (Opcional) Adicione um arquivo `.gitignore` para o tipo de código que você planeja enviar. 

1. Escolha **Criar**.
**nota**  
CodeCatalyst adiciona um `README.md` arquivo ao seu repositório quando você o cria. CodeCatalysttambém cria uma confirmação inicial para o repositório em uma ramificação padrão chamada **main**. Você pode editar ou excluir o arquivo README.md, mas não pode excluir a ramificação padrão.

Você pode adicionar código rapidamente ao repositório criando um Ambiente de Desenvolvimento. Para este tutorial, recomendamos que você crie um ambiente de desenvolvimento usando AWS Cloud9 e escolha a opção de criar uma ramificação a partir da ramificação **principal** ao criar o ambiente de desenvolvimento. Usamos o nome **test** nessa ramificação, mas você pode inserir um nome de ramificação diferente, se preferir.

**Para criar um Ambiente de Desenvolvimento com uma nova ramificação**

1. Abra o CodeCatalyst console em [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Navegue até o projeto em que deseja criar um Ambiente de Desenvolvimento.

1. Selecione o nome do repositório na lista de repositórios de origem do projeto. Como alternativa, no painel de navegação, escolha **Código**, **Repositórios de origem** e selecione o repositório para o qual você deseja criar um Ambiente de Desenvolvimento.

1. Na página inicial do repositório, selecione **Criar um ambiente de desenvolvimento**.

1. Selecione um IDE compatível no menu suspenso. Consulte [Ambientes de desenvolvimento integrados compatíveis para ambientes de desenvolvimento](devenvironment-create.md#devenvironment-supported-ide) para obter mais informações.

1. Escolha o repositório a ser clonado, selecione **Trabalhar em uma nova ramificação**, insira um nome de ramificação no campo **Nome da ramificação** e escolha uma ramificação a partir da qual criar a nova ramificação no menu **Criar ramificação**.

1. Opcionalmente, adicione um alias para o Ambiente de Desenvolvimento.

1. Opcionalmente, escolha o botão de edição da **configuração do Ambiente de Desenvolvimento** para editar a configuração de computação, armazenamento ou tempo limite do Ambiente de Desenvolvimento.

1. Escolha **Criar**. Enquanto seu Ambiente de Desenvolvimento estiver sendo criado, a coluna de status do Ambiente de Desenvolvimento exibirá **Iniciando** e a coluna de status exibirá **Executando** após a criação do Ambiente de Desenvolvimento. Uma nova guia será aberta com seu ambiente de desenvolvimento no IDE de sua escolha. Você pode editar o código, confirmar e enviar suas alterações.

## Criar um fluxo de trabalho para criar, testar e implantar uma alteração de código
<a name="getting-started-bt-workflow-create"></a>

Em CodeCatalyst, você organiza a criação, o teste e a implantação de seus aplicativos ou serviços em fluxos de trabalho. Os fluxos de trabalho consistem em ações e podem ser configurados para serem executados automaticamente após a ocorrência de eventos específicos do repositório de origem, como envio de código ou abertura ou atualização de uma solicitação pull. Para obter mais informações sobre fluxos de trabalho, consulte [Compilação, teste e implantação com fluxos de trabalhoCompilação, teste e implantação com fluxos de trabalho](workflow.md).

Siga as instruções descritas em [Conceitos básicos de fluxos de trabalho](workflows-getting-started.md) para criar seu primeiro fluxo de trabalho.

## Convidar alguém para o projeto
<a name="getting-started-bt-ipa-user"></a>

Agora que você configurou seu projeto personalizado, convide outras pessoas para trabalhar com você.

**Para convidar alguém para o projeto**

1. Navegue até o projeto para o qual você deseja convidar usuários.

1. No painel de navegação, escolha **Configurações do projeto**.

1. Na guia **Membros**, selecione **Convidar**.

1. Digite os endereços de e-mail das pessoas que você deseja convidar como usuários para o projeto. Você pode digitar vários endereços de e-mail separados por um espaço ou uma vírgula. Você também pode escolher entre membros do seu espaço que não sejam membros do projeto. 

1. Escolha o perfil do usuário.

   Ao concluir a adição de usuários, selecione **Convidar**.

## Criar problemas para colaborar e monitorar o trabalho
<a name="getting-started-bt-issue"></a>

CodeCatalyst ajuda você a monitorar recursos, tarefas, bugs e qualquer outro trabalho envolvido em seu projeto com problemas. Você pode criar problemas para monitorar as ideias e o trabalho necessários. Por padrão, quando você cria um problema, ele é adicionado ao backlog. Você pode mover os problemas para um quadro onde é possível acompanhar o trabalho em andamento. Você também pode atribuir um problema a um membro específico do projeto.

**Para criar um problema para um projeto**

1. Abra o CodeCatalyst console em [https://codecatalyst.aws/](https://codecatalyst.aws/).

   Verifique se você está navegando no projeto em que deseja criar problemas. Para visualizar todos os projetos, no painel de navegação, escolha **Amazon** e CodeCatalyst, se necessário, escolha **Visualizar todos os projetos**. Escolha o projeto em que deseja criar ou trabalhar com os problemas.

1. No painel de navegação, selecione **Rastrear** e, depois, selecione **Backlog**.

1. Selecione **Criar problema**. 

1. Em **Título do problema**, forneça um nome para o problema. Se desejar, forneça uma descrição do problema. Escolha o status, a prioridade e a estimativa do problema, se desejar. Você também pode atribuir o problema a um membro do projeto na lista de membros do projeto.
**dica**  
Você pode optar por atribuir um problema ao **Amazon Q** para que o Amazon Q tente resolver o problema. Se a tentativa for bem-sucedida, uma solicitação pull será criada e o status do problema mudará para **Em análise** para que você possa revisar e testar o código. Para obter mais informações, consulte [Tutorial: Usando recursos CodeCatalyst generativos de IA para acelerar seu trabalho de desenvolvimento](getting-started-project-assistance.md).  
Essa funcionalidade exige que recursos de IA generativa estejam habilitados para o espaço. Para ter mais informações, consulte [Gerenciar recursos de IA generativa](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-generative-ai-features.html). 

1. Escolha **Salvar**.

Depois de criar problemas, você pode atribuí-los aos membros do projeto, estimá-los e monitorá-los em um quadro Kanban. Para obter mais informações, consulte [Acompanhe e organize o trabalho com problemas no CodeCatalystAcompanhar e organizar o trabalho com problemas](issues.md).

# Tutorial: Usando recursos CodeCatalyst generativos de IA para acelerar seu trabalho de desenvolvimento
<a name="getting-started-project-assistance"></a>

Se você tem um projeto e um repositório de origem na Amazon CodeCatalyst em um espaço onde os recursos generativos de IA estão habilitados, você pode usar esses recursos para ajudar a acelerar o desenvolvimento de software. Os desenvolvedores geralmente têm mais tarefas a fazer do que tempo para realizá-las. Eles geralmente não se dão ao trabalho de explicar as alterações de código aos colegas de equipe ao criar solicitações pull para análise dessas alterações, esperando que outros usuários achem as alterações autoexplicativas. Os criadores e revisores do pull request também não têm tempo para encontrar e ler todos os comentários em um pull request minuciosamente, especialmente se o pull request tiver várias revisões. CodeCatalyst se integra ao Amazon Q Developer Agent para desenvolvimento de software para fornecer recursos generativos de IA que podem ajudar os membros da equipe a realizar suas tarefas mais rapidamente e aumentar o tempo necessário para se concentrar nas partes mais importantes do trabalho. 

O Amazon Q Developer é um assistente conversacional generativo baseado em IA que pode ajudar você a entender, criar, estender e operar aplicativos. AWS Para acelerar sua construção AWS, o modelo que impulsiona o Amazon Q é aprimorado com AWS conteúdo de alta qualidade para produzir respostas mais completas, acionáveis e referenciadas. Para obter mais informações, consulte [O que é Amazon Q Developer?](https://docs.aws.amazon.com/amazonq/latest/aws-builder-use-ug/what-is.html) no *Guia do usuário do Amazon Q Developer*. 

**nota**  
**Desenvolvido pelo Amazon Bedrock**: AWS implementa a detecção [automática de abusos](https://docs.aws.amazon.com//bedrock/latest/userguide/abuse-detection.html). Como os recursos **Escrever descrição para mim**, **Criar resumo do conteúdo**, **Recomendar tarefas**, **Usar o Amazon Q para criar ou adicionar recursos a um projeto** e **Atribuir problemas ao Amazon Q** com os recursos do agente do Amazon Q Developer para desenvolvimento de software são baseados no Amazon Bedrock, os usuários podem aproveitar ao máximo os controles implementados no Amazon Bedrock para reforçar a segurança, a proteção e o uso responsável de inteligência artificial.

Neste tutorial, você aprenderá a usar os recursos generativos de IA CodeCatalyst para ajudá-lo a criar projetos com blueprints, bem como adicionar blueprints a projetos existentes. Além disso, você aprenderá a resumir as alterações entre as ramificações ao criar solicitações pull e a resumir os comentários deixados em uma solicitação pull. Você também aprenderá a criar problemas com suas ideias para alterações ou melhorias no código e atribuí-los ao Amazon Q. Como parte do trabalho com problemas atribuídos ao Amazon Q, você aprenderá como permitir que o Amazon Q sugira tarefas e como atribuir e trabalhar em qualquer tarefa criada como parte do trabalho em um problema.

**Topics**
+ [Pré-requisitos](#getting-started-project-assistance-prerequisites)
+ [Usar o Amazon Q para escolher um esquema ao criar um projeto ou adicionar funcionalidade](#getting-started-project-assistance-create-apply-bp)
+ [Criar um resumo das alterações de código entre as ramificações ao criar uma solicitação pull](#getting-started-project-assistance-pull-request-summary)
+ [Criar um resumo dos comentários deixados sobre alterações de código em uma solicitação pull](#getting-started-project-assistance-comment-summary)
+ [Criar um problema e atribuir ao Amazon Q](#getting-started-project-assistance-issue-to-code)
+ [Criar um problema e ter tarefas recomendadas pelo Amazon Q para ele](#getting-started-project-assistance-issue-to-tasks)
+ [Limpar os recursos](#getting-started-project-assistance-clean-up)

## Pré-requisitos
<a name="getting-started-project-assistance-prerequisites"></a>

Para trabalhar com os CodeCatalyst recursos deste tutorial, você deve primeiro ter concluído e ter acesso aos seguintes recursos:
+ Você tem um AWS Builder ID ou uma identidade de login único (SSO) para fazer login. CodeCatalyst
+ Você está em um espaço que tem recursos de IA generativa ativados. Para ter mais informações, consulte [Gerenciar recursos de IA generativa](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-generative-ai-features.html).
+ Você tem o perfil de colaborador ou administrador do projeto em um projeto nesse espaço.
+ A menos que você esteja criando um projeto com IA generativa, seu projeto existente tem pelo menos um repositório de origem configurado. Não há suporte a repositórios vinculados.
+ Ao atribuir problemas para ter uma solução inicial criada pela IA generativa, o projeto não pode ser configurado com a extensão do **software Jira**. A extensão não é compatível para esse recurso. 

Para ter mais informações, consulte [Criar um espaço](spaces-create.md), [Acompanhe e organize o trabalho com problemas no CodeCatalystAcompanhar e organizar o trabalho com problemas](issues.md), [Adicione funcionalidade a projetos com extensões no CodeCatalystAdicionar funcionalidade a projetos com extensões](extensions.md) e [Concessão de acesso com perfis de usuário](ipa-roles.md).

Este tutorial é baseado em um projeto criado usando o esquema de **aplicação web moderna de três níveis** com Python. Se você usar um projeto criado com um esquema diferente, ainda poderá seguir as etapas, mas algumas especificidades podem variar, como código de exemplo e linguagem. 

## Usar o Amazon Q para escolher um esquema ao criar um projeto ou adicionar funcionalidade
<a name="getting-started-project-assistance-create-apply-bp"></a>

Como desenvolvedor do projeto, você pode colaborar com o Amazon Q, um assistente de IA generativa, ao criar novos projetos ou adicionar componentes a projetos existentes. Você pode fornecer ao Amazon Q os requisitos do projeto interagindo com ele em uma interface semelhante a um bate-papo. Com base em seus requisitos, o Amazon Q sugere um esquema e também descreve os requisitos que não podem ser atendidos. Se o seu espaço tiver esquemas personalizados, o Amazon Q aprenderá e incluirá esses esquemas nas recomendações também. Você pode continuar com a sugestão do Amazon Q se estiver satisfeito, e ele criará os recursos necessários, como um repositório de origem com código para seu requisito. O Amazon Q também cria problemas para requisitos que não podem ser satisfeitos com um esquema. Para saber mais sobre os CodeCatalyst esquemas disponíveis, consulte[Criação de um projeto abrangente com CodeCatalyst plantasCriação de um projeto abrangente com esquemas](project-blueprints.md). Para saber mais sobre o uso do Amazon Q com esquemas, consulte [Práticas recomendadas ao usar o Amazon Q para criar projetos ou adicionar funcionalidades com esquemas](projects-create.md#projects-create-amazon-q).

**Para criar um projeto com o Amazon Q**

1. Abra o CodeCatalyst console em [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. No CodeCatalyst console, navegue até o espaço em que você deseja criar um blueprint.

1. No painel do espaço, selecione **Criar com Amazon Q**.

1. No campo de entrada de texto do prompt do Amazon Q, forneça instruções escrevendo uma breve descrição sobre o projeto que você deseja criar. Por exemplo, `“I want to create a project in Python that has a presentation layer responsible for how the data is presented, an application layer that contains the core logic and functionality of the application, and a data layer that manages the storage and retrieval of the data.”`.

   (Opcional) Em **Experimentar exemplos**, você pode usar um prompt pré-escrito escolhendo um esquema. Por exemplo, se você escolher a aplicação React, o seguinte prompt será fornecido: `“I want to create a project in Python that has a presentation layer responsible for how the data is presented, an application layer that contains the core logic and functionality of the application, and a data layer that manages the storage and retrieval of the data. I also want to add authentication and authorization mechanisms for security and allowable actions.”`

1. Selecione **Enviar** para enviar suas instruções para o Amazon Q. O assistente de IA generativa fornece uma sugestão e descreve os requisitos que não podem ser atendidos pelo esquema. Por exemplo, o Amazon Q pode sugerir o seguinte com base em seus critérios:

   ```
   I recommend using the Modern three-tier web application blueprint based on 
                       your requirements. Blueprints are dynamic and can always be updated and edited later.
   
   Modern three-tier web application
   By Amazon Web Services
   
   This blueprint creates a Mythical Mysfits 3-tier web application with a modular presentation, application, and data layers. 
   The application leverages containers, infrastructure as code (IaC), continuous integration and continuous delivery (CI/CD), 
   and serverless code functions.
   
   Version: 0.1.163
   
   View details
   
   The following requirements could not be met so I will create issues for you.
   • Add authentication and authorization mechanisms for security and allowable actions.
   ```

1. (Opcional) Para visualizar os detalhes do esquema sugerido, selecione **Exibir detalhes**.

1. Execute um destes procedimentos:

   1. Selecione **Sim, usar esse esquema** se estiver satisfeito com a sugestão.

   1. Selecione **Editar prompt** se quiser modificar o prompt.

   1. Selecione **Recomeçar** se quiser limpar completamente o prompt.

1. Execute um destes procedimentos:

   1. Selecione **Configurar** se quiser configurar o esquema sugerido. Você também poderá configurar o esquema mais tarde.

   1. Selecione **Ignorar** se você não quiser modificar as configurações do esquema no momento.

1. Se você optar por configurar o esquema, selecione **Continuar** depois de modificar os recursos do projeto.

1. Quando solicitado, insira o nome que você deseja atribuir ao seu projeto e os nomes dos recursos associados. O nome deve ser exclusivo em seu espaço.

1. Selecione **Criar projeto** para criar um projeto com o esquema. O Amazon Q cria recursos usando o esquema. Por exemplo, se você criar um projeto com o blueprint de aplicativo de página única, será criado um repositório de origem para códigos e fluxos de trabalho relevantes. CI/CD 

1. (Opcional) Por padrão, o Amazon Q também cria problemas para os requisitos que não são atendidos por um esquema. É possível escolher para quais itens você não deseja criar problemas. Depois de optar por permitir que o Amazon Q crie problemas, você também pode atribuir um problema ao Amazon Q. Ele analisará o problema no contexto dos repositórios de origem fornecidos, mostrando um resumo dos arquivos de origem e códigos relevantes. Para obter mais informações, consulte [Descoberta e visualização de problemas](issues-view.md), [Criar um problema e atribuir ao Amazon Q](#getting-started-project-assistance-issue-to-code) e [Práticas recomendadas ao criar e trabalhar com problemas atribuídos ao Amazon Q](issues-create-issue.md#issues-create-issue-assign-genai-best-practices).

Depois de criar um projeto com o Amazon Q, você também pode usar o Amazon Q para adicionar novos componentes, pois ele sugere CodeCatalyst esquemas com base em seus requisitos.

**Para adicionar um esquema com o Amazon Q**

1. Abra o CodeCatalyst console em [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. No CodeCatalyst console, navegue até o projeto em que você deseja adicionar um blueprint.

1. Selecione **Adicionar com Amazon Q**.

1. No campo de entrada de texto do prompt do Amazon Q, forneça instruções escrevendo uma breve descrição sobre o projeto que você deseja criar. Por exemplo, `“I want to create a project in Python that has a presentation layer responsible for how the data is presented, an application layer that contains the core logic and functionality of the application, and a data layer that manages the storage and retrieval of the data.”`.

   (Opcional) Em **Experimentar exemplos**, você pode usar um prompt pré-escrito escolhendo um esquema. Por exemplo, se você escolher a aplicação React, o seguinte prompt será fornecido: `“I want to create a project in Python that has a presentation layer responsible for how the data is presented, an application layer that contains the core logic and functionality of the application, and a data layer that manages the storage and retrieval of the data. I also want to add authentication and authorization mechanisms for security and allowable actions.”`

1. Selecione **Enviar** para enviar suas instruções para o Amazon Q. O assistente de IA generativa fornece uma sugestão e descreve os requisitos que não podem ser atendidos pelo esquema. Por exemplo, o Amazon Q pode sugerir o seguinte com base em seus critérios:

   ```
   I recommend using the Single-page application blueprint based on your requirements. Blueprints are dynamic and can always be updated and edited later.
   
   Single-page application
   By Amazon Web Services
   
   This blueprint creates a SPA (single-page application) using React, Vue, or Angular frameworks and deploys to AWS Amplify Hosting.
   
   Version: 0.2.15
   View details
   
   The following requirements could not be met so I will create issues for you.
   • The application should have reusable UI components
   • The application should support for client-side routing
   • The application may require server-side rendering for improved performance and SEO
   ```

1. (Opcional) Para visualizar os detalhes do esquema sugerido, selecione **Exibir detalhes**.

1. Execute um destes procedimentos:

   1. Selecione **Sim, usar esse esquema** se estiver satisfeito com a sugestão.

   1. Selecione **Editar prompt** se quiser modificar o prompt.

   1. Selecione **Recomeçar** se quiser limpar completamente o prompt.

1. Execute um destes procedimentos:

   1. Selecione **Configurar** se quiser configurar o esquema sugerido. Você também poderá configurar o esquema mais tarde.

   1. Selecione **Ignorar** se você não quiser modificar as configurações do esquema no momento.

1. Se você optar por configurar o esquema, selecione **Continuar** depois de modificar os recursos do projeto.

1. Selecione **Adicionar ao projeto** para adicionar recursos a um projeto com o esquema. O Amazon Q cria recursos usando o esquema. Por exemplo, se você adicionar a um projeto com o blueprint de aplicativo de página única, será criado um repositório de origem para códigos e fluxos de trabalho relevantes. CI/CD 

1. (Opcional) Por padrão, o Amazon Q também cria problemas para os requisitos que não são atendidos por um esquema. É possível escolher para quais itens você não deseja criar problemas. Depois de optar por permitir que o Amazon Q crie problemas, você também pode atribuir um problema ao Amazon Q. Ele analisará o problema no contexto dos repositórios de origem fornecidos, mostrando um resumo dos arquivos de origem e códigos relevantes. Para obter mais informações, consulte [Criar um problema e atribuir ao Amazon Q](#getting-started-project-assistance-issue-to-code) e [Práticas recomendadas ao criar e trabalhar com problemas atribuídos ao Amazon Q](issues-create-issue.md#issues-create-issue-assign-genai-best-practices).

## Criar um resumo das alterações de código entre as ramificações ao criar uma solicitação pull
<a name="getting-started-project-assistance-pull-request-summary"></a>

Uma solicitação pull é a principal maneira para você e outros membros do projeto revisarem, comentarem e mesclarem alterações de código de uma ramificação para outra. Você pode usar solicitações pull para revisar alterações de código de maneira colaborativa em caso de alterações ou correções relativamente pequenas, adições significativas de recursos ou novas versões do seu software lançado. Resumir as alterações no código e a intenção por trás das mudanças como parte da descrição da solicitação pull é útil para outras pessoas que revisarão o código e também ajuda a entender o histórico das alterações no código ao longo do tempo. No entanto, os desenvolvedores geralmente confiam no código para se explicar ou fornecer detalhes ambíguos, em vez de descrever alterações com detalhes suficientes para que os revisores entendam o que estão revisando ou qual era a intenção por trás das alterações no código.

Você pode usar o recurso **Escrever descrição para mim** ao criar solicitações pull para que o Amazon Q crie uma descrição das alterações contidas em uma solicitação pull. Quando você escolhe essa opção, o Amazon Q analisa as diferenças entre a ramificação de origem que contém as alterações de código e a ramificação de destino na qual você deseja mesclar essas alterações. Em seguida, ele cria um resumo dessas alterações, bem como sua melhor interpretação da intenção e do efeito dessas alterações.

**nota**  
Esse recurso não funciona com submódulos do Git. Ele não resumirá nenhuma alteração em um submódulo do Git que faz parte da solicitação pull.   
Esse recurso não está disponível para solicitações pull em repositórios vinculados.

Você pode experimentar esse recurso com qualquer solicitação pull que criar, mas neste tutorial, vamos testá-lo fazendo algumas alterações simples no código contido em um projeto criado em um esquema de **aplicação web moderna de três níveis** baseado em Python.

**dica**  
Se você estiver usando um projeto criado com um esquema diferente ou com seu próprio código, ainda poderá seguir este tutorial, mas os exemplos deste tutorial não corresponderão ao código do seu projeto. Em vez do exemplo sugerido abaixo, faça alterações simples no código do projeto em uma ramificação e, depois, crie uma solicitação pull para testar o recurso, conforme mostrado nas etapas a seguir.

Primeiro, você criará uma ramificação no repositório de origem. Em seguida, você fará uma rápida alteração no código de um arquivo nessa ramificação usando o editor de texto no console. Depois, você criará uma solicitação pull e usará o recurso **Escrever descrição para mim** para resumir as alterações feitas.

**Como criar uma ramificação (console)**

1. No CodeCatalyst console, navegue até o projeto em que seu repositório de origem reside.

1. Selecione o nome do repositório na lista de repositórios de origem do projeto. No painel de navegação, também é possível selecionar **Código** e escolher **Repositórios de origem**.

1. Selecione o repositório onde você deseja criar uma ramificação.

1. Na página de visão geral do repositório, selecione **Mais** e, depois, escolha **Criar ramificação**.

1. Insira um nome para a ramificação.

1. Selecione uma ramificação a partir da qual criar a ramificação e, depois, selecione **Criar**. 

Depois de ter uma ramificação, edite um arquivo nessa ramificação com uma simples alteração. Neste exemplo, você editará o arquivo `test_endpoint.py` para alterar o número de novas tentativas de testes de **3** para **5**.

**dica**  
Você também pode optar por criar ou usar um Ambiente de Desenvolvimento para fazer essa alteração no código. Para obter mais informações, consulte [Criar um Ambiente de Desenvolvimento](devenvironment-create.md).

**Para editar o arquivo `test_endpoint.py` no console**

1. Na página de visão geral do repositório de origem **mysfits**, escolha o menu suspenso da ramificação e escolha a ramificação que você criou no procedimento anterior.

1. Em **Arquivos**, navegue até o arquivo que você deseja editar. Por exemplo, para editar o arquivo `test_endpoint.py`, expanda os **testes**, expanda **integ** e escolha `test_endpoint.py`.

1. Escolha **Editar**.

1. Na linha 7, altere o número de vezes que todos os testes serão repetidos em:

   ```
   def test_list_all(retry=3):
   ```

   para:

   ```
   def test_list_all(retry=5):
   ```

1. Selecione **Confirmar** e confirme as alterações na ramificação.

Agora que você tem uma ramificação com uma alteração, pode criar uma solicitação pull.

**Crie uma solicitação pull com um resumo das alterações**

1. Na página de visão geral do repositório, selecione **Mais** e, depois, selecione **Criar solicitação pull**.

1. Em **Ramificação de destino**, selecione a ramificação na qual mesclar o código depois que ele for revisado. 
**dica**  
Escolha a ramificação com base na qual você criou a ramificação no procedimento anterior para ver a demonstração mais simples desse recurso. Por exemplo, se você criou sua ramificação a partir da ramificação padrão do repositório, escolha essa ramificação como a ramificação de destino da solicitação pull.

1. Em **Ramificação de origem**, escolha a ramificação que contém as alterações que você acabou de confirmar no arquivo `test_endpoint.py`. 

1. Em **Título da solicitação pull**, insira um título que ajude outros usuários a entender o que precisa ser revisado e por quê. 

1. Em **Descrição da solicitação pull**, selecione **Escrever descrição para mim** para que o Amazon Q crie uma descrição das alterações contidas na solicitação pull.

1. Um resumo das alterações é exibido. Revise o texto sugerido e selecione **Aceitar e adicionar à descrição**.

1. Se desejar, modifique o resumo para refletir melhor as alterações feitas no código. Você também pode optar por adicionar revisores ou vincular problemas a essa solicitação pull. Quando terminar de fazer as alterações adicionais desejadas, selecione **Criar**.

## Criar um resumo dos comentários deixados sobre alterações de código em uma solicitação pull
<a name="getting-started-project-assistance-comment-summary"></a>

Quando os usuários revisam uma solicitação pull, eles geralmente deixam vários comentários sobre as alterações nessa solicitação pull. Se houver muitos comentários de muitos revisores, pode ser difícil escolher temas comuns nos comentários ou até mesmo ter certeza de que você revisou todos os comentários em todas as revisões. Você pode usar o recurso **Criar resumo de comentários** para que o Amazon Q analise todos os comentários deixados sobre alterações de código em uma solicitação pull e crie um resumo desses comentários.

**nota**  
Os resumos dos comentários são temporários. Se você atualizar uma solicitação pull, o resumo desaparecerá. Os resumos de conteúdo não incluem comentários sobre a solicitação pull geral, apenas comentários deixados sobre diferenças no código nas revisões da solicitação pull.  
Esse recurso não funciona com nenhum comentário deixado sobre alterações de código nos submódulos do Git.  
Esse recurso não está disponível para solicitações pull em repositórios vinculados.

**Como criar um resumo dos comentários em uma solicitação pull**

1. Navegue até a solicitação pull criada no procedimento anterior. 
**dica**  
Se preferir, você pode usar qualquer solicitação pull aberta em seu projeto. Na barra de navegação, selecione **Código**, selecione **Solicitações pull** e escolha qualquer solicitação pull aberta.

1. Adicione alguns comentários à solicitação pull em **Alterações** se a solicitação pull ainda não tiver comentários.

1. Em **Visão geral**, selecione **Criar resumo de comentários**. Quando concluída, a seção **Resumo do comentário** se expande. 

1. Analise o resumo dos comentários deixados sobre as alterações no código nas revisões da solicitação pull e compare-o com os comentários na solicitação pull.

## Criar um problema e atribuir ao Amazon Q
<a name="getting-started-project-assistance-issue-to-code"></a>

As equipes de desenvolvimento criam problemas para monitorar e gerenciar seu trabalho, mas às vezes um problema persiste porque não está claro quem deve trabalhar nele, ou o problema requer pesquisa em uma parte específica da base de código ou outro trabalho urgente deve ser realizado primeiro. CodeCatalyst inclui integração com o Amazon Q Developer Agent para desenvolvimento de software. Você pode atribuir problemas a um assistente de IA generativa chamado **Amazon Q**, que pode analisar um problema com base no título e na descrição. Se você atribuir o problema ao Amazon Q, ele tentará criar um rascunho de solução para você avaliar. Isso pode ajudar você e sua equipe a se concentrarem e otimizarem o trabalho em questões que exigem sua atenção, enquanto o Amazon Q trabalha em uma solução para problemas que você não tem recursos para resolver imediatamente. 

**dica**  
O **Amazon Q** tem melhor desempenho em questões e problemas simples. Para ter melhores resultados, use uma linguagem simples para explicar claramente o que você quer que seja feito.

Quando você atribui um problema ao **Amazon Q**, CodeCatalyst marcará o problema como bloqueado até que você confirme como deseja que o Amazon Q resolva o problema. Isso exige que você responda a três perguntas antes de continuar: 
+  Se você deseja confirmar cada etapa necessária ou se deseja prosseguir sem feedback. Se você optar por confirmar cada etapa, poderá responder ao Amazon Q com comentários sobre a abordagem criada para poder iterar a abordagem, se necessário. O Amazon Q também pode revisar os comentários que os usuários deixam sobre qualquer solicitação pull criada se você escolher essa opção. Se você optar por não confirmar cada etapa, o Amazon Q poderá concluir o trabalho mais rapidamente, mas não analisará nenhum comentário fornecido sobre o problema ou em qualquer solicitação pull criada.
+ Se você deseja permitir que ele atualize os arquivos do fluxo de trabalho como parte do trabalho. Seu projeto pode ter fluxos de trabalho configurados para iniciar execuções em eventos de solicitação pull. Nesse caso, qualquer solicitação pull criada pela Amazon Q que inclua a criação ou atualização do YAML do fluxo de trabalho pode iniciar uma execução desses fluxos de trabalho incluídos na solicitação pull. Como prática recomendada, não permita que o Amazon Q trabalhe em arquivos de fluxo de trabalho, a menos que tenha certeza de que não há fluxos de trabalho em seu projeto que executem automaticamente esses fluxos de trabalho antes de você revisar e aprovar a solicitação pull criada por ele.
+ Se você quer permitir que ele sugira a criação de tarefas para dividir o trabalho no problema em incrementos menores que podem ser atribuídos individualmente aos usuários, incluindo o próprio Amazon Q. Permitir que o Amazon Q sugira e crie tarefas pode ajudar a acelerar o desenvolvimento de problemas complexos, permitindo que várias pessoas trabalhem em partes distintas do problema. Também pode ajudar a reduzir a complexidade de entender todo o trabalho, pois o trabalho necessário para concluir cada tarefa é, de preferência, mais simples do que o problema ao qual ele pertence.
+ Em qual repositório de origem você deseja que ele trabalhe. Mesmo que seu projeto tenha vários repositórios de origem, o Amazon Q só pode trabalhar com código em um repositório de origem. Não há suporte a repositórios vinculados.

Depois de fazer e confirmar suas escolhas, o **Amazon Q** moverá o problema para o estado **Em andamento** enquanto tenta determinar qual é a solicitação com base no título e na descrição do problema, bem como no código no repositório especificado. Ele criará um comentário fixo onde fornecerá atualizações sobre o status do trabalho. Depois de analisar os dados, a Amazon Q formulará uma possível abordagem para uma solução. O Amazon Q registra as ações atualizando o comentário fixo e comentando sobre o progresso no problema em todas as etapas. Ao contrário dos comentários fixos e das respostas, ele não mantém um registro estritamente cronológico do trabalho. Em vez disso, ele coloca as informações mais relevantes sobre o trabalho no nível superior do comentário fixo. Ele tentará criar código com base na abordagem e na análise do código que já está no repositório. Se gerar uma solução em potencial, ele criará uma ramificação e enviará o código para essa ramificação. Em seguida, ele cria uma solicitação pull que mesclará essa ramificação com a ramificação padrão. Quando o Amazon Q conclui o trabalho, ele move o problema para **Em análise** para que você e sua equipe saibam que há um código pronto para avaliação.

**nota**  
Esse recurso está disponível somente por meio de **Problemas** na região Oeste dos EUA (Oregon). Ele não estará disponível se você tiver configurado o projeto para usar o Jira com a extensão **Software Jira**. Além disso, se você personalizou o layout do quadro, o problema pode não mudar de estado. Para ter melhores resultados, use esse recurso somente com projetos que tenham um layout de quadro padrão.  
Esse recurso não funciona com submódulos do Git. Ele não pode fazer alterações em nenhum submódulo do Git incluído no repositório.  
Depois de atribuir um problema ao Amazon Q, você não pode alterar o título ou a descrição do problema nem atribuí-lo a outra pessoa. Se você cancelar a atribuição do problema ao **Amazon Q**, ele concluirá a etapa atual e, depois, deixará de funcionar. Ele não pode retomar o trabalho nem ser reatribuído ao problema depois do cancelamento da atribuição.  
Um problema pode ser movido automaticamente para a coluna **Em análise** se atribuído ao Amazon Q, se um usuário optar por permitir que ele crie tarefas. No entanto, o problema em **Em análise** ainda pode ter tarefas que estão em um estado diferente, como no estado **Em andamento**.

Nesta parte do tutorial, você criará três problemas com base em possíveis recursos do código incluído em projetos criados com o esquema de **aplicação web moderna de três níveis**: um para adicionar ou criar uma criatura mysfit, um para adicionar um recurso de classificação e um para atualizar um fluxo de trabalho para incluir uma ramificação chamada **test**.

**nota**  
 Se você estiver trabalhando em um projeto com código diferente, crie problemas com títulos e descrições relacionados a essa base de código.

**Como criar um problema e gerar uma solução para você avaliar**

1. No painel de navegação, selecione **Problemas** e verifique se você está na visualização **Quadro**.

1. Selecione **Criar problema**.

1. Dê ao problema um título que explique o que você quer fazer em linguagem simples. Por exemplo, para esse problema, insira o título **Create another mysfit named Quokkapus**. Em **Descrição**, forneça os seguintes detalhes:

   ```
   Expand the table of mysfits to 13, and give the new mysfit the following characteristics:
   
   Name: Quokkapus
   
   Species: Quokka-Octopus hybrid
   
   Good/Evil: Good
   
   Lawful/Chaotic: Chaotic
   
   Age: 216
   
   Description: Australia is full of amazing marsupials, but there's nothing there quite like the Quokkapus. 
   She's always got a friendly smile on her face, especially when she's using her eight limbs to wrap you up 
   in a great big hug. She exists on a diet of code bugs and caffeine. If you've got some gnarly code that needsa
   assistance, adopt Quokkapus and put her to work - she'll love it! Just make sure you leave enough room for 
   her to grow, and keep that coffee coming.
   ```

1. (Opcional) Anexe uma imagem para usar como miniatura e foto do perfil do mysfit ao problema. Se você fizer isso, atualize a descrição para incluir detalhes sobre quais imagens deseja usar e por quê. Por exemplo, você pode adicionar o seguinte à descrição: “O mysfit requer que arquivos de imagem sejam implantados no site. Adicione as imagens anexadas a este problema ao repositório de origem como parte do trabalho e implante as imagens no site.”
**nota**  
As imagens anexadas podem ou não ser implantadas no site durante as interações neste tutorial. Você mesmo pode adicionar as imagens ao site e, depois, deixar comentários para que o Amazon Q atualize o código para apontar para as imagens que você deseja usar depois de criar uma solicitação pull.

   Analise a descrição e verifique se ela contém todos os detalhes que possam ser necessários antes de prosseguir para a próxima etapa.

1. Em **Destinatários**, selecione **Atribuir ao Amazon Q**.

1. Em **Repositório de origem**, escolha o nome do repositório que contém o código do projeto.

1. Deslize o seletor **Exigir que o Amazon Q pare após cada etapa e aguarde a revisão do trabalho** até o estado ativo, se necessário.
**nota**  
Escolher a opção de interromper o Amazon Q após cada etapa permite que você comente sobre o problema ou sobre qualquer tarefa criada para ter a opção de fazer com que o Amazon Q mude de abordagem até três vezes com base em seus comentários. Se você escolher a opção de não deixar o Amazon Q parar após cada etapa para poder revisar o trabalho, o trabalho poderá prosseguir mais rapidamente porque o Amazon Q não está esperando seus comentários, mas você não poderá influenciar a direção que o Amazon Q tomará ao deixar comentários. O Amazon Q também não responderá aos comentários deixados em uma solicitação pull se você escolher essa opção.

1. Deixe o seletor **Permitir que o Amazon Q modifique arquivos de fluxo de trabalho** no estado inativo.

1. Deslize o seletor **Permitir que o Amazon Q sugira a criação de tarefas** para o estado ativo.

1. Selecione **Criar problema**. A visualização muda para o quadro Problemas.

1. Selecione **Criar problema** para criar outro problema, desta vez com o título **Change the get\$1all\$1mysfits() API to return mysfits sorted by the Age attribute**. Atribua esse problema ao **Amazon Q** e crie o problema.

1. Selecione **Criar problema** para criar outro problema, desta vez com o título **Update the OnPullRequest workflow to include a branch named test in its triggers**. Se desejar, vincule ao fluxo de trabalho na descrição. Atribua esse problema ao **Amazon Q**, mas desta vez garanta que o seletor **Permitir que o Amazon Q modifique arquivos de fluxo de trabalho** esteja configurado para o estado ativo. Crie o problema para retornar ao quadro Problemas.
**dica**  
Você pode procurar arquivos, incluindo arquivos de fluxo de trabalho, inserindo o símbolo de arroba (`@`) e o nome do arquivo.

Depois de criar e atribuir os problemas, eles passarão para o estado **Em andamento**. O Amazon Q adicionará comentários de acompanhamento do progresso no problema em um comentário fixo. Se for possível definir uma abordagem para uma solução, ele atualizará a descrição do problema com uma seção **Contexto** que contém a análise da base de código e uma seção **Abordagem** que detalha a abordagem proposta para criar uma solução. Se o Amazon Q conseguir encontrar uma solução para o problema descrito, ele criará uma ramificação e alterações de código nessa ramificação que implementarão a solução proposta. Se o código proposto contiver semelhanças com o código-fonte aberto que o Amazon Q conhece, ele fornecerá um arquivo que inclui links para esse código para que você possa analisá-lo. Quando o código estiver pronto, ele criará uma solicitação pull para que você possa revisar as alterações de código sugeridas, adicionará um link para essa solicitação pull para o problema e moverá o problema para **Em revisão**.

**Importante**  
Você sempre deve revisar todas as alterações de código em uma solicitação pull antes de mesclá-la. A mesclagem de alterações de código feitas pelo Amazon Q, como qualquer outra alteração de código, pode afetar negativamente a base de código e o código de infraestrutura se o código mesclado não for revisado adequadamente e contiver erros ao mesclar.

**Para analisar um problema e uma solicitação pull vinculada que contém alterações feitas pelo Amazon Q**

1. Em **Problemas**, escolha um problema atribuído ao Amazon Q que esteja no estado **Em andamento**. Analise os comentários para monitorar o progresso do Amazon Q. Se estiver presente, analise o contexto e aborde os registros na descrição do problema. Se você optar por permitir que o Amazon Q sugira tarefas, revise todas as tarefas propostas e tome as medidas necessárias. Por exemplo, se o Amazon Q sugeriu tarefas e você gostaria de alterar a ordem ou atribuir tarefas a usuários específicos, escolha **Alterar, adicionar ou reordenar tarefas** e realize as atualizações necessárias. Quando terminar de visualizar o problema, escolha **X** para fechar o painel do problema.
**dica**  
Para ver o progresso das tarefas, escolha a tarefa na lista de tarefas no problema. As tarefas não aparecem como itens separados no quadro e só podem ser acessadas por meio de um problema. Se uma tarefa for atribuída ao Amazon Q, você deverá abri-la para aprovar qualquer ação que ela queira realizar. Você também deve abrir uma tarefa para ver todas as solicitações pull vinculadas, pois elas não aparecerão como links no problema, somente na tarefa. Para retornar a um problema a partir de uma tarefa, escolha o link para o problema.

1. Agora escolha um problema atribuído ao Amazon Q que esteja no estado **Em análise**. Analise o contexto e aborde os registros na descrição do problema. Analise os comentários para entender as ações realizadas. Analise todas as tarefas criadas para trabalhar relacionadas a esse problema, incluindo o progresso, quaisquer ações que você talvez precise realizar e quaisquer comentários. Em **Solicitações pull**, escolha o link para a solicitação pull ao lado do rótulo **Abrir** para revisar o código. 
**dica**  
As solicitações pull geradas para tarefas só aparecem como solicitações pull vinculadas na visualização da tarefa. Elas não aparecem como solicitações pull vinculadas para o problema.

1. Na solicitação pull, revise as alterações no código. Para obter mais informações, consulte [Revisão de uma solicitação pull](pull-requests-review.md). Deixe comentários sobre a solicitação pull se quiser que o Amazon Q altere qualquer código sugerido. Seja específico ao deixar comentários no Amazon Q para ter melhores resultados. 

   Por exemplo, ao revisar a solicitação pull criada para **Create another mysfit named Quokkapus**, você pode perceber que há um erro de digitação na descrição. Você pode deixar um comentário para o Amazon Q dizendo “Altere a descrição para corrigir o erro de digitação “needsa” adicionando um espaço entre “needs” e “a”.” Como alternativa, você pode deixar um comentário pedindo ao Amazon Q que atualize a descrição e forneça toda a descrição revisada para que ela seja incorporada.

   Se você fez upload de imagens do novo mysfit para o site, pode deixar um comentário para o Amazon Q atualizar o mysfit com ponteiros para a imagem e miniatura para usar no novo mysfit.
**nota**  
O Amazon Q não responderá a comentários individuais. O Amazon Q só incorporará o feedback deixado nos comentários em solicitações pull se você escolher a opção padrão de parar após cada etapa de aprovação ao criar o problema.

1. (Opcional) Depois que você e outros usuários do projeto deixarem todos os comentários desejados sobre as alterações no código, selecione **Criar revisão** para que o Amazon Q crie uma revisão da solicitação pull que incorpore as alterações solicitadas nos comentários. O progresso da criação da revisão será relatado pelo Amazon Q em **Visão geral**, não em **Alterações**. Atualize seu navegador para ver as atualizações mais recentes do Amazon Q sobre a criação da revisão.
**nota**  
Somente o usuário que criou o problema pode criar uma revisão da solicitação pull. Você só pode solicitar uma revisão de uma solicitação pull. Verifique se você resolveu todos os problemas com os comentários e se está satisfeito com o conteúdo dos comentários antes de escolher **Criar revisão**.

1. Um fluxo de trabalho é executado para cada solicitação pull neste projeto de exemplo. Veja um fluxo de trabalho executado com sucesso antes de mesclar a solicitação pull. Você também pode optar por criar fluxos de trabalho e ambientes adicionais para testar o código antes de mesclá-lo. Para obter mais informações, consulte [Conceitos básicos de fluxos de trabalho](workflows-getting-started.md).

1. Quando estiver satisfeito com a revisão mais recente da solicitação pull, selecione **Mesclar**.

## Criar um problema e ter tarefas recomendadas pelo Amazon Q para ele
<a name="getting-started-project-assistance-issue-to-tasks"></a>

Às vezes, um problema pode conter quantidades de trabalho complexas ou demoradas. CodeCatalyst inclui integração com o Amazon Q Developer Agent para desenvolvimento de software. Você pode pedir ao **Amazon Q** que analise um problema com base no título e na descrição e recomende uma divisão lógica do trabalho em tarefas separadas. Ele tentará criar uma lista de tarefas recomendadas que podem revisar, modificar e escolher se deseja criar. Isso pode ajudar você e sua equipe a atribuir partes individuais do trabalho aos usuários de maneiras mais gerenciáveis que podem ser realizadas mais rapidamente. 

**Para criar e revisar uma lista de tarefas recomendadas para um problema**

1. No painel de navegação, selecione **Problemas** e verifique se você está na visualização **Quadro**.

1. Selecione **Criar problema**.

1. Dê ao problema um título que explique o que você quer fazer em linguagem simples. Por exemplo, para esse problema, insira o título **Change the get\$1all\$1mysfits() API to return mysfits sorted by the Good/Evil attribute**. Em **Descrição**, forneça os seguintes detalhes:

   ```
   Update the API to allow sorting of mysfits by whether they are Good, Neutral, or Evil. Add a button on the website that allows users to quickly choose this sort and to exclude alignments that they don't want to see.
   ```

1. Analise a descrição e verifique se ela contém todos os detalhes que possam ser necessários antes de prosseguir para a próxima etapa.

1. Em **Responsáveis**, atribua o problema a você mesmo.

1. Selecione **Criar problema**. A visualização muda para o quadro Problemas.

1. Escolha o problema que você acabou de criar para abri-lo. Selecione **Recomendar tarefas**.

1. Escolha o repositório de origem que contém o código do problema. Selecione **Começar a recomendar tarefas**.

A caixa de diálogo será fechada e o Amazon Q começará a analisar a complexidade do problema. Se o problema for complexo, ele sugerirá uma divisão do trabalho em tarefas sequenciais separadas. Quando a lista estiver pronta, selecione **Exibir tarefas recomendadas**. Você pode adicionar outras tarefas, modificar as tarefas recomendadas e reordenar as tarefas. Se você concordar com as recomendações, selecionar a opção **Criar tarefas** criará as tarefas. Você pode atribuir essas tarefas aos usuários para que trabalhem nelas, ou até mesmo ao próprio Amazon Q.

## Limpar os recursos
<a name="getting-started-project-assistance-clean-up"></a>

Depois de concluir este tutorial, considere realizar as ações a seguir para limpar todos os recursos que você criou durante este tutorial e que não sejam mais necessários.
+ Cancele a atribuição do Amazon Q a qualquer problema que não esteja mais sendo resolvido. Se o Amazon Q tiver concluído o trabalho em um problema ou não conseguir encontrar uma solução, cancele a atribuição do Amazon Q para evitar atingir a cota máxima de recursos de IA generativa. Para ter mais informações, consulte [Gerenciamento de recursos de IA generativa](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-generative-ai-features.html) e [Preços](https://codecatalyst.aws/explore/pricing).
+ Mova qualquer problema em que o trabalho esteja concluído para **Concluído**.
+ Se o projeto não for mais necessário, exclua-o.