View a markdown version of this page

Modifier une définition de tâche Amazon ECS - Amazon CodeCatalyst

Amazon n' CodeCatalyst est plus ouvert aux nouveaux clients. Les clients existants peuvent continuer à utiliser le service normalement. Pour de plus amples informations, veuillez consulter Comment effectuer une migration depuis CodeCatalyst.

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.

Modifier une définition de tâche Amazon ECS

Cette section explique comment mettre à jour le image champ dans un fichier de définition de tâches Amazon Elastic Container Service (Amazon ECS) à l'aide d'un CodeCatalyst flux de travail. Pour ce faire, vous devez ajouter l'action de définition de tâche Render Amazon ECS à votre flux de travail. Cette action met à jour le champ image du fichier de définition de tâche avec un nom d'image Docker fourni par votre flux de travail lors de l'exécution.

Note

Vous pouvez également utiliser cette action pour mettre à jour le environment champ de la définition de tâche avec des variables d'environnement.

Quand utiliser cette action

Utilisez-le si votre flux de travail crée et étiquette une image Docker avec un contenu dynamique, tel qu'un identifiant de validation ou un horodatage.

N'utilisez pas cette action si votre fichier de définition de tâche contient une valeur d'image qui reste toujours la même. Dans ce cas, vous pouvez saisir manuellement le nom de votre image dans le fichier de définition des tâches.

Fonctionnement de l'action « Rendre la définition des tâches Amazon ECS »

Vous devez utiliser l'action de définition de tâche Render Amazon ECS avec les actions de génération et de déploiement vers Amazon ECS dans votre flux de travail. Ensemble, ces actions fonctionnent comme suit :

  1. L'action de génération crée votre image Docker et lui attribue un nom, un ID de validation, un horodatage ou tout autre contenu dynamique. Par exemple, votre action de création peut ressembler à ceci :

    MyECSWorkflow Actions: BuildAction: Identifier: aws/build@v1 ... Configuration: Steps: # Build, tag, and push the Docker image... - Run: docker build -t MyDockerImage:${WorkflowSource.CommitId} . ...

    Dans le code précédent, la docker build -t directive indique de créer l'image Docker et de l'étiqueter avec l'ID de validation lors de l'exécution de l'action. Le nom de l'image générée peut ressembler à ceci :

    MyDockerImage:a37bd7e

  2. L'action de définition de tâche Render Amazon ECS ajoute le nom de l'image généré dynamiquement à votre fichier de définition de tâche, comme suit : MyDockerImage:a37bd7e

    { "executionRoleArn": "arn:aws:iam::account_ID:role/codecatalyst-ecs-task-execution-role", "containerDefinitions": [ { "name": "codecatalyst-ecs-container", "image": MyDockerImage:a37bd7e, "essential": true, ... "portMappings": [ { "hostPort": 80, "protocol": "tcp", "containerPort": 80 } ] } ], ... }

    En option, vous pouvez également demander à l'action de définition de tâche Render Amazon ECS d'ajouter des variables d'environnement à la définition de tâche, comme suit :

    { "executionRoleArn": "arn:aws:iam::account_ID:role/codecatalyst-ecs-task-execution-role", "containerDefinitions": [ { "name": "codecatalyst-ecs-container", "image": MyDockerImage:a37bd7e, ... "environment": [ { name": "ECS_LOGLEVEL", value": "info" } ] } ], ... }

    Pour plus d'informations sur les variables d'environnement, consultez la section Spécification des variables d'environnement dans le manuel Amazon Elastic Container Service Developer Guide.

  3. L'action Déployer sur Amazon ECS enregistre le fichier de définition de tâche mis à jour auprès d'Amazon ECS. L'enregistrement du fichier de définition de tâche mis à jour permet de déployer la nouvelle image MyDockerImage:a37bd7e dans Amazon ECS.

Image d'exécution utilisée par l'action « Rendre la définition de tâche Amazon ECS »

L'action de définition de tâche Render Amazon ECS s'exécute sur une image de novembre 2022. Pour de plus amples informations, veuillez consulter Images actives.