CodeDeploy AppSpec référence de fichier - AWS CodeDeploy

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

CodeDeploy AppSpec référence de fichier

Cette section est fournie à des fins de référence uniquement. Pour une présentation conceptuelle du AppSpec fichier, voirApplication Specification Files.

Le fichier de spécification de l'application (AppSpec fichier) est un fichier au format YAML ou au format JSON utilisé pour gérer un déploiement. CodeDeploy

Note

Le AppSpec fichier d'un déploiement EC2/local doit être nomméappspec.yml, sauf si vous effectuez un déploiement local. Pour plus d’informations, consultez Création d'un déploiement local.

AppSpec fichiers sur une plateforme de calcul Amazon ECS

Pour les applications de plate-forme de calcul Amazon ECS, le AppSpec fichier est utilisé CodeDeploy pour déterminer :

  • Votre fichier de définition de tâche Amazon ECS. Ceci est spécifié avec son ARN dans l'TaskDefinitioninstruction du AppSpec fichier.

  • Le conteneur et le port de votre ensemble de tâches de remplacement où votre Application Load Balancer ou Network Load Balancer redirige le trafic lors d'un déploiement. Ceci est spécifié dans les LoadBalancerInfo instructions du AppSpec fichier.

  • Informations facultatives concernant votre service Amazon ECS, telles que la version de plate-forme sur laquelle il s'exécute, ses sous-réseaux et ses groupes de sécurité.

  • Fonctions Lambda facultatives à exécuter pendant les hooks correspondant aux événements du cycle de vie lors d'un déploiement Amazon ECS. Pour plus d’informations, consultez AppSpec section « hooks » pour un déploiement Amazon ECS.

AppSpec fichiers sur une plate-forme AWS Lambda informatique

Pour les applications de plate-forme de calcul AWS Lambda, le AppSpec fichier est utilisé pour CodeDeploy déterminer :

  • Quelle version de la fonction Lambda déployer.

  • Quelles fonctions Lambda utiliser comme tests de validation.

Un AppSpec fichier peut être au format YAML ou au format JSON. Vous pouvez également saisir le contenu d'un AppSpec fichier directement dans CodeDeploy la console lorsque vous créez un déploiement.

AppSpec fichiers sur une plate-forme informatique EC2/sur site

Si votre application utilise la plate-forme de calcul EC2/on-premises, le AppSpec fichier doit être un fichier au format YAML nommé appspec.yml et il doit être placé à la racine de la structure de répertoires du code source de l'application. Dans le cas contraire, les déploiements échouent. Il est utilisé CodeDeploy pour déterminer :

  • Ce qu'il doit installer sur vos instances à partir de la révision de votre application dans Amazon S3 ou GitHub.

  • Quels hooks d'événement de cycle de vie exécuter en réponse à des événements de cycle de vie du déploiement.

Une fois AppSpec le fichier terminé, vous le regroupez, avec le contenu à déployer, dans un fichier d'archive (zip, tar ou tar compressé). Pour plus d’informations, consultez Travailler avec les révisions d'applications pour CodeDeploy.

Note

Les formats de fichier d'archive tar et tar compressé (.tar et .tar.gz) ne sont pas pris en charge pour les instances Windows Server.

Une fois que vous avez un fichier d'archive groupé (connu CodeDeploy sous le nom de révision), vous le chargez dans un bucket Amazon S3 ou un référentiel Git. Ensuite, vous utilisez CodeDeploy pour déployer la révision. Pour obtenir des instructions, veuillez consulter Créez un déploiement avec CodeDeploy.

Le fichier appspec.yml pour un déploiement de plate-forme de calcul EC2/sur site est enregistré dans le répertoire racine de votre révision. Pour plus d’informations, consultez Ajouter un AppSpec fichier pour un déploiement EC2/sur site et Planifier une révision pour CodeDeploy.

AppSpec Espacement des fichiers

Voici le format correct pour l'espacement des AppSpec fichiers. Les chiffres entre crochets indiquent le nombre d'espaces qui doivent figurer entre les éléments. Par exemple, [4] cela signifie insérer quatre espaces entre les éléments. CodeDeploy génère une erreur qui peut être difficile à déboguer si les emplacements et le nombre d'espaces dans un AppSpec fichier ne sont pas corrects.

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

Voici un exemple de AppSpec fichier correctement espacé :

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

Pour plus d'informations sur l'espacement, consultez la spécification YAML.