Travailler avec l' CodeDeploy agent - 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.

Travailler avec l' CodeDeploy agent

L' AWS CodeDeploy agent est un progiciel qui, une fois installé et configuré sur une instance, permet à cette instance d'être utilisée dans CodeDeploy des déploiements.

AWS prend en charge la dernière version mineure de l' CodeDeploy agent. Actuellement, la dernière version mineure est 1.7.x.

Note

L' CodeDeploy agent n'est requis que si vous déployez sur une plate-forme informatique EC2/sur site. L'agent n'est pas requis pour les déploiements qui utilisent la plateforme de calcul Amazon ECS ou AWS Lambda.

Un fichier de configuration est placé sur l'instance lorsque l'agent ∿ est installé. Ce fichier est utilisé pour spécifier la manière dont l'agent fonctionne. Ce fichier de configuration spécifie les chemins de répertoire et les autres paramètres AWS CodeDeploy à utiliser lorsqu'il interagit avec l'instance. Vous pouvez modifier certaines options de configuration dans ce fichier. Pour plus d'informations sur l'utilisation du fichier de configuration de l' CodeDeploy agent, consultezCodeDeploy référence de configuration de l'agent.

Pour plus d'informations sur l'utilisation de l' CodeDeploy agent, telles que les étapes d'installation, de mise à jour et de vérification des versions, consultezGestion des opérations des CodeDeploy agents.

Systèmes d'exploitation pris en charge par l' CodeDeploy agent

Systèmes d'exploitation Amazon EC2 AMI pris en charge

L' CodeDeploy agent a été testé sur les systèmes d'exploitation Amazon EC2 AMI suivants :

  • Amazon Linux 2023 (ARM, x86)

  • Amazon Linux 2 (ARM, x86)

  • Microsoft Windows Server 2022, 2019

  • Red Hat Enterprise Linux (RHEL) 9.x, 8.x, 7.x

  • Serveur Ubuntu 22,04 LTS, 20,04 LTS, 18,04 LTS, 16,04 LTS

L' CodeDeploy agent est disponible en open source pour que vous puissiez l'adapter à vos besoins. Il peut être utilisé avec d'autres systèmes d'exploitation AMI Amazon EC2. Pour plus d'informations, accédez au référentiel des CodeDeploy agents dans GitHub.

Systèmes d'exploitation sur site pris en charge

L' CodeDeploy agent a été testé sur les systèmes d'exploitation locaux suivants :

  • Microsoft Windows Server 2022, 2019

  • Red Hat Enterprise Linux (RHEL) 9.x, 8.x, 7.x

  • Serveur Ubuntu 22.04 LTS, 20.04 LTS

L' CodeDeploy agent est disponible en open source pour que vous puissiez l'adapter à vos besoins. Il peut être utilisé avec d'autres systèmes d'exploitation d'instance sur site. Pour plus d'informations, accédez au référentiel des CodeDeploy agents dans GitHub.

Protocole de communication et port pour l' CodeDeploy agent

L' CodeDeploy agent communique avec le trafic sortant via le protocole HTTPS via le port 443.

Lorsque l' CodeDeploy agent s'exécute sur une instance EC2, il utilise le point de terminaison des métadonnées EC2 pour récupérer les informations relatives à l'instance. Découvrez-en plus sur la limitation et l'octroi de l'accès au service des métadonnées d'instance.

Historique des versions de l' CodeDeployagent

Vos instances doivent exécuter une version prise en charge de l' CodeDeploy agent. La version minimale actuellement prise en charge est 1.7.x.

Note

Nous vous recommandons d'utiliser la dernière version de l' CodeDeploy agent. Si vous rencontrez des problèmes, effectuez la mise à jour vers la dernière version avant de contacter le AWS Support. Pour plus d'informations sur la mise à niveau, consultezMettre à jour l' CodeDeploy agent.

Le tableau suivant répertorie toutes les versions de l' CodeDeploy agent ainsi que les fonctionnalités et améliorations incluses dans chaque version.

Version Date de publication Détails

1.7.0

6 mars 2024

Ajouté : un paramètre :disable_imds_v1: de configuration dans le fichier de configuration de l' CodeDeploy agent. Utilisez ce paramètre pour désactiver le retour à IMDSv1 en cas d'erreur IMDSv2. La valeur par défaut est false (active le repli). Pour plus d'informations, consultez la référence de configuration de CodeDeploy l'agent.

Ajouté : Support pour le système d'exploitation Red Hat Enterprise Linux 9 (RHEL 9).

Ajouté : Support pour les versions 3.1 et 3.2 de Ruby sur Ubuntu Server.

Corrigé : L' CodeDeploy agent génère désormais une erreur conviviale si le fichier de configuration de l' CodeDeploy agent ne parvient pas à se charger.

Modifié : mise à niveau de Ruby vers la version 2.7.8-1 dans l' CodeDeploy agent pour Windows.

1.6.0

30 mars 2023

Ajouté : Support pour Ruby 3.1, 3.2.

Ajouté : Support pour Amazon Linux 2023.

Ajouté : Support pour Windows Server 2022.

Modifié : le paramètre par défaut de verbose est désormais false pour les instances Windows Server. Pour continuer à imprimer les messages de débogage dans les fichiers journaux sous Windows, vous devez verbose définir true sur.

Supprimé : Support pour Windows Server 2016 et Windows Server 2012 R2.

Supprimé : Support pour Amazon Linux 2018.03.x.

1.5.0

3 mars 2023

Ajouté : Support pour Ruby 3.

Ajouté : Support pour Ubuntu 22.04.

Corrigé : le redémarrage de l' CodeDeploy agent peu après le démarrage entraînait son blocage.

Modifié : L' CodeDeploy agent échoue désormais au déploiement d'un hôte au démarrage de l'agent si le service de l'agent redémarre de façon inattendue lors de l'exécution d'un script hook. Ce correctif vous permet d'éviter d'attendre le délai d'expiration de 70 minutes avant de réessayer un déploiement.

Avis d'obsolescence : CodeDeploy l'agent 1.5.0 est la dernière version compatible avec Windows Server 2016 et Windows Server 2012 R2.

Supprimé : Support de l' CodeDeployagent sur Ubuntu 14.04 LTS, Windows Server 2008 R2 et Windows Server 2008 R2 32 bits.

1.4.1

6 décembre 2022

Corrigé : vulnérabilité de sécurité liée à la journalisation.

Amélioration : amélioration de la journalisation lors de l'interrogation de la commande hôte.

1.4.0

31 août 2022

Ajouté : Support pour Red Hat Enterprise Linux 8.

Ajouté : Support pour les longs chemins de fichiers sur l' CodeDeploy agent pour Windows. Pour activer les longs chemins de fichier, vous devez définir la clé de registre Windows appropriée, puis redémarrer votre agent. Pour plus d’informations, consultez Les longs chemins de fichier provoquent des erreurs « Aucun fichier ou répertoire de ce type ».

Correction : problème lié à l'opération de décompression lorsque le disque était plein. L' CodeDeploy agent détecte désormais le code de sortie 50 du dézip indiquant un disque plein, supprime les fichiers partiellement extraits et déclenche une exception pour signaler une défaillance au CodeDeploy serveur. Le message d'erreur est visible sous la forme d'un message d'erreur lié à un événement du cycle de vie, et le déploiement au niveau de l'hôte s'arrête sans être bloqué ni expiration du délai imparti.

Corrigé : un problème qui provoquait l'échec de l'agent.

Corrigé : problème à cause duquel les hameçons expiraient en cas de course difficile. Les hooks sans script se poursuivront désormais et ne provoqueront plus d'échecs ni de délais d'attente.

Modifié : le update script du bin répertoire de l' CodeDeploy agent a été supprimé car il n'est plus utilisé.

Modifié : L' CodeDeploy agent pour Windows Server intègre désormais Ruby 2.7.

Modifié : de nouvelles variables d'environnement ont été ajoutées, destinées à être utilisées par les scripts hook en fonction de la source du bundle de déploiement (Amazon S3 ou GitHub).

Pour plus d’informations, consultez Disponibilité des variables d'environnement pour les hooks.

Important

Avis d'obsolescence : l' CodeDeployagent 1.4.0 est la dernière version qui inclura des programmes d'installation pour Windows Server 32 bits.

Avis d'obsolescence : CodeDeploy l'agent 1.4.0 est la dernière version compatible avec Windows Server 2008 R2.

Supprimé : Support de l' CodeDeploy agent sur les AMI Amazon EC2 suivantes : Amazon Linux 2014.09, 2016.03, 2016.09 et 2017.03.

1.3.2

6 mai 2021

Important

CodeDeploy l'agent 1.3.2 résout le problème CVE-2018-1000201 qui affecte les hôtes Windows exécutant l'agent. Le CVE cite ruby-ffi, qui est une dépendance de l'agent. CodeDeploy Si votre agent a été installé avec Amazon EC2 Systems Manager (SSM) et qu'il est configuré pour être mis à jour automatiquement, aucune action n'est requise. Dans le cas contraire, une action est requise pour mettre à jour manuellement l'agent. Pour mettre à niveau l'agent, suivez les instructions de la section Mettre à jour l' CodeDeploy agent sous Windows Server.

Correction : problème lors de l'installation de l' CodeDeploy agent sur Ubuntu 20.04 et versions ultérieures.

Corrigé : un problème intermittent survenait lors de l'extraction de fichiers compressés car les chemins relatifs n'étaient pas gérés correctement.

Ajouté : Support AWS PrivateLink et points de terminaison VPC pour les instances Windows.

Ajouté : améliorations des AppSpec fichiers, comme décrit ci-dessous.

  • Vous pouvez désormais spécifier un nom de fichier personnalisé pour le AppSpec fichier lors de la création d'un déploiement local. Pour plus d’informations, consultez Création d'un déploiement local.

  • Le AppSpec fichier peut désormais avoir une extension de .yaml fichier.

  • Vous pouvez désormais remplacer les fichiers déployés à l'aide d'un nouveau file_exists_behavior paramètre facultatif dans le AppSpec fichier. Pour plus d’informations, consultez AppSpec section « fichiers » (déploiements EC2/sur site uniquement).

Mise à niveau : utilise CodeDeploy désormais le AWS SDK pour Ruby 3.0.

1.3.1

22 décembre 2020

Correction : problème de la version 1.3.0 qui empêchait le démarrage des instances locales.

1.3.0

10 novembre 2020

Important

Cette version est obsolète.

Corrigé : suppression d'un certificat expiré qui n'était plus utilisé.

Corrigé : suppression du message d'invite du script de désinstallation de l'agent utilisé par AWS Systems Manager, ce qui facilite la rétrogradation d'un hôte ou d'un parc vers une version précédente de l'agent.

1.2.1

23 septembre 2020

Modifié : AWS SDK for Ruby dépendance améliorée de la v2 à la v3.

Ajouté : Support pour IMDSv2. Inclut une solution de repli silencieuse vers IMDSv1 en cas d'échec des requêtes HTTP IMDSv2.

Modifié : mise à jour des dépendances Rake et Rubyzip pour les correctifs de sécurité.

Corrigé : assurez-vous qu'un fichier PID vide renvoie l'état de No CodeDeploy Agent Running et nettoie le fichier PID au démarrage de l'agent.

1.1.2

4 août 2020

Ajouté : Support pour Ubuntu Server 19.10 et 20.04.

Remarque : La version 19.10 a atteint sa end-of-life date limite et n'est plus prise en charge par Ubuntu ou CodeDeploy.

Ajouté : améliorations de l'efficacité de la mémoire pour Linux et Ubuntu afin de libérer la mémoire réservée plus rapidement.

Ajouté : compatibilité avec le « nettoyage silencieux » de Windows Server, qui empêchait l'agent de répondre dans certains cas.

Ajouté : Ignorez les répertoires non vides pendant le nettoyage pour éviter les échecs lors du déploiement.

Ajouté : Support pour la zone AWS locale de Los Angeles (LA).

Ajouté : Extrayez l'AZ des métadonnées de l'instance pour assurer la compatibilité avec les Zones AWS Locales.

Ajouté : Les utilisateurs peuvent désormais fournir leurs archives dans des sous-répertoires et ne sont pas tenus de les stocker dans le répertoire racine.

Ajouté : Un problème avec Rubyzip susceptible d'entraîner des fuites de mémoire a été détecté. Mise à jour de la commande unzip pour essayer d'abord d'utiliser un utilitaire de décompression installé sur le système avant d'utiliser Rubyzip.

Ajouté : :enable_auth_policy: en tant que paramètre de configuration de l'agent.

Modifié : les avertissements de décompression sont désormais ignorés, les déploiements se poursuivront donc.

1.1.0

30 juin 2020

Modifié : la gestion des versions de l' CodeDeployagent suit désormais la convention de version standard de Ruby.

Ajouté : nouveau paramètre de commande d'installation et de mise à jour pour permettre l'installation d'une la version spécifique de l'agent à partir de la ligne de commande.

Supprimé : suppression de l' CodeDeploy agent Auto Updater pour Linux et Ubuntu. Pour configurer les mises à jour automatiques de l' CodeDeploy agent, voir Installer l' CodeDeploy agent à l'aide de AWS Systems Manager.

1.0.1.1597

15 novembre 2018

Amélioration : CodeDeploy supporte Ubuntu 18.04.

Amélioration : CodeDeploy supporte Ruby 2.5.

Amélioration : CodeDeploy prend en charge les points de terminaison FIPS. Pour de plus amples informations sur les points de terminaison FIPS, veuillez consulter Présentation de FIPS 140-2. Pour les points de terminaison pouvant être utilisés avec CodeBuild, voir CodeDeployRégions et points de terminaison.

1.0.1.1518

12 juin 2018

Amélioration : correction d'un problème qui provoquait une erreur lorsque l' CodeDeploy agent était fermé alors qu'il acceptait des demandes de sondage.

Amélioration : Ajout d'une fonctionnalité de suivi du déploiement qui empêche la fermeture de l' CodeDeploy agent lorsqu'un déploiement est en cours.

Amélioration : Amélioration des performances lors de la suppression des fichiers.

1.0.1.1458

6 mars 2018

Remarque : Cette version n'est plus prise en charge. Si vous utilisez cette version, vos déploiements peuvent échouer.

Amélioration : Amélioration des validations de certificat pour prendre en charge un nombre plus important d'autorités approuvées.

Amélioration : correction d'un problème qui provoquait l'échec de la CLI locale lors d'un déploiement incluant un événement BeforeInstall du cycle de vie.

Amélioration : correction d'un problème qui pouvait entraîner l'échec d'un déploiement actif lors de la mise à jour de l' CodeDeploy agent.

1.0.1.1352

16 novembre 2017

Remarque : Cette version n'est plus prise en charge. Si vous utilisez cette version, vos déploiements peuvent échouer.

Fonctionnalité : introduction d'une nouvelle fonctionnalité permettant de tester et de déboguer un déploiement EC2/sur site sur une machine ou une instance locale sur laquelle l' CodeDeploy agent est installé.

1.0.1.1106

16 mai 2017

Remarque : Cette version n'est plus prise en charge. Si vous utilisez cette version, vos déploiements peuvent échouer.

Fonctionnalité : Introduction de la nouvelle prise en charge de la gestion des contenus dans un emplacement cible qui ne faisait pas partie de la révision de l'application depuis le déploiement réussi le plus récent. Les options de déploiement pour le contenu existant incluent désormais la conservation du contenu, le remplacement du contenu ou l'échec du déploiement.

Amélioration : rendu l' CodeDeploy agent compatible avec la version 2.9.2 du AWS SDK for Ruby (aws-sdk-core2.9.2).

1.0.1.1095

29 mars 2017

Remarque : Cette version n'est plus prise en charge. Si vous utilisez cette version, vos déploiements peuvent échouer.

Amélioration : introduction du support pour l' CodeDeploy agent dans la région de Chine (Pékin).

Amélioration : Puppet a été activé pour s'exécuter sur des instances Windows Server lorsqu'il est invoqué par un hook d'événements du cycle de vie.

Amélioration: Amélioration de la gestion des untar opérations.

1.0.1.1067 6 janvier 2017

Remarque : Cette version n'est plus prise en charge. Si vous utilisez cette version, vos déploiements peuvent échouer.

Amélioration : révision de nombreux messages d'erreur afin de décrire plus précisément l'origine de l'échec du déploiement.

Amélioration : correction d'un problème qui empêchait l' CodeDeploy agent d'identifier la révision d'application correcte à déployer lors de certains déploiements.

Amélioration : rétablissement de l'utilisation de pushd et popd avant et après l'opération untar.

1.0.1.1045 21 novembre 2016

Remarque : Cette version n'est plus prise en charge. Si vous utilisez cette version, vos déploiements peuvent échouer.

Amélioration : rendu l' CodeDeploy agent compatible avec la version 2.6.11 du AWS SDK for Ruby (aws-sdk-core2.6.11).

1.0.1.1037 19 octobre 2016

Remarque : Cette version n'est plus prise en charge. Si vous utilisez cette version, vos déploiements peuvent échouer.

L' CodeDeploy agent pour les instances Amazon Linux, RHEL et Ubuntu Server a été mis à jour avec les modifications suivantes. Pour les instances Windows Server, la dernière version reste 1.0.1.998.

Amélioration : l'agent peut désormais déterminer quelle version de Ruby est installée sur une instance afin de s'en servir pour appeler le script codedeploy-agent.

1.0.1.1011.1 17 août 2016

Remarque : Cette version n'est plus prise en charge. Si vous utilisez cette version, vos déploiements peuvent échouer.

Amélioration : suppression des modifications apportées par la version 1.0.1.1011 en raison de problèmes liés à la prise en charge du shell. Cette version de l'agent équivaut d'un point de vue fonctionnel à la version 1.0.1.998 publiée le 11 juillet 2016.

1.0.1.1011 15 août 2016

Remarque : Cette version n'est plus prise en charge. Si vous utilisez cette version, vos déploiements peuvent échouer.

L' CodeDeploy agent pour les instances Amazon Linux, RHEL et Ubuntu Server a été mis à jour avec les modifications suivantes. Pour les instances Windows Server, la dernière version reste 1.0.1.998.

Fonctionnalité : Ajout de la prise en charge de l'appel de l' CodeDeploy agent à l'aide du shell bash sur les systèmes d'exploitation sur lesquels le système d'initialisation systemd est utilisé.

Amélioration : prise en charge de toutes les versions de Ruby 2.x dans l' CodeDeploy agent et dans le programme de mise à jour de l' CodeDeploy agent. Les CodeDeploy agents mis à jour ne dépendent plus uniquement de Ruby 2.0. (Ruby 2.0 est toujours requis pour les versions deb et rpm du programme d'installation de l' CodeDeploy agent.)
1.0.1.998 11 juillet 2016

Remarque : Cette version n'est plus prise en charge. Si vous utilisez cette version, vos déploiements peuvent échouer.

Amélioration : correction de la prise en charge de l'exécution de l' CodeDeploy agent avec des profils utilisateur autres que root. La variable nommée USER est remplacée par CODEDEPLOY_USER pour éviter les conflits avec les variables environnementales.

1.0.1.966 16 juin 2016

Remarque : Cette version n'est plus prise en charge. Si vous utilisez cette version, vos déploiements peuvent échouer.

Fonctionnalité : Ajout de la prise en charge de l'exécution de l' CodeDeploy agent avec des profils utilisateur autres que root.

Amélioration : support fixe permettant de spécifier le nombre de révisions d'applications que l' CodeDeployagent doit archiver pour un groupe de déploiement.

Amélioration : rendu l' CodeDeploy agent compatible avec la version 2.3 du AWS SDK for Ruby (aws-sdk-core 2.3).

Amélioration : Correction des problèmes liés à l'encodage UTF-8 au cours des déploiements.

Amélioration : meilleure précision lors de l'identification des noms de processus.

1.0.1.950 24 mars 2016

Remarque : Cette version n'est plus prise en charge. Si vous utilisez cette version, vos déploiements peuvent échouer.

Fonctionnalité : Ajout de la prise en charge du serveur proxy d'installation.

Amélioration : le script d'installation a été mis à jour afin de ne pas télécharger l' CodeDeploy agent si la dernière version est déjà installée.

1.0.1.934 11 février 2016

Remarque : Cette version n'est plus prise en charge. Si vous utilisez cette version, vos déploiements peuvent échouer.

Fonctionnalité : Ajout de la prise en charge de la spécification du nombre de révisions d'applications que l' CodeDeployagent doit archiver pour un groupe de déploiement.

1.0.1.880 11 janvier 2016

Remarque : Cette version n'est plus prise en charge et peut entraîner l'échec des déploiements.

Amélioration : rendu l' CodeDeploy agent compatible avec la version 2.2 du AWS SDK for Ruby (aws-sdk-core 2.2). La version 2.1.2 est encore prise en charge.

1.0.1.854 17 novembre 2015

Remarque : Cette version n'est plus prise en charge. Si vous utilisez cette version, vos déploiements peuvent échouer.

Fonctionnalité : Introduction de la prise en charge pour l'algorithme de hachage SHA-256.

Fonctionnalité : Introduction de la prise en charge du suivi des versions dans les fichiers .version.

Fonctionnalité : Mise à disposition de l'ID de groupe de déploiement via l'utilisation d'une variable d'environnement.

Amélioration : Ajout de la prise en charge de la surveillance des journaux des CodeDeploy agents à l'aide d'Amazon CloudWatch Logs.

Pour obtenir des informations connexes, consultez les ressources suivantes :

Pour un historique des versions de l' CodeDeploy agent, consultez le référentiel des versions sur GitHub.

Gérer le CodeDeploy processus

Toutes les distributions Linux de l' CodeDeploy agent (rpm et deb) utilisent systemd par défaut pour gérer le processus de l'agent.

Cependant, les distributions rpm et deb sont fournies avec des scripts de démarrage résidant à l'adresse/etc/init.d/codedeploy-agent. Selon la distribution que vous utilisez, lorsque vous utilisez une commande telle quesudo service codedeploy-agent restart, les scripts /etc/init.d peuvent être exécutés pour lancer le processus de l'agent au lieu d'systemdautoriser la gestion du processus. /etc/init.dIl n'est pas souhaitable d'exécuter des scripts sur.

Pour éviter ce problème, pour les systèmes compatibles, systemd nous recommandons d'utiliser l'systemctlutilitaire pour toutes les opérations de l'agent au lieu d'utiliser la service commande.

Par exemple, pour redémarrer l' CodeDeploy agent, utilisez sudo systemctl restart codedeploy-agent au lieu de la commande équivalente avec l'serviceutilitaire.

Révision de l'application et nettoyage des fichiers journaux

L' CodeDeploy agent archive les révisions et les fichiers journaux sur les instances. L' CodeDeploy agent nettoie ces artefacts pour économiser de l'espace disque.

Journaux de déploiement des révisions d'applications : vous pouvez utiliser l'option:max_revisions : dans le fichier de configuration de l'agent pour spécifier le nombre de révisions d'applications à archiver en saisissant un entier positif. CodeDeploy archive également les fichiers journaux de ces révisions. Tous les autres sont supprimés, à l'exception du fichier journal du dernier déploiement réussi. Ce fichier journal est toujours conservé, même si le nombre de déploiements ayant échoué dépasse le nombre de révisions conservées. Si aucune valeur n'est spécifiée, CodeDeploy conserve les cinq révisions les plus récentes en plus de la révision actuellement déployée.

CodeDeploy journaux : pour les instances Amazon Linux, Ubuntu Server et RHEL, l' CodeDeploy agent fait pivoter les fichiers journaux sous le /var/log/aws/codedeploy-agent dossier. Le fichier journal est permuté tous les jours à 00:00:00 (heure de l'instance). Les fichiers journaux sont supprimés après sept jours. Le modèle d'affectation de noms des fichiers journaux permutés est codedeploy-agent.YYYYMMDD.log.

Fichiers installés par l' CodeDeploy agent

L' CodeDeploy agent stocke les révisions, l'historique des déploiements et les scripts de déploiement dans son répertoire racine sur une instance. Le nom et l'emplacement par défaut de cet annuaire sont :

'/opt/codedeploy-agent/deployment-root'pour les instances Amazon Linux, Ubuntu Server et RHEL.

'C:\ProgramData\Amazon\CodeDeploy'pour les instances de Windows Server.

Vous pouvez utiliser le paramètre root_dir dans le fichier de configuration de l' CodeDeploy agent pour configurer le nom et l'emplacement du répertoire. Pour plus d’informations, consultez CodeDeploy référence de configuration de l'agent.

Ci-dessous figure un exemple de la structure du fichier et de l'annuaire sous l'annuaire racine. La structure suppose qu'il existe un nombre N de groupes de déploiement et que chaque groupe de déploiement comprend N déploiements.

|--deployment-root/ |-- deployment group 1 ID | |-- deployment 1 ID | | |-- Contents and logs of the deployment's revision | |-- deployment 2 ID | | |-- Contents and logs of the deployment's revision | |-- deployment N ID | | |-- Contents and logs of the deployment's revision |-- deployment group 2 ID | |-- deployment 1 ID | | |-- bundle.tar | | |-- deployment-archive | | | | -- contents of the deployment's revision | | |-- logs | | | | -- scripts.log | |-- deployment 2 ID | | |-- bundle.tar | | |-- deployment-archive | | | | -- contents of the deployment's revision | | |-- logs | | | | -- scripts.log | |-- deployment N ID | | |-- bundle.tar | | |-- deployment-archive | | | | -- contents of the deployment's revision | | |-- logs | | | | -- scripts.log |-- deployment group N ID | |-- deployment 1 ID | | |-- Contents and logs of the deployment's revision | |-- deployment 2 ID | | |-- Contents and logs of the deployment's revision | |-- deployment N ID | | |-- Contents and logs of the deployment's revision |-- deployment-instructions | |-- [deployment group 1 ID]_cleanup | |-- [deployment group 2 ID]_cleanup | |-- [deployment group N ID]_cleanup | |-- [deployment group 1 ID]_install.json | |-- [deployment group 2 ID]_install.json | |-- [deployment group N ID]_install.json | |-- [deployment group 1 ID]_last_successful_install | |-- [deployment group 2 ID]_last_successful_install | |-- [deployment group N ID]_last_successful_install | |-- [deployment group 1 ID]_most_recent_install | |-- [deployment group 2 ID]_most_recent_install | |-- [deployment group N ID]_most_recent_install |-- deployment-logs | |-- codedeploy-agent-deployments.log

  • Les dossiers relatifs aux ID de groupes de déploiement représentent chacun de vos groupes de déploiement. Le nom d'un annuaire de groupes de déploiement est son ID (par exemple, acde1916-9099-7caf-fd21-012345abcdef). Un annuaire de groupe de déploiement abrite un sous-annuaire pour chaque tentative de déploiement dans ce groupe.

    Vous pouvez utiliser la batch-get-deploymentscommande pour trouver un ID de groupe de déploiement.

  • Les dossiers relatifs aux ID de déploiement représentent chacun des déploiements d'un groupe. Le nom d'un annuaire de déploiement est son ID. Chaque dossier contient les éléments suivants :

    • bundle.tar, un fichier compressé hébergeant le contenu de la révision de déploiement. Utilisez un utilitaire de décompression zip si vous souhaitez afficher la révision.

    • deployment-archive, un annuaire comportant le contenu de la révision de déploiement.

    • logs, un annuaire contenant un fichier scripts.log. Ce fichier répertorie les résultats de tous les scripts spécifiés dans le AppSpec fichier de déploiement.

    Si vous souhaitez rechercher le dossier d'un déploiement mais que vous ne connaissez pas son ID de déploiement ou son ID de groupe de déploiement, vous pouvez utiliser la AWS CodeDeploy console ou le AWS CLI pour les trouver. Pour plus d’informations, consultez Afficher les détails CodeDeploy du déploiement .

    Le nombre maximal par défaut de déploiements pouvant être archivés dans un groupe de déploiements est cinq. Lorsque ce nombre est atteint, les déploiements ultérieurs écrasent l'archive la plus ancienne. Vous pouvez utiliser le paramètre max_revisions dans le fichier de configuration de l' CodeDeploy agent pour modifier la valeur par défaut. Pour plus d’informations, consultez CodeDeploy référence de configuration de l'agent.

    Note

    SI vous souhaitez récupérer de l'espace de disque dur utilisé par les déploiements archivés, mettez à jour le paramètre max_revisions sur une valeur plus faible, comme 1 ou 2. Le prochain déploiement écrasant les déploiements archivés, le nombre est égal à la valeur spécifiée.

  • deployment-instructions comporte quatre fichiers texte pour chacun des groupes de déploiement :

    • [Deployment Group ID]-cleanup, un fichier texte avec une version d'annulation de chaque commande exécutée durant un déploiement. Comme nom de fichier, citons par exemple acde1916-9099-7caf-fd21-012345abcdef-cleanup.

    • [Deployment Group ID]-install.json, un fichier JSON créé durant le déploiement le plus récent. Il contient les commandes exécutées durant le déploiement. Comme nom de fichier, citons par exemple acde1916-9099-7caf-fd21-012345abcdef-install.json.

    • [Deployment Group ID]_last_successfull_install, un fichier texte répertoriant l'annuaire d'archivage du dernier déploiement réussi. Ce fichier est créé lorsque l' CodeDeploy agent a copié tous les fichiers de l'application de déploiement sur l'instance. Il est utilisé par l' CodeDeploy agent lors du prochain déploiement pour déterminer les BeforeInstall scripts ApplicationStop et les scripts à exécuter. Comme nom de fichier, citons par exemple acde1916-9099-7caf-fd21-012345abcdef_last_successfull_install.

    • [Deployment Group ID]_most_recent_install, un fichier texte qui répertorie le nom de l'annuaire d'archivage du déploiement le plus récent. Ce fichier est créé une fois que les fichiers du déploiement ont été téléchargés. Le fichier [deployment group ID]_last_successfull_install file est créé après ce fichier, une fois que les fichiers téléchargés ont été copiés vers leur destination finale. Comme nom de fichier, citons par exemple acde1916-9099-7caf-fd21-012345abcdef_most_recent_install.

  • deployment-logs comporte les fichiers journaux suivants :

    • Les fichiers codedeploy-agent.yyyymmdd.log sont créés pour chacun des jours au cours desquels un déploiement est exécuté. Chaque fichier journal comporte des informations sur les déploiements de la journée. Ces fichiers peuvent s'avérer utiles pour le débogage de problèmes, liés par exemple aux autorisations. Le fichier journal est initialement nommé codedeploy-agent.log. Le jour suivant, la date de ses déploiements est insérée dans le nom du fichier. Par exemple, si nous sommes aujourd'hui le 3 janvier 2018, les données sur l'ensemble des déploiements de la journée sont disponibles dans codedeploy-agent.log. Demain, le 4 janvier 2018, le fichier journal est renommé codedeploy-agent.20180103.log.

    • codedeploy-agent-deployments.log compile le contenu des scripts.log fichiers pour chaque déploiement. Les fichiers scripts.log sont hébergés dans le sous-dossier logs de chaque dossier Deployment ID. Les entrées de ce fichier sont précédées d'un ID de déploiement. Par exemple, « [d-ABCDEF123]LifecycleEvent - BeforeInstall » peut être écrit durant le déploiement avec un ID de d-ABCDEF123. Lorsque codedeploy-agent-deployments.log sa taille maximale est atteinte, l' CodeDeploy agent continue d'y écrire tout en supprimant l'ancien contenu.