Tutorial: creare un componente personalizzato con parametri di input - 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à.

Tutorial: creare un componente personalizzato con parametri di input

È possibile gestire i componenti di Image Builder, inclusa la creazione e l'impostazione dei parametri dei componenti, direttamente dalla EC2 console Image Builder, da AWS CLI, oppure da Image Builder API o. SDKs In questa sezione, tratteremo la creazione e l'utilizzo dei parametri nel componente e l'impostazione dei parametri dei componenti tramite la console Image Builder e AWS CLI comandi in fase di esecuzione.

Importante

I parametri dei componenti sono valori di testo semplice e vengono registrati AWS CloudTrail Ti consigliamo di utilizzare . AWS Secrets Manager o AWS Systems Manager Parameter Store per archiviare i tuoi segreti. Per ulteriori informazioni su Secrets Manager, vedi Cos'è Secrets Manager? nel AWS Secrets Manager Guida per l'utente. Per ulteriori informazioni sull' AWS Systems Manager Parameter Store, vedere AWS Systems Manager Parameter Store in AWS Systems Manager Guida per l'utente.

Usa i parametri nel documento YAML del componente

Per creare un componente, devi fornire un documento relativo al componente YAML o JSON all'applicazione. Il documento contiene il codice che viene eseguito durante le fasi e i passaggi definiti per personalizzare l'immagine. La ricetta che fa riferimento al componente può impostare i parametri per personalizzare i valori in fase di esecuzione, con valori predefiniti che hanno effetto se il parametro non è impostato su un valore specifico.

Crea un documento componente con parametri di input

Questa sezione mostra come definire e utilizzare i parametri di input nel documento YAML componente.

Per creare un documento componente YAML dell'applicazione che utilizzi parametri ed esegua comandi nelle istanze di build o test di Image Builder, segui i passaggi corrispondenti al tuo sistema operativo di immagine:

Linux
Create un documento componente YAML

Utilizzate uno strumento di modifica dei file per creare un file di documento componente. Gli esempi di documentazione utilizzano un file denominato hello-world-test.yaml che include il seguente contenuto:

# Document Start # name: "HelloWorldTestingDocument-Linux" description: "Hello world document to demonstrate parameters." schemaVersion: 1.0 parameters: - MyInputParameter: type: string default: "It's me!" description: This is an input parameter. phases: - name: build steps: - name: HelloWorldStep action: ExecuteBash inputs: commands: - echo "Hello World! Build phase. My input parameter value is {{ MyInputParameter }}" - name: validate steps: - name: HelloWorldStep action: ExecuteBash inputs: commands: - echo "Hello World! Validate phase. My input parameter value is {{ MyInputParameter }}" - name: test steps: - name: HelloWorldStep action: ExecuteBash inputs: commands: - echo "Hello World! Test phase. My input parameter value is {{ MyInputParameter }}" # Document End
Suggerimento

Utilizzate uno strumento come questo YAMLValidator online o un'estensione YAML lint nel vostro ambiente di codice per verificare che il vostro YAML sia ben formato.

Windows
Crea un documento componente YAML

Utilizzate uno strumento di modifica dei file per creare un file di documento componente. Gli esempi di documentazione utilizzano un file denominato hello-world-test.yaml che include il seguente contenuto:

# Document Start # name: "HelloWorldTestingDocument-Windows" description: "Hello world document to demonstrate parameters." schemaVersion: 1.0 parameters: - MyInputParameter: type: string default: "It's me!" description: This is an input parameter. phases: - name: build steps: - name: HelloWorldStep action: ExecutePowerShell inputs: commands: - Write-Host "Hello World! Build phase. My input parameter value is {{ MyInputParameter }}" - name: validate steps: - name: HelloWorldStep action: ExecutePowerShell inputs: commands: - Write-Host "Hello World! Validate phase. My input parameter value is {{ MyInputParameter }}" - name: test steps: - name: HelloWorldStep action: ExecutePowerShell inputs: commands: - Write-Host "Hello World! Test phase. My input parameter value is {{ MyInputParameter }}" # Document End
Suggerimento

Utilizzate uno strumento come questo YAMLValidator online o un'estensione YAML lint nel vostro ambiente di codice per verificare che il vostro YAML sia ben formato.

Per ulteriori informazioni sulle fasi, i passaggi e la sintassi di AWSTOE documenti dei componenti dell'applicazione, vedere Utilizzare i documenti in AWSTOE. Per ulteriori informazioni sui parametri e sui relativi requisiti, vedere la Parametri sezione Definizione e riferimento delle variabili in AWSTOEpagina.

Crea un componente dal documento del YAML componente

Qualunque sia il metodo utilizzato per creare un AWSTOE componente, il documento relativo al componente YAML dell'applicazione è sempre richiesto come riferimento.

Imposta i parametri dei componenti in una ricetta di Image Builder dalla console

L'impostazione dei parametri dei componenti funziona allo stesso modo per le ricette di immagini e le ricette dei contenitori. Quando create una nuova ricetta o una nuova versione di una ricetta, scegliete quali componenti includere dagli elenchi Build components e Test components. Gli elenchi dei componenti includono componenti applicabili al sistema operativo di base scelto per l'immagine.

Dopo aver selezionato un componente, questo viene visualizzato nella sezione Componenti selezionati, direttamente sotto gli elenchi dei componenti. Le opzioni di configurazione sono mostrate per ogni componente selezionato. Se il componente ha dei parametri di input definiti, questi vengono visualizzati come una sezione espandibile denominata Parametri di input.

Le seguenti impostazioni dei parametri sono mostrate per ogni parametro definito per il componente:

  • Nome del parametro (non modificabile): il nome del parametro.

  • Descrizione (non modificabile): la descrizione del parametro

  • Tipo (non modificabile): il tipo di dati per il valore del parametro.

  • Valore: il valore del parametro. Se si utilizza questo componente per la prima volta in questa ricetta ed è stato definito un valore predefinito per il parametro di input, il valore predefinito viene visualizzato nella casella Valore con testo in grigio. Se non viene immesso nessun altro valore, Image Builder utilizza il valore predefinito.