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à.
AWS CloudFormation distribuire un riferimento all'azione
Esegue un'operazione su uno AWS CloudFormation stack. Uno stack è una raccolta di AWS risorse che è possibile gestire come singola unità. Le risorse di uno stack sono definite dal modello AWS CloudFormation
dello stack. Un set di modifiche crea un confronto che può essere visualizzato senza modificare lo stack originale. Per informazioni sui tipi di AWS CloudFormation azioni che possono essere eseguite su pile e set di modifiche, consulta il ActionMode
parametro.
Per creare un messaggio di errore per un' AWS CloudFormation azione in cui un'operazione di stack non è riuscita, CodePipeline chiama il. AWS CloudFormation DescribeStackEvents
API Se un IAM ruolo d'azione è autorizzato ad accederviAPI, i dettagli sulla prima risorsa fallita verranno inclusi nel CodePipeline messaggio di errore. Altrimenti, se la policy relativa al ruolo non dispone dell'autorizzazione appropriata, CodePipeline ignorerà l'accesso API e mostrerà invece un messaggio di errore generico. A tale scopo, è necessario aggiungere l'cloudformation:DescribeStackEvents
autorizzazione al ruolo di servizio o ad altri IAM ruoli della pipeline.
Se non desideri che i dettagli delle risorse vengano visualizzati nei messaggi di errore della pipeline, puoi revocare questa autorizzazione per il IAM ruolo d'azione rimuovendo l'autorizzazione. cloudformation:DescribeStackEvents
Argomenti
Tipo di operazione
-
Categoria:
Deploy
-
Proprietario:
AWS
-
Provider:
CloudFormation
-
Versione:
1
Parametri di configurazione
- ActionMode
-
Campo obbligatorio: sì
ActionMode
è il nome dell'azione AWS CloudFormation eseguita su uno stack o un set di modifiche. Sono disponibili le modalità operazione seguenti:-
CHANGE_SET_EXECUTE
esegue un set di modifiche per lo stack di risorse basato su un set di aggiornamenti delle risorse specificati. Con questa azione, AWS CloudFormation inizia a modificare lo stack. -
CHANGE_SET_REPLACE
crea il set di modifiche, se non esiste, in base al nome dello stack e al modello che invii. Se il set di modifiche esiste, lo AWS CloudFormation elimina e ne crea uno nuovo. -
CREATE_UPDATE
crea lo stack, se non esiste. Se lo stack esiste, lo AWS CloudFormation aggiorna. Utilizza questa operazione per aggiornare gli stack esistenti. Al contrarioREPLACE_ON_FAILURE
, se lo stack esiste e si trova in uno stato di errore, CodePipeline non eliminerà e sostituirà lo stack. -
DELETE_ONLY
elimina uno stack. Se specifichi uno stack che non esiste, l'operazione viene completata senza l'eliminazione di uno stack. -
REPLACE_ON_FAILURE
crea uno stack, se non esiste. Se lo stack esiste e si trova in uno stato di errore, AWS CloudFormation elimina lo stack e quindi ne crea uno nuovo. Se lo stack non è in uno stato di errore, lo aggiorna. AWS CloudFormationLo stack si trova nello stato non riuscito quando uno dei seguenti tipi di stato viene visualizzato in AWS CloudFormation:
-
ROLLBACK_FAILED
-
CREATE_FAILED
-
DELETE_FAILED
-
UPDATE_ROLLBACK_FAILED
Utilizza questa operazione per sostituire automaticamente gli stack non riusciti senza effettuarne il ripristino o eseguire la relativa risoluzione di problemi.
Importante
Ti consigliamo di utilizzare
REPLACE_ON_FAILURE
solo a scopo di test perché potrebbe eliminare lo stack. -
-
- StackName
-
Campo obbligatorio: sì
StackName
è il nome di uno stack esistente o che desideri creare. - Funzionalità
-
Obbligatorio: condizionale
L'utilizzo di
Capabilities
conferma che il modello potrebbe disporre delle capacità per creare e aggiornare automaticamente alcune risorse e che queste funzionalità sono determinate in base ai tipi di risorse nel modello.Questa proprietà è necessaria se nel modello di stack sono presenti IAM risorse o se si crea uno stack direttamente da un modello contenente macro. Affinché l' AWS CloudFormation azione funzioni correttamente in questo modo, è necessario riconoscere esplicitamente che si desidera che venga eseguita con una delle seguenti funzionalità:
-
CAPABILITY_IAM
-
CAPABILITY_NAMED_IAM
-
CAPABILITY_AUTO_EXPAND
Puoi specificare più funzionalità utilizzando una virgola (nessuno spazio) tra le funzionalità. L'esempio in Dichiarazione dell'operazione mostra una voce con entrambe le EXPAND proprietà CAPABILITY _ IAM e CAPABILITY _ AUTO _.
Per ulteriori informazioni in merito
Capabilities
, vedere le proprietà UpdateStacknella sezione AWS CloudFormation APIRiferimento. -
- ChangeSetName
-
Obbligatorio: condizionale
ChangeSetName
il nome di un set di modifiche esistente o di uno nuovo che desideri creare per lo stack specificato.Questa proprietà è necessaria per le seguenti modalità di azione: CHANGE _ SET _ REPLACE e CHANGE _ SET _EXECUTE. La proprietà viene ignorata per tutte le altre modalità operazione.
- RoleArn
-
Obbligatorio: condizionale
RoleArn
È il ruolo ARN di IAM servizio che AWS CloudFormation assume quando opera su risorse nello stack specificato.RoleArn
non viene applicato durante l'esecuzione di un set di modifiche. Se non lo utilizzate CodePipeline per creare il set di modifiche, assicuratevi che al set o allo stack di modifiche sia associato un ruolo.Nota
Questo ruolo deve trovarsi nello stesso account del ruolo per l'azione in esecuzione, come configurato nella dichiarazione
RoleArn
dell'azione.Questa proprietà è obbligatoria per le seguenti modalità operazione:
-
CREATE_UPDATE
-
REPLACE_ON_ FAILURE
-
DELETE_ONLY
-
CHANGE_SET_REPLACE
Nota
AWS CloudFormation viene assegnato un codice S3 firmato URL al modello; pertanto,
RoleArn
non è necessaria l'autorizzazione per accedere al bucket degli artefatti. Tuttavia, l'azioneRoleArn
richiede l'autorizzazione per accedere al bucket di artefatti, per generare il file firmato. URL -
- TemplatePath
-
Obbligatorio: condizionale
TemplatePath
rappresenta il file modello. AWS CloudFormation Includi il file in un artefatto di input per questa operazione. Il nome del file segue questo formato:Artifactname
::TemplateFileName
Artifactname
è il nome dell'artefatto di input così come appare in. CodePipeline Ad esempio, una fase di origine con il nome di artefatto diSourceArtifact
e un nome file ditemplate-export.json
crea un nomeTemplatePath
come mostrato in questo esempio:"TemplatePath": "SourceArtifact::template-export.json"
Questa proprietà è obbligatoria per le seguenti modalità operazione:
-
CREATE_UPDATE
-
REPLACE_ON_ FAILURE
-
CHANGE_SET_REPLACE
La proprietà viene ignorata per tutte le altre modalità operazione.
Nota
Il file AWS CloudFormation modello contenente il corpo del modello ha una lunghezza minima di 1 byte e una lunghezza massima di 1 MB. Per le azioni AWS CloudFormation di distribuzione in CodePipeline, la dimensione massima dell'artefatto di input è sempre 256 MB. Per ulteriori informazioni, consulta Quote in AWS CodePipeline e Limiti di AWS CloudFormation.
-
- OutputFileName
-
Campo obbligatorio: no
OutputFileName
Utilizzatelo per specificare un nome di file di output, ad esempioCreateStackOutput.json
, da CodePipeline aggiungere all'artefatto di output della pipeline per questa azione. Il JSON file contiene il contenuto dellaOutputs
sezione dello stack. AWS CloudFormationSe non specificate un nome, CodePipeline non genera un file o un artefatto di output.
- ParameterOverrides
-
Campo obbligatorio: no
I parametri sono definiti nel modello di stack e consentono di fornire valori per gli stessi al momento della creazione o dell'aggiornamento dello stack. È possibile utilizzare un JSON oggetto per impostare i valori dei parametri nel modello. Questi valori sostituiscono quelli impostati nel file di configurazione del modello. Per ulteriori informazioni sull'utilizzo delle sostituzioni dei parametri, vedere Proprietà di configurazione (JSONoggetto).
Ti consigliamo di utilizzare il file di configurazione del modello per la maggior parte dei valori dei parametri. Utilizza le sostituzioni dei parametri solo per i valori che non sono noti finché la pipeline non è in esecuzione. Per ulteriori informazioni, vedere Using Parameter Override Functions with CodePipeline Pipelines nella Guida per l'utente.AWS CloudFormation
Nota
Tutti i nomi dei parametri devono essere presenti nel modello di stack.
- TemplateConfiguration
-
Campo obbligatorio: no
TemplateConfiguration
è il file di configurazione del modello. Includi il file in un artefatto di input per questa operazione. Può contenere i valori di parametro del modello e una policy stack. Per ulteriori informazioni sul formato del file di configurazione del modello, vedete AWS CloudFormation Artifacts.Il nome del file di configurazione del modello segue questo formato:
Artifactname
::TemplateConfigurationFileName
Artifactname
è il nome dell'artefatto di input così come appare in. CodePipeline Ad esempio, una fase di origine con il nome di artefatto diSourceArtifact
e un nome file ditest-configuration.json
crea un nomeTemplateConfiguration
come mostrato in questo esempio:"TemplateConfiguration": "SourceArtifact::test-configuration.json"
Input artifact (Artefatti di input)
-
Numero di artefatti:
0 to 10
-
Descrizione: come input, l' AWS CloudFormation azione accetta facoltativamente artefatti per i seguenti scopi:
-
Per fornire il file di modello dello stack da eseguire. Consulta il parametro
TemplatePath
. -
Per fornire il file di configurazione del modello da utilizzare. Consulta il parametro
TemplateConfiguration
. Per ulteriori informazioni sul formato del file di configurazione del modello, vedere Artifacts.AWS CloudFormation -
Fornire l'artefatto per una funzione Lambda da distribuire come parte dello stack. AWS CloudFormation
-
Artefatti di output
-
Numero di artefatti:
0 to 1
-
Descrizione: se viene specificato il
OutputFileName
parametro, esiste un artefatto di output prodotto da questa azione che contiene un JSON file con il nome specificato. Il JSON file contiene il contenuto della sezione Outputs dello stack. AWS CloudFormationPer ulteriori informazioni sulla sezione output che puoi creare per l'operazione AWS CloudFormation , consulta Output.
Variabili di output
Quando è configurata, questa azione produce variabili che possono essere referenziate dalla configurazione dell'azione di un'azione downstream nella pipeline. È possibile configurare un'azione con uno spazio dei nomi per rendere tali variabili disponibili per la configurazione delle azioni downstream.
Per AWS CloudFormation le azioni, le variabili vengono prodotte a partire da qualsiasi valore indicato nella Outputs
sezione di un modello di pila. Tieni presente che le uniche modalità di CloudFormation azione che generano output sono quelle che comportano la creazione o l'aggiornamento di uno stack, come la creazione dello stack, gli aggiornamenti dello stack e l'esecuzione dei set di modifiche. Le modalità di operazione corrispondenti che generano variabili sono:
-
CHANGE_SET_EXECUTE
-
CHANGE_SET_REPLACE
-
CREATE_UPDATE
-
REPLACE_ON_FAILURE
Per ulteriori informazioni, consulta Riferimento alle variabili. Per un tutorial che mostra come creare una pipeline con un'azione di CloudFormation distribuzione in una pipeline che utilizza variabili di output, consulta. CloudFormation Tutorial: crea una pipeline che utilizza le variabili delle azioni di AWS CloudFormation distribuzione
Dichiarazione dell'operazione
Consulta anche
Le risorse correlate seguenti possono essere utili durante l'utilizzo di questa operazione.
-
Riferimento alle proprietà di configurazione: questo capitolo di riferimento della Guida per l'AWS CloudFormation utente fornisce ulteriori descrizioni ed esempi per questi CodePipeline parametri.
-
AWS CloudFormation APIRiferimento: il CreateStackparametro nel AWS CloudFormation APIriferimento descrive i parametri dello stack per i AWS CloudFormation modelli.