Usa costrutti condizionali in AWSTOE - EC2Image Builder

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

Usa costrutti condizionali in AWSTOE

I costrutti condizionali eseguono azioni diverse nel documento del componente a seconda che l'espressione condizionale specificata restituisca o meno. true false È possibile utilizzare il if costrutto per controllare il flusso di esecuzione nel documento componente.

if Construct

È possibile utilizzare il if costrutto per valutare se un passaggio deve essere eseguito o meno. Per impostazione predefinita, quando l'espressione if condizionale restituiscetrue, AWSTOE esegue il passaggio e quando la condizione restituisce afalse, AWSTOE salta il passaggio. Se un passaggio viene saltato, viene considerato come un passaggio riuscito quando si AWSTOE valuta se la fase e il documento sono stati eseguiti correttamente.

Nota

Un'ifistruzione viene valutata solo una volta, anche se il passaggio attiva un riavvio. Se un passaggio si riavvia, riconosce che l'ifistruzione è già stata valutata e continua da dove era stata interrotta.

Sintassi

if: - <conditional expression>: [then: <step action>] [else: <step action>]
Nome chiave Richiesto Descrizione
espressione condizionale

L'espressione condizionale può contenere esattamente uno dei seguenti tipi di operatori al livello superiore.

  • Operatore di confronto: per un elenco degli operatori di confronto e informazioni sul loro funzionamento nei documenti AWSTOE dei componenti, vedereOperatori di confronto.

  • Operatore logico: gli operatori logici includono and ornot, e e operano su uno o più operatori di confronto. Per ulteriori informazioni sul funzionamento degli operatori logici nei documenti dei AWSTOE componenti, vedereOperatori logici.

Se l'espressione deve soddisfare più condizioni, utilizzate un operatore logico per specificare le condizioni.

poi No

Definisce l'azione da intraprendere se l'espressione condizionale restituisce. true

altro No

Definisce l'azione da intraprendere se l'espressione condizionale restituisce un risultato. false

azione graduale Condizionale

Quando si utilizza then oelse, è necessario specificare una delle seguenti azioni di fase:

  • Interrompi: AWSTOE contrassegna il passaggio come non riuscito.

  • Esegui: AWSTOE esegue il passaggio.

  • Ignora: AWSTOE salta il passaggio.

Esempio 1: pacchetto di installazione

I seguenti passaggi di esempio tratti da un documento relativo a un AWSTOE componente utilizzano operatori logici per testare il valore di un parametro ed eseguire i comandi appropriati del gestore di pacchetti per installare un'applicazione se il pacchetto è decompresso.

- name: InstallUnzipAptGet action: ExecuteBash if: and: - binaryExists: 'apt-get' - not: binaryExists: 'unzip' inputs: commands: - sudo apt-get update - sudo apt-get install -y unzip - name: InstallUnzipYum action: ExecuteBash if: and: - binaryExists: 'yum' - not: binaryExists: 'unzip' inputs: commands: - sudo yum install -y unzip - name: InstallUnzipZypper action: ExecuteBash if: and: - binaryExists: 'zypper' - not: binaryExists: 'unzip' inputs: commands: - sudo zypper refresh - sudo zypper install -y unzip
Esempio 2: saltare un passaggio

L'esempio seguente mostra due modi per saltare un passaggio. Uno utilizza un operatore logico e l'altro utilizza un operatore di confronto con l'azione del Skip passaggio.

# Creates a file if it does not exist using not - name: CreateMyConfigFile-1 action: ExecuteBash if: not: fileExists: '/etc/my_config' inputs: commands: - echo "Hello world" > '/etc/my_config' # Creates a file if it does not exist using then and else - name: CreateMyConfigFile-2 action: ExecuteBash if: fileExists: '/etc/my_config' then: Skip else: Execute inputs: commands: - echo "Hello world" > '/etc/my_config'