CircleaCI에서 AWS ECS의 스케줄러 컨테이너를 덮어쓰는 방법

2369 단어 AWSCircleCIECStech

추기

  • Amazon Event Bridge를 통해 스케줄 작업을 설정하면 최신 수정 버전
  • 을 자동으로 참조합니다.
  • 참조: https://dev.classmethod.jp/articles/ecs-schedule-eventbridge/
  • 전제 조건

  • CircleaCI의 Orbs를 사용하기 위해 CircleaCI 버전이 2.1 이후를 전제로
  • jobs 설정


    jobs: update-ecs-scheduled-task: executor: aws-cli/default steps: - checkout - aws-cli/setup - run: name: update ECS Scheduled Task command: | aws events put-targets \ --rule {更新するルールの名前} \ --targets "[ { \"Id\": \"$TARGET_ID\", \"Arn\": \"$ECS_CLUSTER_ARN\", \"RoleArn\": \"$ROLE_ARN\", \"Input\": \"{ \\\"containerOverrides\\\": [{ \\\"name\\\": \\\"上書きするコンテナの名前\\\", \\\"command\\\": [\\\"実行するコマンド(スペース区切り)\\\",\\\"実行するコマンド(スペース区切り)\\\"] }] }\", \"EcsParameters\": { \"TaskDefinitionArn\": \"タスク定義のArn\" } } ]"
    
  • 실행 명령(스페이스 바 구분자)은 작업 정의에서 명령을 실행할 때bundle,exec,rails,db:migrate 명령을 스페이스 바로 구분하는 명령
  • 을 말합니다.

    보완(GUI를 통한 매개 변수 확인 방법)

  • 업데이트 규칙의 이름
  • ECS→클래스→이 퀘스트가 이동하는 클래스→퀘스트의 스케줄링→시간표 규칙의 명칭
  • $TARGET_ID
  • ECS → 분류 → 이 작업이 이동하는 분류 선택 → 작업의 스케줄링 → 업데이트된 시간표 → 목표의 시간표 → 목표 이름
  • $ECS_CLUSTER_ARN
  • ECS→클러스터→Cluster ARN
  • $ROLE_ARN
  • ECS → 분류 → 이 작업이 이동하는 분류 선택 → 작업의 스케줄링 → 업데이트된 시간표 → 목표의 시간표 → 목표 이름 → 목표 역할
  • 대상 역할을 조사한 Arn
  • IAM→롤러→상응하는 목표 롤러→롤러 ARN
  • 컨테이너의 이름 덮어쓰기
  • ECS → 분류 → 이 작업이 이동하는 분류 선택 → 작업의 스케줄링 → 업데이트된 시간표 → 목표의 시간표 → 목표 이름 → 작업 정의
  • ECS→퀘스트 정의→상응하는 퀘스트 정의→업데이트 전 버전→용기의 정의→용기 이름
  • 참고 문헌

  • https://github.com/aws/aws-cli/issues/2760#issuecomment-364837638
  • https://circleci.com/orbs/registry/orb/circleci/aws-cli
  • https://docs.aws.amazon.com/cli/latest/reference/events/put-targets.html
  • 좋은 웹페이지 즐겨찾기