Repository dei libri di ricette - AWS OpsWorks

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

Repository dei libri di ricette

Importante

Il AWS OpsWorks Stacks servizio ha raggiunto la fine del ciclo di vita il 26 maggio 2024 ed è stato disabilitato sia per i clienti nuovi che per quelli esistenti. Consigliamo vivamente ai clienti di migrare i propri carichi di lavoro verso altre soluzioni il prima possibile. Se hai domande sulla migrazione, contatta il AWS Support Team su AWS re:post o tramite Premium AWS Support.

I tuoi libri di ricette personalizzati devono essere archiviati in un repository online: un archivio come un file .zip o un gestore di controllo del codice sorgente come Git. Uno stack può avere un solo repository di libri di ricette personalizzati, ma tale repository può contenere un numero indefinito di libri di ricette. Quando installi o aggiorni i libri di cucina, AWS OpsWorks Stacks installa l'intero repository in una cache locale su ciascuna istanza dello stack. Quando necessita, ad esempio, di eseguire una o più ricette, un'istanza utilizza il codice della cache locale.

Di seguito viene descritto come strutturare il repository del libro di ricette in base al tipo. Il testo in corsivo nelle illustrazioni rappresenta i nomi di directory e di file definiti dall'utente, incluso il nome del repository o dell'archivio.

Gestore di controllo del codice sorgente

AWS OpsWorks Stacks supporta i seguenti gestori del controllo del codice sorgente:

  • Stack Linux: Git e Subversion

  • Stack di Windows — Git

Di seguito viene mostrata la struttura di file e directory richiesta:

Struttura obbligatoria per i repository di libri di ricette SCM
  • Le directory di libri di ricette devono essere tutte al primo livello.

Archive (Archivia)

AWS OpsWorks Stacks supporta i seguenti archivi:

  • Stack Linux: file zip, gzip, bzip2 o tarball, archiviati su Amazon S3 o su un sito Web (archivio HTTP).

    AWS OpsWorks Stacks non supporta archivi tar non compressi.

  • Stack di Windows: file zip e tgz (tar compresso con gzip), archiviati su Amazon S3.

Di seguito viene mostrata la struttura di file e directory richiesta, che varia a seconda che si esegua uno stack Linux o Windows. La struttura del libro di ricette è la stessa dei repository SCM, perciò è rappresentata da un'ellissi (...).

Struttura obbligatoria per gli archivi
  • Pile Linux: le directory dei libri di cucina devono essere contenute in una directory principale.

  • Pile di Windows: i libri di cucina devono trovarsi al livello più alto dell'archivio.

    Se disponi di un solo libro di ricette, puoi omettere la relativa directory e inserire i file del libro di ricette nel primo livello. In questo caso, AWS OpsWorks Stacks ottiene il nome del libro di ricette da metadata.rb.

Ogni directory del libro di ricette include almeno uno, ma generalmente tutti, i seguenti file e directory standard, che devono utilizzare nomi standard:

  • attributes— I file degli attributi del libro di cucina.

  • recipes— I file di ricette del ricettario.

  • templates— I file modello del ricettario.

  • altro: directory opzionali definite dall'utente che contengono altri tipi di file, come definizioni o specifiche.

  • metadata.rb— I metadati del ricettario.

    Per Chef 11.10 e versioni successive, se le tue ricette dipendono da altri libri di ricette, devi includere le istruzioni depends corrispondenti nel file metadata.rb del tuo libro di ricette. Ad esempio, se il tuo libro di ricette include una ricetta con un'istruzione come include_recipe anothercookbook::somerecipe, il file metadata.rb del libro di ricette include la riga seguente: depends "anothercookbook". Per ulteriori informazioni, consulta l'articolo sulle informazioni sui metadati dei libri di ricette.

I modelli devono essere in una sottodirectory della directory templates, che contiene almeno una e, facoltativamente, più sottodirectory. Tali sottodirectory possono a loro volta avere altre sottodirectory.

  • Solitamente i modelli hanno una sottodirectory default, che contiene i file modello che Chef utilizza per impostazione predefinita.

  • other rappresenta sottodirectory facoltative che possono essere utilizzate per modelli specifici del sistema operativo.

  • Chef utilizza automaticamente il modello dalla sottodirectory appropriata, in base alle convenzione di denominazione descritte in Specificità dei file. Ad esempio, per i sistemi operativi Amazon Linux e Ubuntu, puoi inserire modelli specifici del sistema operativo in sottodirectory denominate, rispettivamente, amazon o ubuntu.

I dettagli in merito a come gestire libri di ricette personalizzati variano in base al tipo di repository preferito.

Per utilizzare un archivio
  1. Implementare i libri di ricette utilizzando la struttura di cartella visualizzata nella sezione precedente.

  2. Crea un archivio compresso e caricalo su un bucket Amazon S3 o su un sito Web.

    Se si aggiornano i libri di ricette, è necessario creare e caricare un nuovo file di archivio. I contenuti distribuiti ai bucket Amazon S3 potrebbero contenere informazioni dei clienti. Per ulteriori informazioni sulla rimozione di dati sensibili, vedi Come svuotare un bucket S3? o Come eliminare un bucket S3?.

Per utilizzare un SCM
  1. Configurare un repository Git o Subversion utilizzando la struttura mostrata in precedenza.

  2. Se lo si desidera, è possibile utilizzare le funzionalità di controllo della versione del repository per implementare più rami o versioni.

    Se aggiorni i tuoi libri di cucina, puoi farlo in una nuova filiale e OpsWorks utilizzare direttamente la nuova versione. È anche possibile specificare particolari versioni con tag. Per informazioni dettagliate, vedi Specifica di un archivio di libri di ricette personalizzati.

Installazione di libri di ricette personalizzatidescrive come fare in modo che AWS OpsWorks Stacks installi il tuo repository di libri di cucina sulle istanze dello stack.

Importante

Dopo aver aggiornato i libri di cucina esistenti nel repository, devi eseguire il comando update_cookbooks stack per indirizzare AWS OpsWorks Stacks ad aggiornare la cache locale di ogni istanza online. Per ulteriori informazioni, consulta Esecuzione dei comandi dello stack.