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: crea una pipeline da distribuire su Service Catalog
Service Catalog consente di creare e fornire prodotti basati su AWS CloudFormation modelli.
Importante
Come parte della creazione di una pipeline, per gli artefatti verrà utilizzato un bucket di artefatti S3 fornito dal cliente. CodePipeline (Questo è diverso dal bucket utilizzato per un'azione sorgente S3.) Se il bucket di artefatti S3 si trova in un account diverso da quello della pipeline, assicurati che il bucket di artefatti S3 sia di proprietà di utenti sicuri e affidabili. Account AWS
Questo tutorial mostra come creare e configurare una pipeline per distribuire il modello di prodotto su Service Catalog e fornire le modifiche apportate nel repository di origine (già creato in GitHub CodeCommit, o Amazon S3).
Nota
Se Amazon S3 è il fornitore di origine per la tua pipeline, devi caricare nel tuo bucket tutti i file sorgente impacchettati come un unico file.zip. In caso contrario, l'azione di origine ha esito negativo.
Innanzitutto, crei un prodotto in Service Catalog, quindi crei una pipeline in AWS CodePipeline. Questo tutorial offre due opzioni per l'impostazione della configurazione della distribuzione:
-
Crea un prodotto in Service Catalog e carica un file modello nel tuo repository di origine. Fornisci la versione del prodotto e la configurazione di distribuzione nella CodePipeline console (senza un file di configurazione separato). Per informazioni, consulta Opzione 1: implementazione su Service Catalog senza un file di configurazione.
Nota
Il file modello può essere creato in YAML o JSON formato.
-
Crea un prodotto in Service Catalog e carica un file modello nel tuo repository di origine. Fornisci la versione del prodotto e la configurazione della distribuzione nella console (senza un file di configurazione separato). Per informazioni, consulta Opzione 2: eseguire la distribuzione su Service Catalog utilizzando un file di configurazione.
Opzione 1: implementazione su Service Catalog senza un file di configurazione
In questo esempio, carichi il file AWS CloudFormation modello di esempio per un bucket S3, quindi crei il prodotto in Service Catalog. Successivamente, crei la pipeline e specifichi la configurazione di distribuzione nella console. CodePipeline
Fase 1: caricamento di file di modello di esempio nel repository di origine
-
Aprire un editor di testo. Creare un modello di esempio incollando quanto segue nel file. Salva il file con nome
S3_template.json
.{ "AWSTemplateFormatVersion": "2010-09-09", "Description": "CloudFormation Sample Template S3_Bucket: Sample template showing how to create a privately accessible S3 bucket. **WARNING** This template creates an S3 bucket. You will be billed for the resources used if you create a stack from this template.", "Resources": { "S3Bucket": { "Type": "AWS::S3::Bucket", "Properties": {} } }, "Outputs": { "BucketName": { "Value": { "Ref": "S3Bucket" }, "Description": "Name of Amazon S3 bucket to hold website content" } } }
Questo modello consente di AWS CloudFormation creare un bucket S3 che può essere utilizzato da Service Catalog.
-
Caricare il file
S3_template.json
nel repository AWS CodeCommit .
Fase 2: Creare un prodotto in Service Catalog
-
In qualità di amministratore IT, accedi alla console Service Catalog, vai alla pagina Prodotti, quindi scegli Carica nuovo prodotto.
-
Nella pagina Upload new product (Carica nuovo prodotto), procedere come segue:
-
In Product name (Nome prodotto), immettere il nome da utilizzare per il nuovo prodotto.
-
In Description (Descrizione), immettere la descrizione del catalogo dei prodotti. Questa descrizione è visualizzata nell'elenco dei prodotti per consentire all'utente di scegliere il prodotto corretto.
-
In Provided by (Fornito da), immettere il nome dell'amministratore o del reparto IT.
-
Scegli Next (Successivo).
-
-
(Facoltativo) In Enter support details (Inserisci i dettagli di supporto), immettere le informazioni di contatto per il supporto del prodotto e scegliere Next (Successivo).
-
In Version details (Dettagli versione), procedere come segue:
-
Scegliere Upload a template file (Carica un file di modello). Individuare il file
S3_template.json
e caricarlo. -
In Version title (Titolo versione), immettere il nome della versione del prodotto (ad esempio
devops S3 v2
). -
In Description (Descrizione), immettere i dettagli che distinguono questa versione dalle altre versioni.
-
Scegli Next (Successivo).
-
-
Nella pagina Review (Verifica), verificare che le informazioni siano corrette, quindi scegliere Create (Crea).
-
Nella pagina Prodotti, nel browser, copia URL il nuovo prodotto. L'URL contiene l'ID del prodotto. Copiare e conservare questo ID del prodotto. Lo usi quando crei la tua pipeline in CodePipeline.
Ecco il nome URL per un prodotto denominato
my-product
. Per estrarre l'ID del prodotto, copiare il valore compreso tra il segno di uguale (=
) e la E commerciale (&
). In questo esempio l'ID del prodotto èprod-example123456
.https://<region-URL>/servicecatalog/home?region=<region>#/admin-products?productCreated=prod-example123456&createdProductTitle=my-product
Nota
Copia URL il codice relativo al tuo prodotto prima di uscire dalla pagina. Una volta che esci da questa pagina, devi utilizzare il CLI per ottenere l'ID del prodotto.
Dopo alcuni secondi, il prodotto viene visualizzato nella pagina Products (Prodotti). È possibile che sia necessario aggiornare il browser per visualizzare il prodotto nell'elenco.
Fase 3: creazione della pipeline
-
Per assegnare un nome alla pipeline e selezionare i parametri per la pipeline, procedere nel seguente modo:
Accedi a AWS Management Console e apri la CodePipeline console all'indirizzo https://console.aws.amazon.com/codepipeline/
. -
Selezionare Getting started (Nozioni di base). Scegliere Create pipeline (Crea pipeline) e immettere un nome per la pipeline.
-
Nel tipo di pipeline, scegli V2. Per ulteriori informazioni, consulta Tipi di tubazioni. Scegli Next (Successivo).
-
In Ruolo di servizio, scegli Nuovo ruolo di servizio in cui consentire CodePipeline la creazione di un ruolo di servizio. IAM
-
Lasciare i valori predefiniti delle impostazioni in Advanced settings (Impostazioni avanzate), quindi scegliere Next (Successivo).
-
Per aggiungere una fase di origine, procedere come segue:
-
In Source provider (Provider origine), scegliere AWS CodeCommit.
-
In Repository name (Nome del repository) e Branch name (Nome ramo), immettere il repository e il ramo da utilizzare per l'operazione di origine.
-
Scegli Next (Successivo).
-
-
In Add build stage (Aggiunta della fase di compilazione), scegli Skip build stage (Ignora fase di compilazione) e quindi accetta il messaggio di avviso scegliendo Skip (Ignora).
-
In Aggiunta della fase di distribuzione, procedere come segue:
-
In Deploy provider (Provider di distribuzione), scegliere AWS Service Catalog.
-
Per la configurazione della distribuzione, scegli Enter deployment configuration (Inserisci configurazione distribuzione).
-
In Product ID, incolla l'ID del prodotto che hai copiato dalla console Service Catalog.
-
In Template file path (Percorso file di modello), immettere il percorso relativo dove è archiviato il file di modello.
-
In Tipo di prodotto, scegli AWS CloudFormation modello.
-
Nel Nome della versione del prodotto, inserisci il nome della versione del prodotto specificata in Service Catalog. Se si desidera che la modifica del modello venga distribuita in una nuova versione del prodotto, immettere un nome della versione del prodotto che non è stato utilizzato per una versione precedente dello stesso prodotto.
-
Per Input artifact (Artefatto di input), scegliere l'artefatto di origine di input.
-
Scegli Next (Successivo).
-
-
In Review (Verifica), esaminare le impostazioni della pipeline e selezionare Create (Crea).
-
Dopo che la pipeline è in esecuzione, nella fase di distribuzione, scegliere Details (Dettagli). Verrà aperto il prodotto in Service Catalog.
-
Nelle informazioni sul prodotto, scegliere il nome della versione per aprire il modello di prodotto. Visualizzare la distribuzione del modello.
Passaggio 4: invia una modifica e verifica il prodotto in Service Catalog
-
Visualizza la pipeline nella CodePipeline console e, nella fase di origine, scegli Dettagli. Il tuo AWS CodeCommit repository di origine si apre nella console. Scegliere Edit (Modifica) ed effettuare una modifica nel file (ad esempio la descrizione).
"Description": "Name of Amazon S3 bucket to hold and version website content"
-
Eseguire il commit e il push della modifica. La pipeline viene avviata dopo il push della modifica. Una volta completata l'esecuzione della pipeline, nella fase di implementazione, scegli Dettagli per aprire il prodotto in Service Catalog.
-
Nelle informazioni sul prodotto, scegliere il nome della nuova versione per aprire il modello di prodotto. Visualizzare la modifica del modello distribuito.
Opzione 2: eseguire la distribuzione su Service Catalog utilizzando un file di configurazione
In questo esempio, carichi il file AWS CloudFormation modello di esempio per un bucket S3, quindi crei il prodotto in Service Catalog. Inoltre carichi un file di configurazione separato che specifica la configurazione della distribuzione. Successivamente, crei la pipeline e specifichi il percorso del file di configurazione.
Fase 1: caricamento di file di modello di esempio nel repository di origine
-
Aprire un editor di testo. Creare un modello di esempio incollando quanto segue nel file. Salva il file con nome
S3_template.json
.{ "AWSTemplateFormatVersion": "2010-09-09", "Description": "CloudFormation Sample Template S3_Bucket: Sample template showing how to create a privately accessible S3 bucket. **WARNING** This template creates an S3 bucket. You will be billed for the resources used if you create a stack from this template.", "Resources": { "S3Bucket": { "Type": "AWS::S3::Bucket", "Properties": {} } }, "Outputs": { "BucketName": { "Value": { "Ref": "S3Bucket" }, "Description": "Name of Amazon S3 bucket to hold website content" } } }
Questo modello consente di AWS CloudFormation creare un bucket S3 che può essere utilizzato da Service Catalog.
-
Caricare il file
S3_template.json
nel repository AWS CodeCommit .
Fase 2: creazione del file di configurazione della distribuzione del prodotto
-
Aprire un editor di testo. Creare il file di configurazione per il prodotto. Il file di configurazione viene utilizzato per definire i parametri/le preferenze di distribuzione del Service Catalog. Questo file viene utilizzato quando si crea la pipeline.
In questo esempio viene usato il
ProductVersionName
"devops S3 v2" e laProductVersionDescription
MyProductVersionDescription
. Se si desidera che la modifica del modello venga distribuita in una nuova versione del prodotto, è sufficiente immettere un nome della versione del prodotto che non è stato utilizzato per una versione precedente dello stesso prodotto.Salva il file con nome
sample_config.json
.{ "SchemaVersion": "1.0", "ProductVersionName": "devops S3 v2", "ProductVersionDescription": "MyProductVersionDescription", "ProductType": "CLOUD_FORMATION_TEMPLATE", "Properties": { "TemplateFilePath": "/S3_template.json" } }
Questo file crea le informazioni sulla versione del prodotto per ogni volta che si esegue la pipeline.
-
Caricare il file
sample_config.json
nel repository AWS CodeCommit . Assicurarsi di caricare questo file nel repository di origine.
Fase 3: Creare un prodotto in Service Catalog
-
In qualità di amministratore IT, accedi alla console Service Catalog, vai alla pagina Prodotti, quindi scegli Carica nuovo prodotto.
-
Nella pagina Upload new product (Carica nuovo prodotto), procedere come segue:
-
In Product name (Nome prodotto), immettere il nome da utilizzare per il nuovo prodotto.
-
In Description (Descrizione), immettere la descrizione del catalogo dei prodotti. Questa descrizione è presente nell'elenco dei prodotti per consentire all'utente di scegliere il prodotto corretto.
-
In Provided by (Fornito da), immettere il nome dell'amministratore o del reparto IT.
-
Scegli Next (Successivo).
-
-
(Facoltativo) In Enter support details (Inserisci i dettagli di supporto), immettere le informazioni di contatto per il supporto del prodotto e scegliere Next (Successivo).
-
In Version details (Dettagli versione), procedere come segue:
-
Scegliere Upload a template file (Carica un file di modello). Individuare il file
S3_template.json
e caricarlo. -
In Version title (Titolo versione), inserire il nome della versione del prodotto (ad esempio "devops S3 v2").
-
In Description (Descrizione), immettere i dettagli che distinguono questa versione dalle altre versioni.
-
Scegli Next (Successivo).
-
-
Nella pagina Review (Verifica), verificare che le informazioni siano corrette, quindi scegliere Confirm and upload (Conferma e carica).
-
Nella pagina Prodotti, nel browser, copia URL il nuovo prodotto. L'URL contiene l'ID del prodotto. Copiare e conservare questo ID del prodotto. Lo usi quando crei la tua pipeline in CodePipeline.
Ecco il nome URL per un prodotto denominato
my-product
. Per estrarre l'ID del prodotto, copiare il valore compreso tra il segno di uguale (=
) e la E commerciale (&
). In questo esempio l'ID del prodotto èprod-example123456
.https://<region-URL>/servicecatalog/home?region=<region>#/admin-products?productCreated=prod-example123456&createdProductTitle=my-product
Nota
Copia URL il codice relativo al tuo prodotto prima di uscire dalla pagina. Una volta che esci da questa pagina, devi utilizzare il CLI per ottenere l'ID del prodotto.
Dopo alcuni secondi, il prodotto viene visualizzato nella pagina Products (Prodotti). È possibile che sia necessario aggiornare il browser per visualizzare il prodotto nell'elenco.
Fase 4: creazione della pipeline
-
Per assegnare un nome alla pipeline e selezionare i parametri per la pipeline, procedere nel seguente modo:
Accedi a AWS Management Console e apri la CodePipeline console all'indirizzo https://console.aws.amazon.com/codepipeline/
. -
Selezionare Getting started (Nozioni di base). Scegliere Create pipeline (Crea pipeline) e immettere un nome per la pipeline.
-
In Ruolo di servizio, scegli Nuovo ruolo di servizio in cui consentire CodePipeline la creazione di un ruolo di servizioIAM.
-
Lasciare i valori predefiniti delle impostazioni in Advanced settings (Impostazioni avanzate), quindi scegliere Next (Successivo).
-
Per aggiungere una fase di origine, procedere come segue:
-
In Source provider (Provider origine), scegliere AWS CodeCommit.
-
In Repository name (Nome del repository) e Branch name (Nome ramo), immettere il repository e il ramo da utilizzare per l'operazione di origine.
-
Scegli Next (Successivo).
-
-
In Add build stage (Aggiunta della fase di compilazione), scegli Skip build stage (Ignora fase di compilazione) e quindi accetta il messaggio di avviso scegliendo Skip (Ignora).
-
In Aggiunta della fase di distribuzione, procedere come segue:
-
In Deploy provider (Provider di distribuzione), scegliere AWS Service Catalog.
-
Selezionare Use configuration file (Usa file di configurazione).
-
In Product ID, incolla l'ID del prodotto che hai copiato dalla console Service Catalog.
-
In Configuration file path (Percorso file di configurazione), immettere il percorso del file di configurazione nel repository.
-
Scegli Next (Successivo).
-
-
In Review (Verifica), esaminare le impostazioni della pipeline e selezionare Create (Crea).
-
Dopo che la pipeline è stata eseguita correttamente, nella fase di implementazione, scegli Dettagli per aprire il prodotto in Service Catalog.
-
Nelle informazioni sul prodotto, scegliere il nome della versione per aprire il modello di prodotto. Visualizzare la distribuzione del modello.
Fase 5: push di una modifica e verifica del prodotto in Service Catalog
-
Visualizza la pipeline nella CodePipeline console e, nella fase di origine, scegli Dettagli. Il tuo AWS CodeCommit repository di origine si apre nella console. Scegliere Edit (Modifica) ed effettuare una modifica nel file (ad esempio la descrizione).
"Description": "Name of Amazon S3 bucket to hold and version website content"
-
Eseguire il commit e il push della modifica. La pipeline viene avviata dopo il push della modifica. Una volta completata l'esecuzione della pipeline, nella fase di implementazione, scegli Dettagli per aprire il prodotto in Service Catalog.
-
Nelle informazioni sul prodotto, scegliere il nome della nuova versione per aprire il modello di prodotto. Visualizzare la modifica del modello distribuito.