CodeDeploy AppSpec riferimento al file - AWS CodeDeploy

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

CodeDeploy AppSpec riferimento al file

Questa sezione è solo per riferimento. Per una panoramica concettuale del AppSpec file, vedereApplication Specification Files.

Il file delle specifiche dell'applicazione (AppSpec file) è un file in formato YAML o JSON utilizzato da per gestire una distribuzione. CodeDeploy

Nota

Il AppSpec file per una distribuzione EC2/on-premise deve avere un nome, a meno che non si stia eseguendo una distribuzione locale. appspec.yml Per ulteriori informazioni, consulta Crea una distribuzione locale.

AppSpec file su una piattaforma di elaborazione Amazon ECS

Per le applicazioni della piattaforma di calcolo Amazon ECS, il AppSpec file viene utilizzato CodeDeploy per determinare:

  • Il tuo file di definizione delle attività di Amazon ECS. Questo è specificato con il relativo ARN nelle TaskDefinition istruzioni del file. AppSpec

  • Il contenitore e la porta del set di attività sostitutivo in cui l'Application Load Balancer o il Network Load Balancer reindirizzano il traffico durante una distribuzione. Questo viene specificato con le istruzioni contenute nel file. LoadBalancerInfo AppSpec

  • Informazioni opzionali sul tuo servizio Amazon ECS, come la versione della piattaforma su cui viene eseguito, le sue sottoreti e i suoi gruppi di sicurezza.

  • Funzioni Lambda opzionali da eseguire durante gli hook che corrispondono agli eventi del ciclo di vita durante una distribuzione Amazon ECS. Per ulteriori informazioni, consulta AppSpec sezione 'hook' per una distribuzione Amazon ECS.

AppSpec file su una piattaforma di elaborazione AWS Lambda

Per le applicazioni della piattaforma di calcolo AWS Lambda, il AppSpec file viene utilizzato per CodeDeploy determinare:

  • Quale versione della funzione Lambda distribuire.

  • Quali funzioni Lambda utilizzare come test di convalida.

Un AppSpec file può essere in formato YAML o in formato JSON. Puoi anche inserire il contenuto di un AppSpec file direttamente nella console quando crei una distribuzione. CodeDeploy

AppSpec file su una piattaforma di elaborazione EC2/on-premise

Se l'applicazione utilizza la piattaforma di calcolo EC2/on-premise, il AppSpec file deve essere un file in formato YAML denominato appspec.yml e deve essere inserito nella radice della struttura di directory del codice sorgente di un'applicazione. In alternativa, le distribuzioni non riescono. CodeDeploy Viene utilizzato per determinare:

  • Cosa deve installare sulle istanze dalla revisione dell'applicazione in Amazon S3 o. GitHub

  • Quali hook di eventi del ciclo di vita eseguire in risposta agli eventi del ciclo di vita della distribuzione.

Una volta completato, AppSpec il file viene raggruppato, insieme al contenuto da distribuire, in un file di archivio (zip, tar o tar compresso). Per ulteriori informazioni, consulta Utilizzo delle revisioni delle applicazioni per CodeDeploy.

Nota

I formati di file di archivio tar e tar compressi (.tar e .tar.gz) non sono supportati per le istanze di Windows Server.

Dopo aver creato un file di archivio in bundle (noto CodeDeploy come revisione), lo carichi in un bucket Amazon S3 o in un repository Git. Quindi lo usi per distribuire la revisione CodeDeploy . Per istruzioni, consulta Crea una distribuzione con CodeDeploy.

L'appspec.yml per una distribuzione della piattaforma di calcolo EC2/on-premise viene salvato nella directory principale della revisione. Per ulteriori informazioni, consulta Aggiungi un AppSpec file per una distribuzione EC2/on-premise e Pianifica una revisione per CodeDeploy.

AppSpec Spaziatura tra i file

Di seguito è riportato il formato corretto per la spaziatura tra i AppSpec file. I numeri tra parentesi quadre indicano il numero di spazi che devono essere presenti tra gli elementi. Ad esempio, [4] significa inserire quattro spazi tra gli elementi. CodeDeploy genera un errore di cui potrebbe essere difficile eseguire il debug se le posizioni e il numero di spazi in un AppSpec file non sono corretti.

version:[1]version-number os:[1]operating-system-name files: [2]-[1]source:[1]source-files-location [4]destination:[1]destination-files-location permissions: [2]-[1]object:[1]object-specification [4]pattern:[1]pattern-specification [4]except:[1]exception-specification [4]owner:[1]owner-account-name [4]group:[1]group-name [4]mode:[1]mode-specification [4]acls: [6]-[1]acls-specification [4]context: [6]user:[1]user-specification [6]type:[1]type-specification [6]range:[1]range-specification [4]type: [6]-[1]object-type hooks: [2]deployment-lifecycle-event-name: [4]-[1]location:[1]script-location [6]timeout:[1]timeout-in-seconds [6]runas:[1]user-name

Ecco un esempio di file con AppSpec spaziatura corretta:

version: 0.0 os: linux files: - source: / destination: /var/www/html/WordPress hooks: BeforeInstall: - location: scripts/install_dependencies.sh timeout: 300 runas: root AfterInstall: - location: scripts/change_permissions.sh timeout: 300 runas: root ApplicationStart: - location: scripts/start_server.sh - location: scripts/create_test_db.sh timeout: 300 runas: root ApplicationStop: - location: scripts/stop_server.sh timeout: 300 runas: root

Per ulteriori informazioni sulla spaziatura, consulta la specifica YAML.