Modifier une définition de ECS tâche Amazon - Amazon 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 ECS tâche Amazon

Cette section explique comment mettre à jour le image champ dans un fichier de définition de tâche Amazon Elastic Container Service (AmazonECS) à l'aide d'un CodeCatalyst flux de travail. Pour ce faire, vous devez ajouter l'action de définition de ECS tâche Render Amazon à 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 définition de tâche avec des variables d'environnement.

Quand utiliser cette action

Utilisez-le si vous disposez d'un flux de travail qui crée et balise une image Docker avec du 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 de tâche.

Comment fonctionne l'action « Render la définition des ECS tâches Amazon »

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

  1. L'action de création crée votre image Docker et l'étiquette avec un nom, un identifiant de validation, un horodatage ou un 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 ECS tâche Render Amazon ajoute le nom de l'image générée 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 } ] } ], ... }

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

    { "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'ECSaction Deploy to Amazon enregistre le fichier de définition de tâche mis à jour auprès d'AmazonECS. L'enregistrement du fichier de définition de tâche mis à jour déploie la nouvelle image sur AmazonECS. MyDockerImage:a37bd7e

Image d'exécution utilisée par l'action « Render Amazon ECS task definition »

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