Questa è la nuova Guida di riferimento ai modelli CloudFormation. Aggiorna i segnalibri e i link. Per informazioni su come iniziare CloudFormation, consulta la Guida AWS CloudFormation per l'utente.
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à.
Fn::ForEach
La funzione intrinseca Fn::ForEach prende una raccolta e un frammento e applica gli elementi della raccolta all’identificatore nel frammento fornito. Fn::ForEach può contenere altre funzioni intrinseche, inclusa Fn::ForEach stessa, ed essere utilizzata nelle sezioni Conditions, Outputs e Resources (incluse le proprietà delle risorse). Non può essere utilizzata in nessuna delle seguenti sezioni: AWSTemplateFormatVersion, Description, Metadata, Transform, Parameters, Mappings, Rules o Hooks.
Se utilizzi la funzione intrinseca Fn::ForEach nel modello, devi anche utilizzare AWS::LanguageExtensionsTrasformazione .
L’utilizzo della funzione intrinseca Fn::ForEach non modifica le quote, che si applicano al modello risultante. Le quote includono la dimensione massima di un modello e il numero massimo di risorse in un modello. Per ulteriori informazioni, consulta Understand CloudFormation quotas nella Guida per l’utente di AWS CloudFormation.
Dichiarazione
JSON
"Fn::ForEach::LoopLogicalName": [
"Identifier",
["Value1","Value2"], // Collection
{"OutputKey": {OutputValue}}
]
YAML
'Fn::ForEach::LoopLogicalName':
- Identifier
- - Value1 # Collection
- Value2
- 'OutputKey':
OutputValue
Parametri
- Nome logico del loop
-
Un ID logico per il loop. Il nome deve essere univoco all’interno del modello e non può essere in conflitto con alcun valore di ID logico nella sezione
Resourcesdel modello. Questo nome non è presente nell’output trasformato. Viene utilizzato come riferimento interno all’interno del modello CloudFormation stesso. - Identificatore
-
Un identificatore per il segnaposto che viene sostituito nei parametri
OutputKeyeOutputValue. Tutte le istanze di${Identifier}o&{Identifier}nei parametriOutputKeyeOutputValueverranno sostituite con i valori del parametroCollection. - Raccolta
-
La raccolta di valori su cui iterare. Può essere una matrice in questo parametro oppure può essere un Ref su un
CommaDelimitedList. Quando utilizzi&{Identifier}, è possibile che i caratteri non alfanumerici vengano trasferiti inCollection. - Chiave di output
-
La chiave nel modello trasformato
${Identifier}o&{Identifier}deve essere inclusa nel parametroOutputKey. Ad esempio, seFn::ForEachviene utilizzato nella sezioneResourcesdel modello, questo è l’ID logico di ogni risorsa.La sintassi
&{}consente l’utilizzo dei caratteri non alfanumerici diCollectionnel parametroOutputKey. Per un esempio, consulta Passare caratteri non alfanumerici all’interno di Collection per Fn::ForEach. - Valore di output
-
Il valore che viene replicato nel modello trasformato per ogni elemento del parametro
Collection. Ad esempio, seFn::ForEachviene utilizzato nella sezioneResourcesdel modello, questo è il frammento del modello che viene ripetuto per configurare ogni risorsa.
Valore restituito
Un oggetto espanso che contiene il frammento dell’oggetto ripetuto una volta per ogni elemento della raccolta, in cui l’identificatore nel frammento viene sostituito con l’elemento della raccolta.
Funzioni supportate
È possibile utilizzare le funzioni seguenti in una funzione Fn::ForEach.
-
Funzioni di condizione:
Esempi
Puoi trovare esempi delle sezioni Conditions, Outputs e Resources in Esempi.