

Amazon non CodeCatalyst è più aperta a nuovi clienti. I clienti esistenti possono continuare a utilizzare il servizio normalmente. Per ulteriori informazioni, consulta [Come migrare da CodeCatalyst](migration.md).

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Tutorial introduttivi
<a name="getting-started-topnode"></a>

Amazon CodeCatalyst offre diversi modelli per aiutarti a iniziare con i tuoi progetti. Puoi anche scegliere di iniziare con un progetto vuoto e aggiungervi risorse. Segui i passaggi di questi tutorial per scoprire alcuni dei modi in cui puoi lavorare. CodeCatalyst 

Se è la prima volta che lo usi CodeCatalyst, ti suggeriamo di iniziare con. [Tutorial: creazione di un progetto con il moderno modello di applicazione web a tre livelli](getting-started-template-project.md)

**Nota**  
Per seguire questi tutorial, devi prima completare la configurazione. Per ulteriori informazioni, consulta [Configura e accedi a CodeCatalystConfigura e accedi a CodeCatalyst](setting-up-topnode.md).

**Topics**
+ [Tutorial: creazione di un progetto con il moderno modello di applicazione web a tre livelli](getting-started-template-project.md)
+ [Tutorial: iniziare con un progetto vuoto e aggiungere manualmente le risorse](getting-started-blank-template.md)
+ [Tutorial: Utilizzo delle funzionalità di intelligenza artificiale CodeCatalyst generativa per velocizzare il lavoro di sviluppo](getting-started-project-assistance.md)

Per ulteriori tutorial incentrati su aree funzionali specifiche in, consulta: CodeCatalyst 
+ [Guida introduttiva alle notifiche di Slack](getting-started-notifications.md)
+ [Guida introduttiva agli archivi di CodeCatalyst origine e al modello di applicazione a pagina singola](source-getting-started.md)
+ [Guida introduttiva ai flussi di lavoro](workflows-getting-started.md)
+ [Guida introduttiva ai blueprint personalizzati](getting-started-bp.md)
+ [Inizia a leggere la Amazon CodeCatalyst Action Developer Guide](https://docs.aws.amazon.com/codecatalyst/latest/adk/action-development-intro.html)

Per tutorial approfonditi, consulta:
+ [Tutorial: caricare artefatti su Amazon S3](build-deploy.md)
+ [Tutorial: Implementazione di un'applicazione serverless](deploy-tut-lambda.md)
+ [Tutorial: distribuire un'applicazione su Amazon ECS](deploy-tut-ecs.md)
+ [Tutorial: distribuzione di un'applicazione su Amazon EKS](deploy-tut-eks.md)
+ [Tutorial: codice Lint usando un' GitHub azione](integrations-github-action-tutorial.md)
+ [Tutorial: creazione e aggiornamento di un'applicazione React](blueprint-getting-started-tutorial.md)

# Tutorial: creazione di un progetto con il moderno modello di applicazione web a tre livelli
<a name="getting-started-template-project"></a>

Puoi iniziare più rapidamente a sviluppare software creando un progetto con un blueprint. Un progetto creato con un blueprint include le risorse di cui hai bisogno, tra cui un archivio di sorgenti per gestire il codice e un flusso di lavoro per creare e distribuire l'applicazione. In questo tutorial, ti illustreremo come utilizzare il modello di **applicazione Web Modern a tre livelli** per creare un progetto in Amazon. CodeCatalyst Il tutorial include anche la visualizzazione dell'esempio distribuito, l'invito ad altri utenti a lavorarci e l'apporto di modifiche al codice con richieste pull che vengono automaticamente create e distribuite alle risorse connesse Account AWS quando la pull request viene unita. Laddove CodeCatalyst crea il progetto con report, feed di attività e altri strumenti, il blueprint crea AWS le risorse associate al progetto. Account AWS I file blueprint consentono di creare e testare un'applicazione moderna di esempio e di distribuirla nell'infrastruttura di. Cloud AWS

L'illustrazione seguente mostra come CodeCatalyst vengono utilizzati gli strumenti in per creare un problema di tracciamento, unire e generare automaticamente le modifiche, quindi avviare un flusso di lavoro nel CodeCatalyst progetto che esegua azioni per consentire AWS CDK e CloudFormation fornire l'infrastruttura. 

Le azioni generano risorse nell'ambiente associato Account AWS e distribuiscono l'applicazione su una AWS Lambda funzione serverless con un endpoint API Gateway. L' AWS Cloud Development Kit (AWS CDK) azione converte uno o più AWS CDK stack in CloudFormation modelli e distribuisce gli stack sul tuo. Account AWS Le risorse nei tuoi stack includono CloudFront risorse Amazon per distribuire contenuti web dinamici, un'istanza Amazon DynamoDB per i dati delle tue applicazioni e i ruoli e le policy che supportano l'applicazione distribuita.

![\[Una modifica al codice, dalla creazione di un problema alla modifica del repository di origine, che viene quindi creato e distribuito automaticamente alle risorse in AWS\]](http://docs.aws.amazon.com/it_it/codecatalyst/latest/userguide/images/modern-app-overview.png)


Quando si crea un progetto con il modello **Modern Three Tier Web Application** Blueprint, il progetto viene creato con le seguenti risorse:

**Nel progetto**: CodeCatalyst 
+ Un [archivio di sorgenti](source.md) con codice di esempio e flusso di lavoro YAML
+ Un [flusso di lavoro](workflow.md) che crea e distribuisce il codice di esempio ogni volta che viene apportata una modifica al ramo predefinito
+ Una bacheca dei problemi e un backlog che puoi utilizzare per pianificare e tenere traccia del lavoro
+ Una suite di report di test con report automatici inclusi nel codice di esempio

**Nella sezione associata Account AWS**:
+ Tre AWS CloudFormation stack che creano le risorse necessarie per l'applicazione.

Per maggiori dettagli sulle risorse che verranno create in AWS e CodeCatalyst come parte di questo tutorial, consulta[Documentazione di riferimento](#getting-started-template-project-reference).

**Nota**  
Le risorse e gli esempi inclusi in un progetto dipendono dal blueprint selezionato. Amazon CodeCatalyst offre diversi modelli di progetto che definiscono le risorse relative al linguaggio o al framework definito. Per ulteriori informazioni sui blueprint, consulta. [Creazione di un progetto completo con CodeCatalyst progettiCreazione di un progetto completo con progetti](project-blueprints.md)

**Topics**
+ [Prerequisiti](#getting-started-template-project-prerequisites)
+ [Fase 1: Creare il moderno progetto di applicazione web a tre livelli](#getting-started-template-project-proj-create)
+ [Fase 2: Invita qualcuno al tuo progetto](#getting-started-template-project-ipa-user)
+ [Passaggio 3: Crea problemi su cui collaborare e monitorare il lavoro](#getting-started-template-project-issue)
+ [Passaggio 4: Visualizza il tuo repository di origine](#getting-started-template-project-source)
+ [Passaggio 5: creare un ambiente di sviluppo con un ramo di test e apportare una rapida modifica al codice](#getting-started-template-project-create-devenvironment)
+ [Passaggio 6: Visualizza il flusso di lavoro che crea l'applicazione moderna](#getting-started-template-project-view-workflow)
+ [Passaggio 7: chiedi agli altri di rivedere le modifiche](#getting-started-template-project-pull-request)
+ [Passaggio 8: chiudere il problema](#getting-started-template-project-close-issue)
+ [Eseguire la pulizia delle risorse](#getting-started-template-project-clean-up)
+ [Documentazione di riferimento](#getting-started-template-project-reference)

## Prerequisiti
<a name="getting-started-template-project-prerequisites"></a>

Per creare un progetto applicativo moderno in questo tutorial, devi aver completato le attività [Configura e accedi a CodeCatalystConfigura e accedi a CodeCatalyst](setting-up-topnode.md) seguenti:
+ Disponi di un AWS Builder ID a cui accedere CodeCatalyst.
+ Appartenete a uno spazio e fatevi assegnare il ruolo di **amministratore dello spazio** o **Power user** in quello spazio. Per ulteriori informazioni, consultare [Creazione di uno spazio](spaces-create.md), [Concessione delle autorizzazioni di spazio agli utenti](spaces-members.md) e [Ruolo di Space Administrator](ipa-role-types.md#ipa-role-space-admin).
+  Account AWS Associa uno al tuo spazio e ottieni il ruolo IAM che hai creato durante la registrazione. Ad esempio, durante la registrazione, hai la possibilità di scegliere di creare un ruolo di servizio con una policy chiamata **CodeCatalystWorkflowDevelopmentRole-*spaceName***role policy. Il ruolo avrà un nome `CodeCatalystWorkflowDevelopmentRole-spaceName` con un identificatore univoco aggiunto. Per ulteriori informazioni sul ruolo e sulla politica relativa ai ruoli, vedere. [Comprensione del ruolo **CodeCatalystWorkflowDevelopmentRole-*spaceName***del servizio](ipa-iam-roles.md#ipa-iam-roles-service-role) Per i passaggi per creare il ruolo, vedere[Creazione del **CodeCatalystWorkflowDevelopmentRole-*spaceName***ruolo per il tuo account e il tuo spazio](ipa-iam-roles.md#ipa-iam-roles-service-create).

## Fase 1: Creare il moderno progetto di applicazione web a tre livelli
<a name="getting-started-template-project-proj-create"></a>

Dopo averlo creato, nel progetto potrai sviluppare e testare il codice, coordinare le attività di sviluppo e visualizzare le metriche del progetto. Il progetto contiene anche gli strumenti e le risorse di sviluppo.

In questo tutorial, utilizzerai il **moderno modello di applicazione web a tre livelli per creare un'applicazione** interattiva. Il flusso di lavoro creato ed eseguito automaticamente come parte del progetto creerà e distribuirà l'applicazione. Il flusso di lavoro viene eseguito correttamente solo dopo che tutti i ruoli e le informazioni sull'account sono stati configurati per il tuo spazio. Dopo che il flusso di lavoro è stato eseguito correttamente, puoi visitare l'URL dell'endpoint per vedere l'applicazione.

**Per creare un progetto con un blueprint**

1. Apri la CodeCatalyst console all'indirizzo [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Nella CodeCatalyst console, accedi allo spazio in cui desideri creare un progetto.

1. Seleziona **Crea progetto**.

1. Scegli **Inizia con un progetto**. 

1. Nella barra di ricerca inserisci **modern**.

1. **Seleziona il blueprint di **applicazione Web moderna a tre livelli**, quindi scegli Avanti.**

1. In **Assegna un nome al progetto**, inserisci un nome per il progetto. Esempio:

   **MyExampleProject**.
**Nota**  
Il nome deve essere univoco nel tuo spazio.

1. In **Account**, scegli Account AWS quello che hai aggiunto durante la registrazione. Il blueprint installerà le risorse in questo account.

1. In **Deployment Role**, scegli il ruolo che hai aggiunto durante la registrazione. Ad esempio, scegli `CodeCatalystWorkflowDevelopmentRole-spaceName`. 

   Se non ci sono ruoli elencati, aggiungine uno. Per aggiungere un ruolo, scegli **Aggiungi ruolo IAM** e aggiungi il ruolo al tuo Account AWS. Per ulteriori informazioni, consulta [Consentire l'accesso alle AWS risorse con connessione Account AWS](ipa-connect-account.md).

1. Nella **piattaforma Compute**, scegli **Lambda**.

1. Nell'**opzione di hosting frontend**, scegli **Amplify** Hosting. Per informazioni su AWS Amplify, vedi [Cos'](https://docs.aws.amazon.com/amplify/latest/userguide/welcome.html)è l'hosting? AWS Amplify nella *Guida AWS Amplify per l'utente*.

1. In **Deployment Region**, inserisci il codice regionale del Regione AWS luogo in cui desideri che il blueprint distribuisca l'applicazione Mysfits e le risorse di supporto. Per un elenco dei codici regionali, consulta Endpoint [regionali](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints) in. *Riferimenti generali di AWS*

1. Nel **Nome dell'applicazione**, lascia il valore predefinito di`mysfitsstring`.

1. (Facoltativo) In **Genera anteprima del progetto**, scegliete **Visualizza codice** per visualizzare in anteprima i file sorgente che verranno installati dal blueprint. Scegliete **Visualizza flusso di lavoro** per visualizzare in anteprima i file CI/CD di definizione del flusso di lavoro che verranno installati dal blueprint. L'anteprima si aggiorna dinamicamente in base alle selezioni effettuate.

1. Seleziona **Crea progetto**. 

Il flusso di lavoro del progetto inizia non appena si crea il progetto. Ci vorrà un po' di tempo per completare la creazione e la distribuzione del codice. Nel frattempo, vai avanti e invita qualcun altro al tuo progetto.

## Fase 2: Invita qualcuno al tuo progetto
<a name="getting-started-template-project-ipa-user"></a>

Ora che hai impostato il tuo progetto, invita altre persone a lavorare con te.

**Per invitare qualcuno al tuo progetto**

1. Vai al progetto a cui desideri invitare gli utenti.

1. Nel riquadro di navigazione, scegli **Impostazioni del progetto**.

1. Nella scheda **Membri**, scegli **Invita**.

1. Digita gli indirizzi email delle persone che desideri invitare come utenti del progetto. Puoi digitare più indirizzi e-mail separati da uno spazio o da una virgola. Puoi anche scegliere tra membri del tuo spazio che non sono membri del progetto. 

1. Scegli il ruolo dell'utente.

   Quando hai finito di aggiungere utenti, scegli **Invita**.

## Passaggio 3: Crea problemi su cui collaborare e monitorare il lavoro
<a name="getting-started-template-project-issue"></a>

CodeCatalyst ti aiuta a tenere traccia delle funzionalità, delle attività, dei bug e di qualsiasi altra attività coinvolta nel progetto con problemi. Puoi creare problemi per tenere traccia del lavoro e delle idee necessari. Per impostazione predefinita, quando crei un problema, questo viene aggiunto al backlog. Puoi spostare i problemi in una bacheca in cui tenere traccia dei lavori in corso. Puoi anche assegnare un problema a un membro specifico del progetto.

**Per creare un problema per un progetto**

1. Nel riquadro di navigazione, scegli **Problemi**.

1. Scegli **Crea problema**. 

1. Nel **titolo del problema**, fornisci un nome per il problema. Facoltativamente, fornisci una descrizione del problema. In questo esempio, usa **make a change in the `src/mysfit_data.json` file.**

1. Scegli la priorità, la stima, lo stato e le etichette. In **Assegnatario, scegli** **\$1Aggiungi me per assegnare il problema** a te stesso.

1. **Scegli Crea problema.** Il problema è ora visibile sulla lavagna. Scegli la scheda per spostare il problema nella colonna **In corso**. 

Per ulteriori informazioni, consulta [Tieni traccia e organizza il lavoro con problemi in CodeCatalystTieni traccia e organizza il lavoro con i problemi](issues.md).

## Passaggio 4: Visualizza il tuo repository di origine
<a name="getting-started-template-project-source"></a>

Il tuo blueprint installa un repository di sorgenti che contiene i file per definire e supportare l'applicazione o il servizio. Alcune directory e file degni di nota nel repository dei sorgenti sono:
+ **Directory.cloud9**: contiene i file di supporto per l'ambiente di sviluppo. AWS Cloud9 
+ **.codecatalyst**: contiene il file di definizione del flusso di lavoro per ogni `YAML` flusso di lavoro incluso nel blueprint.
+ **.idea**: contiene i file di supporto per gli ambienti di sviluppo. JetBrains 
+ **.vscode**: contiene i file di supporto per l'ambiente di sviluppo di Visual Studio Code.
+ Directory **CDKStacks**: contiene i file AWS CDK stack che definiscono l'infrastruttura in. Cloud AWS
+ directory **src**: contiene il codice sorgente dell'applicazione.
+ directory **tests**: contiene i file per i test integ e unitari eseguiti come parte del CI/CD flusso di lavoro automatizzato che viene eseguito durante la creazione e il test dell'applicazione.
+ directory **web**: contiene il codice sorgente del frontend. Altri file includono file di progetto, ad esempio il `package.json` file che contiene importanti metadati sul progetto, la `index.html` pagina del sito Web, il file per il codice linting e il `.eslintrc.cjs` file per specificare i `tsconfig.json` file root e le opzioni del compilatore.
+ `Dockerfile`file: descrive il contenitore dell'applicazione.
+ `README.md`file — Contiene informazioni di configurazione per il progetto.

**Per accedere agli archivi di origine di un progetto**

1. Accedete al progetto ed effettuate una delle seguenti operazioni:
   + Nella pagina di riepilogo del progetto, scegli il repository desiderato dall'elenco, quindi scegli **Visualizza archivio**.
   + Nel riquadro di navigazione, scegli **Codice**, quindi scegli Archivi di **origine**. Nei **repository di origine**, scegli il nome del repository dall'elenco. Puoi filtrare l'elenco dei repository digitando parte del nome del repository nella barra dei filtri.

1. Nella home page del repository, visualizza il contenuto del repository e le informazioni sulle risorse associate, come il numero di richieste pull e i flussi di lavoro. Per impostazione predefinita, vengono visualizzati i contenuti del ramo predefinito. È possibile modificare la visualizzazione scegliendo un ramo diverso dall'elenco a discesa.

## Passaggio 5: creare un ambiente di sviluppo con un ramo di test e apportare una rapida modifica al codice
<a name="getting-started-template-project-create-devenvironment"></a>

Puoi lavorare rapidamente sul codice nel tuo repository dei sorgenti creando un ambiente di sviluppo. Per questo tutorial, supponiamo che tu voglia:
+ Crea un ambiente di AWS Cloud9 sviluppo.
+ Scegli l'opzione per lavorare in un nuovo ramo del ramo **principale** quando crei l'ambiente di sviluppo.
+ Usa il nome `test` per questo nuovo ramo.

In una fase successiva, utilizzerai Dev Environment per apportare una modifica al codice e creare una pull request.

**Per creare un ambiente di sviluppo con un nuovo ramo**

1. Apri la CodeCatalyst console all'[indirizzo https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Vai al progetto in cui desideri creare un ambiente di sviluppo.

1. Scegli il nome del repository dall'elenco dei repository di origine per il progetto. In alternativa, nel riquadro di navigazione, scegli **Codice**, scegli **Archivi di origine** e scegli il repository per il quale desideri creare un ambiente di sviluppo.

1. Nella home page del repository, scegli **Crea** ambiente di sviluppo.

1. Scegli un IDE supportato dal menu a discesa. Per ulteriori informazioni, consulta [Ambienti di sviluppo integrati supportati per gli ambienti di sviluppo](devenvironment-create.md#devenvironment-supported-ide).

1. Scegli il repository da clonare, scegli **Lavora in un nuovo ramo**, inserisci il nome di un **ramo nel campo Nome** del ramo e scegli un ramo dal quale creare il nuovo ramo dal menu a discesa **Crea ramo** da.

1. Facoltativamente, aggiungi un alias per Dev Environment.

1. Facoltativamente, scegli il pulsante di modifica della **configurazione dell'ambiente** di sviluppo per modificare la configurazione di calcolo, archiviazione o timeout dell'ambiente di sviluppo.

1. Scegli **Create** (Crea). Durante la creazione dell'ambiente di sviluppo, la colonna di stato dell'ambiente di sviluppo mostrerà **Avvio** e la colonna di stato verrà visualizzata **in esecuzione** una volta creato l'ambiente di sviluppo. Si aprirà una nuova scheda con il tuo ambiente di sviluppo nell'IDE di tua scelta. Puoi modificare il codice, eseguire il commit e inviare le modifiche.

In questa sezione, utilizzerai l'applicazione di esempio generata apportando modifiche al codice con richieste pull che vengono automaticamente create e distribuite alle risorse della rete connessa Account AWS quando la pull request viene unita. CodeCatalyst 

**Per apportare una modifica al file `src/mysfit_data.json`**

1. Vai al tuo progetto Dev Environment. In AWS Cloud9, espandi il menu di navigazione laterale per sfogliare i file. `mysfits``src`Espandi e apri`src/mysfit_data.json`.

1. Nel file, modificate il valore del `"Age":` campo da 6 a 12. La riga dovrebbe essere simile alla seguente: 

   ```
       {
           "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. Salvare il file.

1. Passa al repository mysfits con il comando. **cd /projects/mysfits**

1. Aggiungi, esegui il commit e invia le tue modifiche con i **comandi git add**, **git commit** e **git** push.

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

## Passaggio 6: Visualizza il flusso di lavoro che crea l'applicazione moderna
<a name="getting-started-template-project-view-workflow"></a>

Dopo aver creato il progetto applicativo moderno, CodeCatalyst genera diverse risorse per tuo conto, incluso un flusso di lavoro. Un *workflow* è una procedura automatizzata definita in un file.yaml che descrive come creare, testare e distribuire il codice.

In questo tutorial, hai CodeCatalyst creato un flusso di lavoro e lo hai avviato automaticamente al momento della creazione del progetto. (Il flusso di lavoro potrebbe essere ancora in esecuzione a seconda di quanto tempo fa hai creato il progetto.) Utilizzate le seguenti procedure per verificare l'avanzamento del flusso di lavoro, esaminare i log generati e i rapporti di test e, infine, accedere all'URL dell'applicazione distribuita.

**Per verificare l'avanzamento del flusso di lavoro**

1. **Nella CodeCatalyst console, nel riquadro di navigazione, scegli **CI/CD**, quindi scegli Flussi di lavoro.**

   Viene visualizzato un elenco di flussi di lavoro. Questi sono i flussi di lavoro generati e avviati dal CodeCatalyst blueprint al momento della creazione del progetto.

1. Osserva l'elenco dei flussi di lavoro. Dovresti vederne quattro:
   + I due flussi di lavoro nella parte superiore corrispondono al `test` ramo creato in precedenza in[Passaggio 5: creare un ambiente di sviluppo con un ramo di test e apportare una rapida modifica al codice](#getting-started-template-project-create-devenvironment). Questi flussi di lavoro sono cloni dei flussi di lavoro sul ramo. `main` non **ApplicationDeploymentPipeline**è attivo perché è configurato per l'uso con il ramo. `main` Il **OnPullRequest**flusso di lavoro non è stato eseguito perché non è stata effettuata alcuna pull request.
   + I due flussi di lavoro nella parte inferiore corrispondono al `main` ramo creato quando è stato eseguito il blueprint in precedenza. Il **ApplicationDeploymentPipeline**flusso di lavoro è attivo e ha un'esecuzione in corso (o completata).
**Nota**  
Se l'**ApplicationDeploymentPipeline**esecuzione fallisce con un **Build @cdk\$1bootstrap** o un **DeployBackend**errore, potrebbe essere perché in precedenza è stata eseguita l'applicazione Web Modern a tre livelli, che ha lasciato vecchie risorse in conflitto con il blueprint corrente. Dovrai eliminare queste vecchie risorse e quindi eseguire nuovamente il flusso di lavoro. Per ulteriori informazioni, consulta [Eseguire la pulizia delle risorse](#getting-started-template-project-clean-up).

1. Scegli il **ApplicationDeploymentPipeline**flusso di lavoro associato al `main` ramo, in basso. Questo flusso di lavoro è stato eseguito utilizzando il codice sorgente del `main` ramo.

   Viene visualizzato un diagramma del flusso di lavoro. *Il diagramma mostra diversi blocchi, ognuno dei quali rappresenta un'attività o un'azione.* La maggior parte delle azioni è disposta verticalmente, con le azioni in alto che precedono quelle sottostanti. Le azioni disposte fianco a fianco vengono eseguite in parallelo. Le azioni raggruppate devono essere eseguite tutte correttamente prima che l'azione sottostante possa iniziare.

   I blocchi principali sono:
   + **WorkflowSource**— Questo blocco rappresenta il tuo repository di origine. Mostra, tra le altre informazioni, il nome del repository di origine (**mysfits**) e il commit che ha avviato automaticamente l'esecuzione del flusso di lavoro. CodeCatalyst ha generato questo commit quando hai creato il tuo progetto.
   + **Compila**: questo blocco rappresenta un raggruppamento di due azioni che devono entrambe essere completate correttamente per iniziare l'azione successiva.
   + **DeployBackend**— Questo blocco rappresenta un'azione che distribuisce i componenti di backend dell'applicazione nel cloud. AWS 
   + **Test**: questo blocco rappresenta un raggruppamento di due azioni di test che devono entrambe essere completate correttamente per iniziare l'azione successiva.
   + **DeployFrontend**— Questo blocco rappresenta un'azione che distribuisce i componenti frontend dell'applicazione nel cloud. AWS 

1. Scegli la scheda **Definizione** (in alto). Il [file di definizione del flusso](workflow-reference.md) di lavoro viene visualizzato sulla destra. Il file contiene le seguenti sezioni degne di nota:
   + Una `Triggers` sezione, in alto. Questa sezione indica che il flusso di lavoro deve iniziare ogni volta che il codice viene inviato al ramo del repository di `main` origine. I push ad altri rami (ad esempio`test`) non avvieranno questo flusso di lavoro. Il flusso di lavoro viene eseguito utilizzando i file presenti nel `main` ramo.
   + Una `Actions` sezione, sotto`Triggers`. Questa sezione definisce le azioni visualizzate nel diagramma del flusso di lavoro.

1. Scegli la scheda **Stato più recente** (in alto) e scegli qualsiasi azione nel diagramma del flusso di lavoro.

1. A destra, scegli la scheda **Configurazione** per visualizzare le impostazioni di configurazione utilizzate dall'azione durante l'ultima esecuzione. Ogni impostazione di configurazione ha una proprietà corrispondente nel file di definizione del flusso di lavoro.

1. Lasciare aperta la console e passare alla procedura successiva.

**Per esaminare i registri di compilazione e i rapporti sui test**

1. Scegli la scheda **Stato più recente**.

1. Nel diagramma del flusso di lavoro, scegli l'**DeployFrontend**azione.

1. Attendi che l'azione finisca. Fai attenzione che l'icona «in corso» (![\[Workflow in progress.\]](http://docs.aws.amazon.com/it_it/codecatalyst/latest/userguide/images/flows/run-in-progress.png)) si trasformi in un'icona di «successo» (![\[Workflow success.\]](http://docs.aws.amazon.com/it_it/codecatalyst/latest/userguide/images/flows/run-success.png)).

1. Scegli l'azione **build\$1backend**.

1. Scegli la scheda **Registri** ed espandi un paio di sezioni per visualizzare i messaggi di registro relativi a questi passaggi. Puoi vedere i messaggi relativi alla configurazione del backend.

1. Scegli la scheda **Rapporti**, quindi scegli il `backend-coverage.xml` rapporto. CodeCatalyst visualizza il rapporto associato. Il rapporto mostra i test di copertura del codice che sono stati eseguiti e indica la percentuale di righe di codice che sono state convalidate con successo dai test, ad esempio l'80%.

   Per ulteriori informazioni sui report dei test, vedere[Test con flussi di lavoroTest con flussi di lavoro](test-workflow-actions.md).
**Suggerimento**  
È inoltre possibile visualizzare i report dei test selezionando **Rapporti** nel riquadro di navigazione.

1. Lascia la CodeCatalyst console aperta e vai alla procedura successiva.

**Per confermare che l'applicazione moderna è stata implementata correttamente**

1. Tornate al **ApplicationDeploymentPipeline**flusso di lavoro e scegliete il *string* link **Run-** dell'ultima esecuzione.

1. Nel diagramma del flusso di lavoro, individua l'**DeployFrontend**azione e scegli il link **Visualizza app**. Viene visualizzato il sito Web Mysfit.
**Nota**  
Se non vedi il link **Visualizza app** all'interno dell'**DeployFrontend**azione, assicurati di aver scelto il link Run ID.

1. **Cerca il pegasus Mysfit chiamato Twilight Glitter.** Nota il valore per l'età. Lo è`6`. Effettuerai una modifica al codice per aggiornare l'età.

## Passaggio 7: chiedi agli altri di rivedere le modifiche
<a name="getting-started-template-project-pull-request"></a>

Ora che hai apportato delle modifiche a un ramo denominato`test`, puoi chiedere ad altri di esaminarle creando una pull request. Eseguite i seguenti passaggi per creare una richiesta pull per unire le modifiche dal `test` ramo al `main` ramo.

**Come creare una richiesta pull**

1. Vai al tuo progetto.

1. Esegui una delle seguenti operazioni:
   + Nel riquadro di navigazione, scegli **Codice**, scegli **Richieste pull**, quindi scegli **Crea richiesta pull**. 
   + Nella home page del repository, scegli **Altro**, quindi scegli **Crea richiesta pull**.
   + Nella pagina del progetto, scegli **Crea richiesta pull**.

1. Nel **repository Source**, assicurati che il repository di origine specificato sia quello che contiene il codice commesso. Questa opzione appare solo se non hai creato la pull request dalla pagina principale del repository.

1. Nel **ramo di destinazione**, scegli il ramo in cui unire il codice dopo averlo esaminato. 

1. Nel **ramo di origine**, scegli il ramo che contiene il codice commesso. 

1. In **Pull request title**, inserisci un titolo che aiuti gli altri utenti a capire cosa deve essere esaminato e perché. 

1. (Facoltativo) Nella **descrizione della richiesta Pull**, fornisci informazioni come un link ai problemi o una descrizione delle modifiche.
**Suggerimento**  
Puoi scegliere **Write description for me per** generare CodeCatalyst automaticamente una descrizione delle modifiche contenute nella pull request. Puoi apportare modifiche alla descrizione generata automaticamente dopo averla aggiunta alla pull request.  
Questa funzionalità richiede che le funzionalità di intelligenza artificiale generativa siano abilitate per lo spazio e non è disponibile per le richieste pull negli archivi collegati. Per ulteriori informazioni, consulta [Gestione delle funzionalità di intelligenza artificiale generativa](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-generative-ai-features.html). 

1. (Facoltativo) In **Problemi**, scegli **Problemi di collegamento**, quindi scegli un problema dall'elenco o inserisci il relativo ID. Per scollegare un problema, scegli l'icona di scollegamento.

1. (Facoltativo) In Revisori **obbligatori, scegli **Aggiungi** revisori** richiesti. Scegli dall'elenco dei membri del progetto per aggiungerli. I revisori obbligatori devono approvare le modifiche prima che la pull request possa essere unita al ramo di destinazione. 
**Nota**  
Non è possibile aggiungere un revisore sia come revisore obbligatorio che come revisore opzionale. Non puoi aggiungerti come revisore. 

1. (Facoltativo) In **Revisori opzionali, scegli Aggiungi revisori** **opzionali**. Scegli dall'elenco dei membri del progetto per aggiungerli. I revisori opzionali non devono approvare le modifiche come requisito prima che la pull request possa essere unita al ramo di destinazione. 

1. Esamina le differenze tra le filiali. La differenza mostrata in una pull request è rappresentata dalle modifiche tra la revisione nel ramo di origine e la base di unione, che è l'head commit del ramo di destinazione al momento della creazione della pull request. Se non viene visualizzata alcuna modifica, i rami potrebbero essere identici oppure potresti aver scelto lo stesso ramo sia per l'origine che per la destinazione. 

1. Quando sei sicuro che la pull request contenga il codice e le modifiche che desideri rivedere, scegli **Crea**.
**Nota**  
Dopo aver creato la pull request, puoi aggiungere commenti. I commenti possono essere aggiunti alla pull request o alle singole righe dei file, nonché alla pull request complessiva. È possibile aggiungere collegamenti a risorse, ad esempio file, utilizzando il segno @ seguito dal nome del file. 

Quando create la pull request, il **OnPullRequest**flusso di lavoro inizia a utilizzare i file sorgente presenti nel `test` ramo. Mentre i revisori approvano la modifica del codice, puoi osservare i risultati scegliendo il flusso di lavoro e visualizzando l'output del test.

Dopo aver esaminato la modifica, puoi unire il codice. L'unione del codice nel ramo predefinito avvierà automaticamente il flusso di lavoro che genererà e distribuirà le modifiche.<a name="getting-started-template-project-pull-requests-merge-console"></a>

**Per unire una pull request dalla console CodeCatalyst**

1. Passa al tuo progetto di applicazione moderna.

1. Nella pagina del progetto, in **Open pull request**, scegli la pull request che desideri unire. Se non vedi la pull request, scegli **Visualizza tutto** e poi selezionala dall'elenco. Selezionare **Merge (Unisci)**.

1. Scegli tra le strategie di unione disponibili per la pull request. **Facoltativamente, seleziona o deseleziona l'opzione per eliminare il ramo di origine dopo aver unito la pull request, quindi scegli Merge.**
**Nota**  
Se il pulsante **Unisci** non è attivo o viene visualizzata l'etichetta **Non unibile**, significa che uno o più revisori obbligatori non hanno ancora approvato la pull request oppure la pull request non può essere unita nella console. CodeCatalyst **Un revisore che non ha approvato una pull request è indicato da un'icona a forma di orologio in **Panoramica** nell'area dei dettagli della pull request.** Se tutti i revisori obbligatori hanno approvato la pull request ma il pulsante **Merge** non è ancora attivo, è possibile che si verifichi un conflitto di unione. È possibile risolvere i conflitti di unione per il ramo di destinazione nella CodeCatalyst console e quindi unire la richiesta pull, oppure è possibile risolvere i conflitti e unirli localmente, quindi inviare il commit che contiene l'unione a. CodeCatalyst Per ulteriori informazioni, consulta [Unire una richiesta pull (Git)](pull-requests-merge.md#pull-requests-merge-git) la documentazione di Git.

Dopo aver unito le modifiche dalla `test` filiale alla **main** filiale, la modifica avvia automaticamente il **ApplicationDeploymentPipeline**flusso di lavoro che crea e distribuisce la modifica. <a name="getting-started-template-project-pull-requests-merge-view-success"></a>

**Per vedere il commit unito eseguito attraverso il flusso di lavoro ApplicationDeploymentPipeline**

1. **Nel riquadro di navigazione, scegli **CI/CD**, quindi scegli Flussi di lavoro.** 

1. **In **Flussi di lavoro**, in, espandi Esecuzioni **ApplicationDeploymentPipeline**recenti.** Puoi vedere il flusso di lavoro eseguito avviato dal merge commit. Facoltativamente, sceglilo per vedere l'avanzamento dell'esecuzione. 

1. Al termine dell'esecuzione, ricarica l'URL che hai visitato in precedenza. Visualizza il pegaso per verificare che l'età sia cambiata.  
![\[La modifica del codice è stata unita, creata e implementata, visibile nell'applicazione\]](http://docs.aws.amazon.com/it_it/codecatalyst/latest/userguide/images/modified-mysfits.png)

## Passaggio 8: chiudere il problema
<a name="getting-started-template-project-close-issue"></a>

Quando un problema viene risolto, può essere chiuso sulla CodeCatalyst console.

**Per chiudere un problema relativo a un progetto**

1. Vai al tuo progetto.

1. Nel riquadro di navigazione, scegli **Problemi**.

1. Drag-and-drop il problema nella colonna **Fine**.

Per ulteriori informazioni, consulta [Tieni traccia e organizza il lavoro con problemi in CodeCatalystTieni traccia e organizza il lavoro con i problemi](issues.md).

## Eseguire la pulizia delle risorse
<a name="getting-started-template-project-clean-up"></a>

Pulisci CodeCatalyst e AWS rimuovi le tracce di questo tutorial dal tuo ambiente.

Puoi scegliere di continuare a utilizzare il progetto che hai usato per questo tutorial oppure puoi eliminare il progetto e le risorse associate.

**Nota**  
L'eliminazione di questo progetto eliminerà tutti gli archivi, i problemi e gli artefatti del progetto per tutti i membri.

**Come eliminare un progetto**

1. **Vai al tuo progetto, quindi scegli Impostazioni progetto.**

1. Scegli la scheda **Generale**.

1. Sotto il nome del progetto, scegli **Elimina progetto**.

**Per eliminare risorse in CloudFormation Amazon S3**

1. Accedi Console di gestione AWS con lo stesso account che hai aggiunto al tuo CodeCatalyst spazio.

1. Vai al **CloudFormation**servizio.

1. Elimina lo stack **mysfits *string***.

1. **Elimina lo stack development-mysfits. *string***

1. Scegliete (ma non eliminate) lo stack. **CDKToolkit** Scegli la scheda **Risorse**. Scegli il **StagingBucket**link ed elimina il bucket e il contenuto del bucket in Amazon S3.
**Nota**  
Se non elimini questo bucket manualmente, potresti visualizzare un errore quando riesegui il blueprint dell'applicazione web Modern a tre livelli.

1. (Facoltativo) Eliminare lo stack. **CDKToolkit**

## Documentazione di riferimento
<a name="getting-started-template-project-reference"></a>

Il moderno modello di applicazione web a tre livelli distribuisce le risorse nel tuo CodeCatalyst spazio e nel tuo AWS account nel cloud. AWS Queste risorse sono:
+ **Nel tuo CodeCatalyst spazio**:
  + Un CodeCatalyst progetto che include le seguenti risorse:
    + Un [archivio sorgente: questo repository](source.md) contiene codice di esempio per un'applicazione web «Mysfits».
    + Un [flusso di lavoro](workflow.md): questo flusso di lavoro crea e distribuisce il codice dell'applicazione Mysfits ogni volta che viene apportata una modifica al ramo predefinito
    + Una [bacheca dei problemi](issues.md) e un backlog: questa bacheca e il backlog possono essere utilizzati per pianificare e tenere traccia del lavoro.
    + Una [suite di report di test](test-workflow-actions.md): questa suite include report automatici inclusi nel codice di esempio.
+ **Nella sezione associata Account AWS**:
  + Uno **CDKToolkit**stack: questo stack distribuisce le seguenti risorse:
    + Un bucket di staging Amazon S3, una policy sui bucket e la AWS KMS chiave utilizzata per crittografare il bucket.
    + Un ruolo di implementazione IAM per l'azione di implementazione.
    + AWS Ruoli e policy IAM a supporto delle risorse dello stack.
**Nota**  
Non **CDKToolkit**viene demolito e ricreato per ogni implementazione. Si tratta di uno stack che viene avviato in ogni account per supportare. AWS CDK
  + Uno stack **development-mysfits**: questo *string* BackEnd stack distribuisce le seguenti risorse di backend:
    + Un endpoint Amazon API Gateway.
    + AWS Ruoli e policy IAM a supporto delle risorse dello stack.
    + Una AWS Lambda funzione e un livello forniscono la piattaforma di elaborazione serverless per l'applicazione moderna.
    + Una politica e un ruolo IAM per l'implementazione del bucket e la funzione Lambda.
  + Uno stack **mysfits**: questo *string* stack distribuisce l'applicazione frontend. AWS Amplify 

### Consulta anche
<a name="getting-started-template-project-reference-links"></a>

Per ulteriori informazioni sui AWS servizi in cui vengono create le risorse nell'ambito di questo tutorial, consulta quanto segue:
+ **Amazon S3**: un servizio per l'archiviazione delle risorse frontend su un servizio di storage di oggetti che offre scalabilità, alta disponibilità dei dati, sicurezza e prestazioni leader del settore. Per ulteriori informazioni, consulta la Guida per l'[utente di Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/).
+ **Amazon API Gateway**: un servizio per la creazione, la pubblicazione, la manutenzione, il monitoraggio e la protezione di REST, HTTP e WebSocket APIs su qualsiasi scala. Per ulteriori informazioni, consulta [API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/).
+ **Amplify**: un servizio per l'hosting dell'applicazione frontend. Per ulteriori informazioni, consulta [AWS Amplify Hosting](https://docs.aws.amazon.com/amplify/latest/userguide/welcome.html) User Guide.
+ **AWS Cloud Development Kit (AWS CDK)**— Un framework per la definizione dell'infrastruttura cloud in codice e il relativo provisioning. AWS CloudFormation AWS CDK Include il AWS CDK Toolkit, uno strumento a riga di comando per interagire con AWS CDK app e stack. Per ulteriori informazioni, consulta la [Guida per sviluppatori di AWS Cloud Development Kit (AWS CDK)](https://docs.aws.amazon.com/cdk/latest/guide/).
+ **Amazon DynamoDB**: un servizio di database NoSQL completamente gestito per l'archiviazione dei dati. Per ulteriori informazioni, consulta [Amazon DynamoDB Developer Guide](https://docs.aws.amazon.com/amplify/latest/userguide/welcome.html).
+ **AWS Lambda**— Un servizio per richiamare il codice su un'infrastruttura di calcolo ad alta disponibilità senza fornire o gestire server. Per ulteriori informazioni, consulta la [Guida per sviluppatori di AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/).
+ **AWS IAM**: un servizio per il controllo sicuro dell'accesso e delle relative AWS risorse. Per ulteriori informazioni, consulta [Guida per l'utente di IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/).

# Tutorial: iniziare con un progetto vuoto e aggiungere manualmente le risorse
<a name="getting-started-blank-template"></a>

Puoi creare un progetto vuoto senza risorse predefinite al suo interno scegliendo il blueprint del **progetto Empty** quando crei il progetto. Dopo aver creato un progetto vuoto, è possibile creare e aggiungere risorse ad esso in base alle esigenze del progetto. Poiché i progetti creati senza un blueprint sono vuoti al momento della creazione, questa opzione richiede una maggiore conoscenza della creazione e della configurazione CodeCatalyst delle risorse per iniziare.

**Topics**
+ [Prerequisiti](#getting-started-bt-prerequisites)
+ [Crea un progetto vuoto](#getting-started-bt-proj-create)
+ [Crea un repository di sorgenti](#getting-started-bt-source-create)
+ [Crea un flusso di lavoro per creare, testare e implementare una modifica al codice](#getting-started-bt-workflow-create)
+ [Invita qualcuno al tuo progetto](#getting-started-bt-ipa-user)
+ [Crea problemi su cui collaborare e monitora il lavoro](#getting-started-bt-issue)

## Prerequisiti
<a name="getting-started-bt-prerequisites"></a>

Per creare un progetto vuoto, è necessario che vi sia assegnato il ruolo di **amministratore dello spazio** o **Power user**. Se è la prima volta che accedi a CodeCatalyst, vedi[Configura e accedi a CodeCatalystConfigura e accedi a CodeCatalyst](setting-up-topnode.md).

## Crea un progetto vuoto
<a name="getting-started-bt-proj-create"></a>

La creazione di un progetto è il primo passo per poter lavorare insieme. Se desideri creare risorse personalizzate, come archivi di sorgenti e flussi di lavoro, puoi iniziare con un progetto vuoto. 

**Per creare un progetto vuoto**

1. Vai allo spazio in cui desideri creare un progetto.

1. Nella dashboard dello spazio, scegli **Crea progetto**.

1. Scegli **Inizia da zero**.

1. In **Dai un nome al tuo progetto**, inserisci il nome che desideri assegnare al progetto. Il nome deve essere univoco all'interno del tuo spazio.

1. Seleziona **Crea progetto**.

Ora che hai un progetto vuoto, il passo successivo è creare un repository di sorgenti.

## Crea un repository di sorgenti
<a name="getting-started-bt-source-create"></a>

Crea un archivio di sorgenti per archiviare e collaborare al codice del tuo progetto. I membri del progetto possono clonare questo repository sui propri computer locali per lavorare sul codice. In alternativa, puoi scegliere di collegare un repository ospitato in un servizio supportato, ma questo non è trattato in questo tutorial. Per ulteriori informazioni, consulta [Collegamento di un repository di sorgenti](source-repositories-link.md).

**Per creare un archivio di sorgenti**

1. Apri la CodeCatalyst console all'indirizzo [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Vai al tuo progetto.

1. Nel riquadro di navigazione, scegli **Codice**, quindi scegli **Archivi di origine.**

1. Scegli **Aggiungi repository**, quindi scegli **Crea** repository.

1. In **Nome archivio, fornisci un nome** per il repository. In questa guida, lo usiamo*codecatalyst-source-repository*, ma puoi scegliere un nome diverso. I nomi dei repository devono essere univoci all'interno di un progetto. Per ulteriori informazioni sui requisiti per i nomi dei repository, vedere. [Quote per i repository di sorgenti in CodeCatalyst](source-quotas.md)

1. (Facoltativo) In **Descrizione**, aggiungi una descrizione del repository che aiuterà gli altri utenti del progetto a capire a cosa serve il repository. 

1. Scegli **Crea repository (impostazione predefinita)**. Questa opzione crea un repository che include un ramo predefinito e un file README.md. A differenza di un repository vuoto, è possibile utilizzare questo repository non appena viene creato.

1. Nel **ramo predefinito**, lascia il nome come *principale* a meno che tu non abbia un motivo per scegliere un nome diverso. Gli esempi di questa guida utilizzano tutti il nome *main* per il ramo predefinito.

1. (Facoltativo) Aggiungi un `.gitignore` file per il tipo di codice che intendi inviare. 

1. Scegli **Create** (Crea).
**Nota**  
CodeCatalyst aggiunge un `README.md` file al tuo repository quando lo crei. CodeCatalyst**crea anche un commit iniziale per il repository in un ramo predefinito denominato main.** È possibile modificare o eliminare il file README.md, ma non è possibile eliminare il ramo predefinito.

Puoi aggiungere rapidamente codice nel tuo repository creando un ambiente di sviluppo. Per questo tutorial, ti consigliamo di creare un ambiente di sviluppo utilizzando AWS Cloud9 e scegliere l'opzione per creare un ramo dal ramo **principale** durante la creazione dell'ambiente di sviluppo. Utilizziamo il nome **test** per questo ramo, ma puoi inserire un nome di ramo diverso se preferisci.

**Per creare un ambiente di sviluppo con un nuovo ramo**

1. Apri la CodeCatalyst console all'[indirizzo https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Vai al progetto in cui desideri creare un ambiente di sviluppo.

1. Scegli il nome del repository dall'elenco dei repository di origine per il progetto. In alternativa, nel riquadro di navigazione, scegli **Codice**, scegli **Archivi di origine** e scegli il repository per il quale desideri creare un ambiente di sviluppo.

1. Nella home page del repository, scegli **Crea** ambiente di sviluppo.

1. Scegli un IDE supportato dal menu a discesa. Per ulteriori informazioni, consulta [Ambienti di sviluppo integrati supportati per gli ambienti di sviluppo](devenvironment-create.md#devenvironment-supported-ide).

1. Scegli il repository da clonare, scegli **Lavora in un nuovo ramo**, inserisci il nome di un **ramo nel campo Nome** del ramo e scegli un ramo dal quale creare il nuovo ramo dal menu a discesa **Crea ramo** da.

1. Facoltativamente, aggiungi un alias per Dev Environment.

1. Facoltativamente, scegli il pulsante di modifica della **configurazione dell'ambiente** di sviluppo per modificare la configurazione di calcolo, archiviazione o timeout dell'ambiente di sviluppo.

1. Scegli **Create** (Crea). Durante la creazione dell'ambiente di sviluppo, la colonna di stato dell'ambiente di sviluppo mostrerà **Avvio** e la colonna di stato verrà visualizzata **in esecuzione** una volta creato l'ambiente di sviluppo. Si aprirà una nuova scheda con il tuo ambiente di sviluppo nell'IDE di tua scelta. Puoi modificare il codice, eseguire il commit e inviare le modifiche.

## Crea un flusso di lavoro per creare, testare e implementare una modifica al codice
<a name="getting-started-bt-workflow-create"></a>

Nel CodeCatalyst, organizzi la creazione, il test e la distribuzione delle tue applicazioni o servizi nei flussi di lavoro. I flussi di lavoro consistono in azioni e possono essere configurati per essere eseguiti automaticamente dopo che si verificano eventi specifici del repository di origine, come l'invio di codice o l'apertura o l'aggiornamento di una pull request. Per ulteriori informazioni sui flussi di lavoro, consulta [Crea, testa e distribuisci con i flussi di lavoroCrea, testa e distribuisci con i flussi di lavoro](workflow.md).

Segui le istruzioni per creare il tuo [Guida introduttiva ai flussi di lavoro](workflows-getting-started.md) primo flusso di lavoro.

## Invita qualcuno al tuo progetto
<a name="getting-started-bt-ipa-user"></a>

Ora che hai impostato il tuo progetto personalizzato, invita altre persone a lavorare con te.

**Per invitare qualcuno al tuo progetto**

1. Vai al progetto a cui desideri invitare gli utenti.

1. Nel riquadro di navigazione, scegli **Impostazioni del progetto**.

1. Nella scheda **Membri**, scegli **Invita**.

1. Digita gli indirizzi email delle persone che desideri invitare come utenti del progetto. Puoi digitare più indirizzi e-mail separati da uno spazio o da una virgola. Puoi anche scegliere tra membri del tuo spazio che non sono membri del progetto. 

1. Scegli il ruolo dell'utente.

   Quando hai finito di aggiungere utenti, scegli **Invita**.

## Crea problemi su cui collaborare e monitora il lavoro
<a name="getting-started-bt-issue"></a>

CodeCatalyst ti aiuta a tenere traccia delle funzionalità, delle attività, dei bug e di qualsiasi altra attività coinvolta nel progetto con problemi. Puoi creare problemi per tenere traccia del lavoro e delle idee necessari. Per impostazione predefinita, quando crei un problema, questo viene aggiunto al backlog. Puoi spostare i problemi in una bacheca in cui tenere traccia dei lavori in corso. Puoi anche assegnare un problema a un membro specifico del progetto.

**Per creare un problema per un progetto**

1. Apri la CodeCatalyst console all'[indirizzo https://codecatalyst.aws/](https://codecatalyst.aws/).

   Assicurati di navigare all'interno del progetto in cui desideri creare problemi. Per visualizzare tutti i progetti, nel pannello di navigazione, scegli **Amazon** e CodeCatalyst, se necessario, scegli **Visualizza tutti i progetti**. Scegli il progetto in cui vuoi creare o risolvere i problemi.

1. Nel riquadro di navigazione, scegli **Track**, quindi scegli **Backlog**.

1. Scegli **Crea problema.** 

1. Nel **titolo del problema**, fornisci un nome per il problema. Facoltativamente, fornisci una descrizione del problema. Se lo desideri, scegli lo stato, la priorità e la stima del problema. Puoi anche assegnare il problema a un membro del progetto dall'elenco dei membri del progetto.
**Suggerimento**  
Puoi scegliere di assegnare un problema ad **Amazon Q** per fare in modo che Amazon Q provi a risolverlo. Se il tentativo ha esito positivo, verrà creata una pull request e lo stato del problema cambierà **in In revisione**, in modo da poter esaminare e testare il codice. Per ulteriori informazioni, consulta [Tutorial: Utilizzo delle funzionalità di intelligenza artificiale CodeCatalyst generativa per velocizzare il lavoro di sviluppo](getting-started-project-assistance.md).  
Questa funzionalità richiede che le funzionalità di intelligenza artificiale generativa siano abilitate per lo spazio. Per ulteriori informazioni, consulta [Gestione delle funzionalità di intelligenza artificiale generativa](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-generative-ai-features.html). 

1. Scegli **Save** (Salva).

Dopo aver creato i problemi, puoi assegnarli ai membri del progetto, stimarli e tenerne traccia su una bacheca Kanban. Per ulteriori informazioni, consulta [Tieni traccia e organizza il lavoro con problemi in CodeCatalystTieni traccia e organizza il lavoro con i problemi](issues.md).

# Tutorial: Utilizzo delle funzionalità di intelligenza artificiale CodeCatalyst generativa per velocizzare il lavoro di sviluppo
<a name="getting-started-project-assistance"></a>

Se disponi di un progetto e di un archivio di sorgenti in Amazon CodeCatalyst in uno spazio in cui sono abilitate le funzionalità di intelligenza artificiale generativa, puoi utilizzare queste funzionalità per accelerare lo sviluppo del software. Gli sviluppatori hanno spesso più attività da svolgere che tempo per portarle a termine. Spesso non si prendono il tempo di spiegare le modifiche apportate al codice ai colleghi quando creano richieste pull per la revisione di tali modifiche, aspettandosi che gli altri utenti trovino le modifiche da sole. Inoltre, i creatori e i revisori delle pull request non hanno il tempo di trovare e leggere attentamente tutti i commenti su una pull request, in particolare se la pull request ha più revisioni. CodeCatalyst si integra con Amazon Q Developer Agent per lo sviluppo di software per fornire funzionalità di intelligenza artificiale generativa che possono aiutare i membri del team a svolgere le proprie attività più rapidamente e aumentare il tempo a disposizione per concentrarsi sulle parti più importanti del loro lavoro. 

Amazon Q Developer è un assistente conversazionale generativo basato sull'intelligenza artificiale che può aiutarti a comprendere, creare, estendere e utilizzare le applicazioni. AWS Per accelerare la tua crescita AWS, il modello alla base di Amazon Q è arricchito con AWS contenuti di alta qualità per produrre risposte più complete, utilizzabili e referenziate. Per ulteriori informazioni, consulta [Cos'è Amazon Q Developer?](https://docs.aws.amazon.com/amazonq/latest/aws-builder-use-ug/what-is.html) nella *Guida per l'utente di Amazon Q Developer*. 

**Nota**  
**Realizzato da Amazon Bedrock**: AWS implementa il rilevamento [automatico degli abusi](https://docs.aws.amazon.com//bedrock/latest/userguide/abuse-detection.html). Poiché le funzionalità **Scrivi una descrizione per me**, **Crea un riepilogo dei commenti**, **Attività consigliate**, **Usa Amazon Q per creare o aggiungere funzionalità a un progetto** e **Assegna i problemi ad Amazon Q** con Amazon Q Developer Agent per lo sviluppo software sono supportate da Amazon Bedrock, gli utenti possono utilizzare al meglio i controlli implementati in Amazon Bedrock per rafforzare la protezione, la sicurezza e l’uso responsabile dell’intelligenza artificiale (IA).

In questo tutorial, imparerai come utilizzare le funzionalità di intelligenza artificiale generativa CodeCatalyst per aiutarti a creare progetti con blueprint, oltre ad aggiungere blueprint a progetti esistenti. Inoltre, imparerai come riepilogare le modifiche tra i rami durante la creazione di richieste pull e riepilogare i commenti lasciati su una pull request. Imparerai anche a creare problemi con le tue idee per modifiche o miglioramenti al codice e ad assegnarle ad Amazon Q. Nell'ambito della gestione dei problemi assegnati ad Amazon Q, imparerai come consentire ad Amazon Q di suggerire attività e come assegnare e lavorare su qualsiasi attività creata nell'ambito della risoluzione di un problema.

**Topics**
+ [Prerequisiti](#getting-started-project-assistance-prerequisites)
+ [Utilizzo di Amazon Q per scegliere un blueprint durante la creazione di un progetto o l'aggiunta di funzionalità](#getting-started-project-assistance-create-apply-bp)
+ [Crea un riepilogo delle modifiche al codice tra i rami durante la creazione di una pull request](#getting-started-project-assistance-pull-request-summary)
+ [Crea un riepilogo dei commenti lasciati sulle modifiche al codice in una pull request](#getting-started-project-assistance-comment-summary)
+ [Crea un problema e assegnalo ad Amazon Q](#getting-started-project-assistance-issue-to-code)
+ [Crea un problema e chiedi ad Amazon Q di eseguire delle attività consigliate per risolverlo](#getting-started-project-assistance-issue-to-tasks)
+ [Eseguire la pulizia delle risorse](#getting-started-project-assistance-clean-up)

## Prerequisiti
<a name="getting-started-project-assistance-prerequisites"></a>

Per utilizzare le CodeCatalyst funzionalità di questo tutorial, devi prima aver completato e avere accesso alle seguenti risorse:
+ Hai un AWS Builder ID o un'identità Single Sign-On (SSO) a cui accedere. CodeCatalyst
+ Ti trovi in uno spazio in cui sono abilitate le funzionalità di intelligenza artificiale generativa. Per ulteriori informazioni, consulta [Gestione delle funzionalità di intelligenza artificiale generativa](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-generative-ai-features.html).
+ Hai il ruolo di collaboratore o amministratore di progetto in un progetto in quello spazio.
+ A meno che tu non stia creando un progetto con intelligenza artificiale generativa, per il tuo progetto esistente è configurato almeno un repository di sorgenti. Gli archivi collegati non sono supportati.
+ Quando si assegnano problemi a una soluzione iniziale creata dall'intelligenza artificiale generativa, il progetto non può essere configurato con l'estensione **Jira** Software. L'estensione non è supportata per questa funzionalità. 

Per ulteriori informazioni, consulta [Creazione di uno spazio](spaces-create.md), [Tieni traccia e organizza il lavoro con problemi in CodeCatalystTieni traccia e organizza il lavoro con i problemi](issues.md), [Aggiungi funzionalità ai progetti con estensioni in CodeCatalystAggiungi funzionalità ai progetti con estensioni](extensions.md) e [Concessione dell'accesso con ruoli utente](ipa-roles.md).

Questo tutorial si basa su un progetto creato utilizzando il modello di **applicazione web Modern a tre livelli** con Python. Se utilizzi un progetto creato con un progetto diverso, puoi comunque seguire i passaggi, ma alcune specifiche possono variare, come il codice e il linguaggio di esempio. 

## Utilizzo di Amazon Q per scegliere un blueprint durante la creazione di un progetto o l'aggiunta di funzionalità
<a name="getting-started-project-assistance-create-apply-bp"></a>

In qualità di sviluppatore di progetti, puoi collaborare con Amazon Q, un assistente AI generativo, durante la creazione di nuovi progetti o l'aggiunta di componenti a progetti esistenti. Puoi fornire ad Amazon Q i requisiti per il tuo progetto interagendo con esso in un'interfaccia simile a una chat. In base ai tuoi requisiti, Amazon Q suggerisce un modello e delinea anche i requisiti che non possono essere soddisfatti. Se il tuo spazio dispone di progetti personalizzati, Amazon Q apprende e include tali progetti anche nei consigli. Puoi quindi procedere con il suggerimento di Amazon Q se sei soddisfatto e creerà le risorse necessarie, come un repository di sorgenti con codice per le tue esigenze. Amazon Q crea anche problemi per requisiti che non possono essere soddisfatti con un blueprint. Per ulteriori informazioni sui CodeCatalyst blueprint disponibili, consulta. [Creazione di un progetto completo con CodeCatalyst progettiCreazione di un progetto completo con progetti](project-blueprints.md) Per ulteriori informazioni sull'utilizzo di Amazon Q con i blueprint, consulta[Le migliori pratiche per l'utilizzo di Amazon Q per creare progetti o aggiungere funzionalità con blueprint](projects-create.md#projects-create-amazon-q).

**Per creare un progetto con Amazon Q**

1. Apri la CodeCatalyst console all'[indirizzo https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Nella CodeCatalyst console, accedi allo spazio in cui desideri creare un blueprint.

1. Nella dashboard dello spazio, scegli **Crea con Amazon Q.**

1. Nel campo di immissione del testo del prompt di Amazon Q, fornisci istruzioni scrivendo una breve descrizione del progetto che desideri creare. Ad esempio, `“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.”`

   (Facoltativo) In **Prova esempi**, puoi utilizzare un prompt già scritto scegliendo un blueprint. Ad esempio, se scegli l'app React, viene fornito il seguente prompt: `“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. Scegli **Invia per inviare** le istruzioni ad Amazon Q. L'assistente generativo AI fornisce un suggerimento e delinea i requisiti che non possono essere soddisfatti dal modello. Ad esempio, Amazon Q potrebbe suggerire quanto segue in base ai tuoi criteri:

   ```
   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. (Facoltativo) Per visualizzare i dettagli approfonditi del blueprint suggerito, scegli **Visualizza** dettagli.

1. Esegui una delle seguenti operazioni:

   1. Scegli **Sì, usa questo blueprint** se sei soddisfatto del suggerimento.

   1. Scegli **Modifica richiesta** se desideri modificare la richiesta.

   1. Scegli **Ricomincia** se desideri cancellare completamente il prompt.

1. Esegui una delle seguenti operazioni:

   1. Scegli **Configura** se desideri configurare il blueprint suggerito. Puoi anche configurare il blueprint in un secondo momento.

   1. Scegli **Salta** se al momento non desideri modificare le configurazioni del blueprint.

1. Se hai scelto di configurare il blueprint, scegli **Continua** dopo aver modificato le risorse del progetto.

1. Quando richiesto, inserisci il nome che desideri assegnare al progetto e i nomi delle risorse associate. Il nome deve essere univoco all'interno del tuo spazio.

1. Scegli **Crea progetto** per creare un progetto con il blueprint. Amazon Q crea risorse utilizzando il blueprint. Ad esempio, se crei un progetto con il blueprint di un'applicazione a pagina singola, viene creato un repository di origine per il codice e i flussi di lavoro pertinenti per. CI/CD 

1. (Facoltativo) Per impostazione predefinita, Amazon Q crea anche problemi per i requisiti che non sono soddisfatti da un blueprint. Puoi scegliere per quali articoli non vuoi creare problemi. Dopo aver scelto di lasciare che Amazon Q crei problemi, puoi assegnare un problema anche ad Amazon Q. Analizzerà il problema nel contesto degli archivi di origine indicati, fornendo un riepilogo dei file e del codice sorgente pertinenti. Per ulteriori informazioni, consultare [Individuazione e visualizzazione dei problemi](issues-view.md), [Crea un problema e assegnalo ad Amazon Q](#getting-started-project-assistance-issue-to-code) e [Procedure consigliate per la creazione e l'utilizzo di problemi assegnati ad Amazon Q](issues-create-issue.md#issues-create-issue-assign-genai-best-practices).

Dopo aver creato un progetto con Amazon Q, puoi anche utilizzare Amazon Q per aggiungere nuovi componenti in quanto suggerisce CodeCatalyst progetti in base alle tue esigenze.

**Per aggiungere un blueprint con Amazon Q**

1. Apri la CodeCatalyst console all'indirizzo [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Nella CodeCatalyst console, accedi al progetto a cui desideri aggiungere un blueprint.

1. Scegli **Aggiungi con Amazon Q.**

1. Nel campo di immissione del testo del prompt di Amazon Q, fornisci istruzioni scrivendo una breve descrizione del progetto che desideri creare. Ad esempio, `“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.”`

   (Facoltativo) In **Prova esempi**, puoi utilizzare un prompt già scritto scegliendo un blueprint. Ad esempio, se scegli l'app React, viene fornito il seguente prompt: `“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. Scegli **Invia per inviare** le istruzioni ad Amazon Q. L'assistente generativo AI fornisce un suggerimento e delinea i requisiti che non possono essere soddisfatti dal modello. Ad esempio, Amazon Q potrebbe suggerire quanto segue in base ai tuoi criteri:

   ```
   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. (Facoltativo) Per visualizzare i dettagli approfonditi del blueprint suggerito, scegli **Visualizza** dettagli.

1. Esegui una delle seguenti operazioni:

   1. Scegli **Sì, usa questo blueprint** se sei soddisfatto del suggerimento.

   1. Scegli **Modifica richiesta** se desideri modificare la richiesta.

   1. Scegli **Ricomincia** se desideri cancellare completamente il prompt.

1. Esegui una delle seguenti operazioni:

   1. Scegli **Configura** se desideri configurare il blueprint suggerito. Puoi anche configurare il blueprint in un secondo momento.

   1. Scegli **Salta** se al momento non desideri modificare le configurazioni del blueprint.

1. Se hai scelto di configurare il blueprint, scegli **Continua** dopo aver modificato le risorse del progetto.

1. Scegli **Aggiungi al progetto per** aggiungere risorse a un progetto con il blueprint. Amazon Q crea risorse utilizzando il blueprint. Ad esempio, se si aggiunge un progetto con il blueprint di un'applicazione a pagina singola, viene creato un repository di origine per il codice e i flussi di lavoro pertinenti per. CI/CD 

1. (Facoltativo) Per impostazione predefinita, Amazon Q crea anche problemi per i requisiti che non sono soddisfatti da un blueprint. Puoi scegliere per quali articoli non vuoi creare problemi. Dopo aver scelto di lasciare che Amazon Q crei problemi, puoi assegnare un problema anche ad Amazon Q. Analizzerà il problema nel contesto degli archivi di origine indicati, fornendo un riepilogo dei file e del codice sorgente pertinenti. Per ulteriori informazioni, consultare [Crea un problema e assegnalo ad Amazon Q](#getting-started-project-assistance-issue-to-code) e [Procedure consigliate per la creazione e l'utilizzo di problemi assegnati ad Amazon Q](issues-create-issue.md#issues-create-issue-assign-genai-best-practices).

## Crea un riepilogo delle modifiche al codice tra i rami durante la creazione di una pull request
<a name="getting-started-project-assistance-pull-request-summary"></a>

Una pull request è il modo principale con cui tu e gli altri membri del progetto potete rivedere, commentare e unire le modifiche al codice da una filiale all'altra. Puoi utilizzare le pull request per esaminare le modifiche al codice in modo collaborativo per apportare modifiche o correzioni minori, aggiunte di funzionalità importanti o nuove versioni del software rilasciato. Riassumere le modifiche al codice e l'intento alla base delle modifiche come parte della descrizione della pull request è utile per gli altri utenti che esamineranno il codice e aiuta anche a comprendere lo storico delle modifiche apportate al codice nel tempo. Tuttavia, gli sviluppatori spesso si affidano al codice per spiegare se stesso o fornire dettagli ambigui anziché descrivere le modifiche con dettagli sufficienti per consentire ai revisori di capire cosa stanno esaminando o quale fosse l'intento alla base delle modifiche al codice.

Puoi utilizzare la funzione **Write description for me** durante la creazione di richieste pull per fare in modo che Amazon Q crei una descrizione delle modifiche contenute in una richiesta pull. Quando scegli questa opzione, Amazon Q analizza le differenze tra il ramo di origine che contiene le modifiche al codice e il ramo di destinazione in cui desideri unire queste modifiche. Quindi crea un riepilogo di quali sono tali modifiche, nonché la migliore interpretazione dell'intento e dell'effetto di tali modifiche.

**Nota**  
Questa funzionalità non funziona con i sottomoduli Git. Non riassumerà alcuna modifica in un sottomodulo Git che fa parte della pull request.   
Questa funzionalità non è disponibile per le richieste pull nei repository collegati.

Puoi provare questa funzionalità con qualsiasi pull request che crei, ma in questo tutorial la testeremo apportando alcune semplici modifiche al codice contenuto in un progetto creato in un modello di applicazione web **Modern a tre livelli** basato su Python.

**Suggerimento**  
Se stai usando un progetto creato con un progetto diverso o con il tuo codice, puoi comunque seguire questo tutorial, ma gli esempi in questo tutorial non corrisponderanno al codice del tuo progetto. Invece dell'esempio suggerito di seguito, apporta semplici modifiche al codice del progetto in un ramo, quindi crea una pull request per testare la funzionalità, come mostrato nei passaggi seguenti.

Innanzitutto, creerai un ramo nel repository dei sorgenti. Quindi apporterai una rapida modifica al codice di un file in quel ramo utilizzando l'editor di testo nella console. Creerai quindi una pull request e utilizzerai la funzione **Scrivi una descrizione per me per** riepilogare le modifiche apportate.

**Per creare un ramo (console)**

1. Nella CodeCatalyst console, accedi al progetto in cui risiede il tuo repository di origine.

1. Scegli il nome del repository dall'elenco dei repository di origine per il progetto. In alternativa, nel riquadro di navigazione, scegli **Codice**, quindi scegli Archivi di **origine**.

1. Scegli il repository in cui desideri creare un ramo.

1. Nella pagina di panoramica del repository, scegli **Altro**, quindi scegli **Crea** ramo.

1. Inserisci un nome per il ramo.

1. Scegliete un ramo da cui creare il ramo, quindi scegliete **Crea**. 

Una volta creato un ramo, modifica un file in quel ramo con una semplice modifica. In questo esempio, modificherai il `test_endpoint.py` file per cambiare il numero di tentativi per i test da 0 **3** a **5**.

**Suggerimento**  
Puoi anche scegliere di creare o utilizzare un ambiente di sviluppo per apportare questa modifica al codice. Per ulteriori informazioni, consulta [Creazione di un ambiente di sviluppo](devenvironment-create.md).

**Per modificare il `test_endpoint.py` file nella console**

1. Nella pagina di panoramica del repository di **mysfits** origine, scegli il menu a discesa del ramo e scegli il ramo creato nella procedura precedente.

1. In **File**, accedi al file che desideri modificare. Ad esempio, per modificare il `test_endpoint.py` file, espandi **test**, espandi **integ** e quindi scegli`test_endpoint.py`.

1. Scegli **Modifica**.

1. Alla riga 7, modifica il numero di volte in cui verranno ripetuti tutti i test:

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

   to:

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

1. Scegli **Commit** e invia le modifiche alla tua filiale.

Ora che hai una filiale con una modifica, puoi creare una pull request.

**Crea una pull request con un riepilogo delle modifiche**

1. Nella pagina di panoramica del repository, scegli **Altro**, quindi scegli **Crea richiesta pull**.

1. Nel **ramo di destinazione**, scegli il ramo in cui unire il codice dopo averlo esaminato. 
**Suggerimento**  
Scegli il ramo da cui hai creato il ramo nella procedura precedente per una dimostrazione più semplice di questa funzionalità. Ad esempio, se hai creato la filiale dal ramo predefinito del repository, scegli quel ramo come ramo di destinazione per la tua pull request.

1. Nel **ramo Source**, scegli il ramo che contiene le modifiche che hai appena eseguito nel `test_endpoint.py` file. 

1. In **Pull request title**, inserisci un titolo che aiuti gli altri utenti a capire cosa deve essere esaminato e perché. 

1. In **Pull request description**, scegli **Write description for me per** fare in modo che Amazon Q crei una descrizione delle modifiche contenute nella pull request.

1. Viene visualizzato un riepilogo delle modifiche. Controlla il testo suggerito, quindi scegli **Accetta e aggiungi alla descrizione**.

1. Facoltativamente, modifica il riepilogo per riflettere meglio le modifiche apportate al codice. Puoi anche scegliere di aggiungere revisori o collegare i problemi a questa pull request. Quando hai finito di apportare le modifiche aggiuntive che desideri, scegli **Crea**.

## Crea un riepilogo dei commenti lasciati sulle modifiche al codice in una pull request
<a name="getting-started-project-assistance-comment-summary"></a>

Quando gli utenti esaminano una pull request, spesso lasciano più commenti sulle modifiche apportate a quella pull request. Se ci sono molti commenti da parte di molti revisori, può essere difficile individuare temi comuni nel feedback o addirittura assicurarsi di aver esaminato tutti i commenti in tutte le revisioni. Puoi utilizzare la funzione **Crea riepilogo commenti** per consentire ad Amazon Q di analizzare tutti i commenti lasciati sulle modifiche al codice in una pull request e creare un riepilogo di tali commenti.

**Nota**  
I riepiloghi dei commenti sono temporanei. Se aggiorni una pull request, il riepilogo scomparirà. I riepiloghi dei contenuti non includono commenti sulla pull request complessiva, ma solo commenti lasciati sulle differenze di codice nelle revisioni della pull request.  
Questa funzionalità non funziona con i commenti lasciati sulle modifiche al codice nei sottomoduli Git.  
Questa funzionalità non è disponibile per le richieste pull nei repository collegati.

**Per creare un riepilogo dei commenti in una pull request**

1. Passa alla pull request creata nella procedura precedente. 
**Suggerimento**  
Se preferisci, puoi utilizzare qualsiasi pull request aperta nel tuo progetto. Nella barra di navigazione, scegli **Code**, scegli **Pull request** e scegli una pull request aperta.

1. Aggiungi alcuni commenti alla pull request in **Modifiche** se la pull request non contiene già commenti.

1. In **Panoramica**, scegli **Crea riepilogo dei commenti**. Al termine, la sezione di **riepilogo dei commenti** si espande. 

1. Esamina il riepilogo dei commenti lasciati sulle modifiche al codice nelle revisioni della pull request e confrontalo con i commenti nella pull request.

## Crea un problema e assegnalo ad Amazon Q
<a name="getting-started-project-assistance-issue-to-code"></a>

I team di sviluppo creano problemi per tracciare e gestire il proprio lavoro, ma a volte un problema persiste perché non è chiaro chi debba occuparsene, oppure il problema richiede una ricerca su una parte particolare della base di codice o è necessario prima occuparsi di altri lavori urgenti. CodeCatalyst include l'integrazione con Amazon Q Developer Agent per lo sviluppo di software. Puoi assegnare i problemi a un assistente AI generativo chiamato **Amazon Q** che può analizzare un problema in base al titolo e alla descrizione. Se assegni il problema ad Amazon Q, quest'ultima tenterà di creare una bozza di soluzione da valutare. Questo può aiutare te e il tuo team a concentrarti e ottimizzare il lavoro su questioni che richiedono la tua attenzione, mentre Amazon Q lavora a una soluzione per problemi che non hai risorse per risolvere immediatamente. 

**Suggerimento**  
**Amazon Q** offre le migliori prestazioni su problemi semplici e diretti. Per ottenere i migliori risultati, usa un linguaggio semplice per spiegare chiaramente cosa vuoi fare.

Quando assegni un problema ad **Amazon Q**, CodeCatalyst lo contrassegnerà come bloccato finché non confermerai come desideri che Amazon Q risolva il problema. È necessario rispondere a tre domande prima che il problema possa continuare: 
+  Sia che tu voglia confermare ogni passaggio necessario o che proceda senza feedback. Se scegli di confermare ogni passaggio, puoi rispondere ad Amazon Q con un feedback sull'approccio che ha creato, in modo che possa ripetere il suo approccio, se necessario. Amazon Q può anche esaminare il feedback che gli utenti lasciano su qualsiasi pull request creata se scegli questa opzione. Se scegli di non confermare ogni passaggio, Amazon Q potrebbe completare il lavoro più rapidamente, ma non esaminerà alcun feedback fornito nel problema o nelle pull request che crea.
+ Sia che tu voglia consentirgli di aggiornare i file del flusso di lavoro come parte del suo lavoro. Il tuo progetto potrebbe avere flussi di lavoro configurati per avviare esecuzioni in base a eventi di pull request. In tal caso, qualsiasi richiesta pull creata da Amazon Q che includa la creazione o l'aggiornamento del flusso di lavoro YAML potrebbe avviare un'esecuzione dei flussi di lavoro inclusi nella richiesta pull. Come best practice, non scegliere di consentire ad Amazon Q di lavorare su file di workflow a meno che tu non sia sicuro che nel tuo progetto non ci siano flussi di lavoro che eseguano automaticamente tali flussi di lavoro prima di rivedere e approvare la pull request creata.
+ Se vuoi consentirgli di suggerire la creazione di attività per suddividere il lavoro sul problema in incrementi più piccoli che possono essere assegnati individualmente agli utenti, incluso Amazon Q stesso. Consentire ad Amazon Q di suggerire e creare attività può aiutare ad accelerare lo sviluppo di problemi complessi, permettendo a più persone di lavorare su parti distinte del problema. Può anche aiutare a ridurre la complessità della comprensione dell'intero lavoro, poiché il lavoro necessario per completare ogni attività è idealmente più semplice del problema a cui appartiene.
+ In quale archivio sorgente vuoi che funzioni. Anche se il tuo progetto ha più repository di sorgenti, Amazon Q può lavorare solo sul codice in un unico repository di sorgenti. Gli archivi collegati non sono supportati.

Dopo aver effettuato e confermato le tue scelte, **Amazon Q** sposterà il problema nello stato **In corso** mentre tenta di determinare la richiesta in base al titolo del problema e alla sua descrizione, nonché al codice nel repository specificato. Creerà un commento aggiunto in cui fornirà aggiornamenti sullo stato del suo lavoro. Dopo aver esaminato i dati, Amazon Q formulerà un potenziale approccio a una soluzione. Amazon Q registra le sue azioni aggiornando il commento aggiunto e commentando lo stato di avanzamento del problema in ogni fase. A differenza dei commenti e delle risposte bloccati, non conserva una registrazione strettamente cronologica del suo lavoro. Piuttosto, inserisce le informazioni più rilevanti sul suo lavoro al primo livello del commento aggiunto. Tenterà di creare codice in base al suo approccio e alla sua analisi del codice già presente nel repository. Se genera con successo una potenziale soluzione, creerà un ramo e inserirà il codice in quel ramo. Quindi crea una pull request che unirà quel ramo con il ramo predefinito. Quando Amazon Q completa il suo lavoro, sposta il problema **su In review in** modo che tu e il tuo team sappiate che c'è un codice pronto per la valutazione.

**Nota**  
Questa funzionalità è disponibile solo tramite **Issues** in the US West (Oregon) Region. Non è disponibile se hai configurato il progetto per utilizzare Jira con l'estensione **Jira Software**. Inoltre, se hai personalizzato il layout della scheda, il problema potrebbe non modificare lo stato. Per ottenere i migliori risultati, usa questa funzionalità solo con progetti con un layout di scheda standard.  
Questa funzionalità non funziona con i sottomoduli Git. Non può apportare modifiche a nessun sottomodulo Git incluso nel repository.  
Dopo aver assegnato un problema ad Amazon Q, non puoi modificare il titolo o la descrizione del problema o assegnarlo a nessun altro. Se annulli l'assegnazione di **Amazon Q** al problema, completerà la fase attuale e poi smetterà di funzionare. Una volta annullata l'assegnazione, non può riprendere a funzionare o essere riassegnato al problema.  
Un problema può essere spostato automaticamente nella colonna **In revisione** se assegnato ad Amazon Q se un utente sceglie di consentirgli di creare attività. Tuttavia, il problema in **In revisione** potrebbe avere ancora attività che si trovano in uno stato diverso, ad esempio nello stato **In corso**.

In questa parte del tutorial, creerai tre problemi basati sulle potenziali funzionalità del codice incluse nei progetti creati con il blueprint di **un'applicazione web moderna a tre livelli**: uno per aggiungere uno per creare una nuova creatura mysfit, uno per aggiungere una funzionalità di ordinamento e uno per aggiornare un flusso di lavoro per includere un ramo denominato. **test**

**Nota**  
 Se stai lavorando a un progetto con codice diverso, crea problemi con titoli e descrizioni relativi a quel codice base.

**Per creare un problema e far sì che venga generata una soluzione da valutare**

1. Nel riquadro di navigazione, scegli **Problemi** e assicurati di essere nella visualizzazione **Bacheca**.

1. Scegli **Crea problema**.

1. Assegna al numero un titolo che spieghi cosa vuoi fare in un linguaggio semplice. Ad esempio, per questo problema, inserisci un titolo di**Create another mysfit named Quokkapus**. In **Descrizione**, fornisci i seguenti dettagli:

   ```
   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. (Facoltativo) Allega al problema un'immagine da utilizzare come miniatura e immagine del profilo per mysfit. Se lo fai, aggiorna la descrizione per includere dettagli su quali immagini vuoi usare e perché. Ad esempio, potresti aggiungere quanto segue alla descrizione: «Il mysfit richiede che i file di immagine vengano distribuiti sul sito web. Aggiungi queste immagini allegate a questo numero all'archivio di origine come parte del lavoro e distribuisci le immagini sul sito web».
**Nota**  
Le immagini allegate potrebbero o meno essere distribuite sul sito Web durante le interazioni di questo tutorial. Puoi aggiungere tu stesso le immagini al sito Web e quindi lasciare commenti affinché Amazon Q aggiorni il codice in modo che punti alle immagini che desideri che utilizzi dopo aver creato una pull request.

   Controlla la descrizione e assicurati che contenga tutti i dettagli che potrebbero essere necessari prima di procedere al passaggio successivo.

1. In **Assegnatari**, scegli **Assegna ad Amazon Q.**

1. Nel **repository Source, scegli il repository** di origine che contiene il codice del progetto.

1. Fai scorrere il **pulsante Require Amazon Q per interromperlo dopo ogni passaggio e, se necessario, attendi che il selettore di lavoro** ritorni attivo.
**Nota**  
Scegliendo l'opzione di interruzione di Amazon Q dopo ogni passaggio, puoi commentare il problema o qualsiasi attività creata e avere la possibilità che Amazon Q cambi il suo approccio fino a tre volte in base ai tuoi commenti. Se scegli di non lasciare che Amazon Q si fermi dopo ogni fase in modo da poterne controllare il funzionamento, il lavoro potrebbe procedere più rapidamente perché Amazon Q non aspetta il tuo feedback, ma non sarai in grado di influenzare la direzione intrapresa da Amazon Q lasciando commenti. Inoltre, Amazon Q non risponderà ai commenti lasciati in una pull request se scegli questa opzione.

1. Lascia il selettore **Consenti ad Amazon Q di modificare i file del flusso** di lavoro nello stato inattivo.

1. Fai scorrere il selettore **Consenti ad Amazon Q di suggerire la creazione di attività** sullo stato attivo.

1. Scegli **Crea problema.** La tua visualizzazione viene modificata nella scheda Problemi.

1. Scegli **Crea problema** per creare un altro numero, questa volta con lo stesso titolo**Change the get\$1all\$1mysfits() API to return mysfits sorted by the Age attribute**. Assegna questo problema ad **Amazon Q** e crea il problema.

1. Scegli **Crea problema** per creare un altro numero, questa volta con lo stesso titolo**Update the OnPullRequest workflow to include a branch named test in its triggers**. Se lo desideri, inserisci un link al flusso di lavoro nella descrizione. Assegna questo problema ad **Amazon Q** ma questa volta assicurati che il selettore **Consenti ad Amazon Q di modificare i file del flusso** di lavoro sia impostato sullo stato attivo. Crea il problema per tornare alla scheda Problemi.
**Suggerimento**  
È possibile cercare file, inclusi i file del flusso di lavoro, inserendo il simbolo at (`@`) e il nome del file.

Dopo aver creato e assegnato i problemi, i problemi passeranno alla sezione **In corso**. Amazon Q aggiungerà commenti che ne tracciano l'avanzamento all'interno del problema in un commento aggiunto. Se è in grado di definire un approccio a una soluzione, aggiornerà la descrizione del problema con una sezione **Background** che contiene l'analisi del codice base e una sezione **Approccio che descrive in dettaglio l'approccio** proposto per la creazione di una soluzione. Se Amazon Q riesce a trovare una soluzione al problema descritto nel problema, creerà una filiale e apporterà modifiche al codice in quella filiale che implementeranno la soluzione proposta. Se il codice proposto contiene somiglianze con il codice open source di cui Amazon Q è a conoscenza, fornirà un file che include collegamenti a quel codice in modo che tu possa esaminarlo. Una volta che il codice è pronto, crea una pull request in modo da poter esaminare le modifiche al codice suggerite, aggiunge un link a quella pull request al problema e sposta il problema in **In review**.

**Importante**  
Dovresti sempre rivedere tutte le modifiche al codice in una pull request prima di unirla. L'unione delle modifiche al codice apportate da Amazon Q, come qualsiasi altra modifica al codice, può avere un impatto negativo sulla base di codice e sul codice dell'infrastruttura se il codice unito non viene esaminato correttamente e contiene errori durante l'unione.

**Per esaminare un problema e una pull request collegata che contiene le modifiche apportate da Amazon Q**

1. In **Problemi**, scegli un problema assegnato ad Amazon Q che è **in corso**. Esamina i commenti per monitorare lo stato di avanzamento di Amazon Q. Se presenti, esamina lo sfondo e consulta i record nella descrizione del problema. Se hai scelto di consentire ad Amazon Q di suggerire attività, esamina le attività proposte e intraprendi le azioni necessarie. Ad esempio, se Amazon Q ha suggerito delle attività e desideri modificare l'ordine o assegnare attività a utenti specifici, scegli **Modifica, aggiungi o riordina le attività** ed esegui gli aggiornamenti necessari. Quando hai finito di visualizzare il problema, scegli **X** per chiudere il riquadro del problema.
**Suggerimento**  
Per visualizzare lo stato di avanzamento delle attività, scegli l'attività dall'elenco delle attività del numero. Le attività non vengono visualizzate come elementi separati sulla lavagna e sono accessibili solo tramite un numero. Se un'attività è assegnata ad Amazon Q, devi aprirla per approvare le azioni che desidera eseguire. È inoltre necessario aprire un'attività per visualizzare le richieste pull collegate, in quanto non verranno visualizzate come collegamenti nel problema, ma solo nell'attività. Per tornare a un problema da un'attività, scegli il link al problema.

1. Ora scegli un problema assegnato ad Amazon Q che si trova in **In revisione**. Esamina lo sfondo e consulta i dati riportati nella descrizione del problema. Esamina i commenti per comprendere le azioni che ha eseguito. Esamina tutte le attività create per il lavoro correlato a questo problema, inclusi lo stato di avanzamento, le azioni che potresti dover intraprendere e gli eventuali commenti. Nelle **richieste Pull**, scegli il link alla pull request accanto all'etichetta **Open** per rivedere il codice. 
**Suggerimento**  
Le richieste pull generate per le attività vengono visualizzate solo come richieste pull collegate nella visualizzazione delle attività. Non vengono visualizzate come richieste pull collegate al problema.

1. Nella pull request, esamina le modifiche al codice. Per ulteriori informazioni, consulta [Revisione di una richiesta di pull](pull-requests-review.md). Lascia commenti sulla pull request se desideri che Amazon Q modifichi uno dei suoi codici suggeriti. Sii specifico quando lasci commenti per Amazon Q per ottenere i migliori risultati. 

   Ad esempio, quando esamini la pull request creata per**Create another mysfit named Quokkapus**, potresti notare che c'è un errore di battitura nella descrizione. Puoi lasciare un commento per Amazon Q che indichi «Modifica la descrizione per correggere l'errore di battitura «needsa» aggiungendo uno spazio tra «needs» e «a».» In alternativa, puoi lasciare un commento che indichi ad Amazon Q di aggiornare la descrizione e fornire l'intera descrizione rivista da incorporare.

   Se hai caricato immagini per il nuovo mysfit sul sito Web, puoi lasciare un commento ad Amazon Q per aggiornare mysfit con puntatori all'immagine e miniature da utilizzare per il nuovo mysfit.
**Nota**  
Amazon Q non risponderà ai commenti individuali. Amazon Q includerà il feedback lasciato nei commenti nelle pull request solo se hai scelto l'opzione predefinita di fermarti dopo ogni passaggio per l'approvazione quando hai creato il problema.

1. (Facoltativo) Dopo che tu e gli altri utenti del progetto avete lasciato tutti i commenti desiderati per le modifiche al codice, scegli **Crea revisione** per fare in modo che Amazon Q crei una revisione della pull request che incorpori le modifiche richieste nei commenti. Lo stato di avanzamento della creazione della revisione verrà segnalato da Amazon Q in **Panoramica**, non in **Modifiche**. Assicurati di aggiornare il browser per visualizzare gli ultimi aggiornamenti di Amazon Q sulla creazione della revisione.
**Nota**  
Solo l'utente che ha creato il problema può creare una revisione della pull request. Puoi richiedere una sola revisione di una pull request. Assicurati di aver risolto tutti i problemi relativi ai commenti e di essere soddisfatto del contenuto dei commenti prima di scegliere **Crea revisione**.

1. In questo progetto di esempio viene eseguito un flusso di lavoro per ogni pull request. Assicurati di vedere un flusso di lavoro eseguito correttamente prima di unire la pull request. Puoi anche scegliere di creare flussi di lavoro e ambienti aggiuntivi per testare il codice prima di unirlo. Per ulteriori informazioni, consulta [Guida introduttiva ai flussi di lavoro](workflows-getting-started.md).

1. **Quando sei soddisfatto dell'ultima revisione della pull request, scegli Merge.**

## Crea un problema e chiedi ad Amazon Q di eseguire delle attività consigliate per risolverlo
<a name="getting-started-project-assistance-issue-to-tasks"></a>

A volte un problema può comportare una mole di lavoro lunga o complessa. CodeCatalyst include l'integrazione con Amazon Q Developer Agent per lo sviluppo di software. Puoi chiedere ad **Amazon Q** di analizzare un problema in base al titolo e alla descrizione e consigliare una suddivisione logica del lavoro in attività separate. Tenterà di creare un elenco di attività consigliate da rivedere, modificare e scegliere se creare o meno. Questo può aiutare te e il tuo team ad assegnare singole parti del lavoro agli utenti in modi più gestibili e più rapidamente. 

**Per creare ed esaminare un elenco di attività consigliate per un problema**

1. Nel riquadro di navigazione, scegli **Problemi** e assicurati di essere nella visualizzazione **Bacheca**.

1. Scegli **Crea problema**.

1. Assegna al numero un titolo che spieghi cosa vuoi fare in un linguaggio semplice. Ad esempio, per questo problema, inserisci un titolo di**Change the get\$1all\$1mysfits() API to return mysfits sorted by the Good/Evil attribute**. In **Descrizione**, fornisci i seguenti dettagli:

   ```
   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. Controlla la descrizione e assicurati che contenga tutti i dettagli che potrebbero essere necessari prima di procedere al passaggio successivo.

1. In **Assegnatari**, scegli di assegnare il problema a te stesso.

1. **Scegli Crea problema.** La tua visualizzazione viene modificata nella scheda Problemi.

1. Scegli il problema che hai appena creato per aprirlo. Scegli **Consiglia attività**.

1. Scegli il repository di origine che contiene il codice per i problemi. Scegli **Inizia a consigliare attività**.

La finestra di dialogo si chiuderà e Amazon Q inizierà ad analizzare la complessità del problema. Se il problema è complesso, suggerirà una suddivisione del lavoro in attività sequenziali separate. Quando l'elenco è pronto, scegli **Visualizza attività consigliate**. Puoi aggiungere attività aggiuntive, modificare le attività consigliate e riordinare le attività. Se sei d'accordo con i consigli, selezionando **Crea attività** verranno create le attività. Puoi quindi assegnare tali attività agli utenti affinché ci lavorino o anche ad Amazon Q stesso.

## Eseguire la pulizia delle risorse
<a name="getting-started-project-assistance-clean-up"></a>

Una volta completato questo tutorial, prendi in considerazione l'idea di intraprendere le seguenti azioni per ripulire tutte le risorse che hai creato durante questo tutorial che non ti servono più.
+ Annulla Amazon Q da eventuali problemi su cui non stai più lavorando. Se Amazon Q ha terminato il lavoro su un problema o non è riuscito a trovare una soluzione, assicurati di annullare l'assegnazione di Amazon Q per evitare di raggiungere la quota massima per le funzionalità di intelligenza artificiale generativa. [Per ulteriori informazioni, consulta [Gestione delle funzionalità di intelligenza artificiale generativa e](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-generative-ai-features.html) dei prezzi.](https://codecatalyst.aws/explore/pricing)
+ Sposta tutti i problemi in cui il lavoro è completo su **Fine**.
+ Se il progetto non è più necessario, eliminalo.