ecspresso advent calendar 2020 day 9 - wait
-- no-wait에서 수행된 작업이 완료될 때까지 기다리는wait 명령
앞서
deploy
,rollback
,refresh
명령항에서 설명한 바와 같이ecspresso는 ECS 서비스 상태를 바꾸는 작업을 실행한 후 기본적으로 ECS 서비스의 상태가 안정될 때까지 대기한다.설정 파일(config.yaml)에서 지정한 시간 초과 전에 대기하고 불안정하면 명령 실행에 실패(exit1)합니다.ECS 서비스 상태가 불안정한 것을 방지하기 위해 ECS 서비스 상태를 변경하는 작업을 수행하고 즉시 종료하기 위해 각 명령은
--no-wait
옵션을 실시하였다.CI/CD 환경 등에서 자동 디버깅을 수행하는 등 작업 프로세스를 장시간 차단하지 않으려는 요구 사항에 해당합니다.--no-wait
에서 실행한 뒤 ECS 서비스의 또 다른 안정된 상태를 기다리기 위해 ecspresso wait
명령을 준비했다.wait 명령 옵션
$ ecspresso wait --help
usage: ecspresso wait
wait until service stable
Flags:
--help Show context-sensitive help (also try --help-long and --help-man).
--config=CONFIG config file
--debug enable debug log
wait
명령에는 특정한 옵션이 없습니다.wait 명령 설치
wait
명령의 실현은 ECS 서비스의 실행 방법에 따라 다르다.스크롤 프로그램(기본값)
서비스 정의
deploymentController.type
는 ECS
의 경우입니다.특별한 처리 방법을 지정하지 않으면 ECS 기본 스크롤 처리가 수행됩니다.aws-sdk-go의 ecs.WaitUntilServicesStable를 호출하여
wait
를 실현하였다.AWS CodeDeploy를 통한 디버깅의 경우
서비스 정의
deploymentController.type
는 CODE_DEPLOY
의 경우입니다.AWS Code Deploy를 통해 depro를 진행하는 방법에 대해서는 17일째 설명돼 있다.aws-sdk-gocodedeploy.WaitUntilDeploymentSuccessful를 호출하여 실현합니다.
deployment Controller는 EXTERNAL의 경우입니다.
외부 프로그램 집필 기간(2020년-12년)에는 지원하지 않는다.
wait
뿐만 아니라 deploy
명령도 지원되지 않습니다.10일째에는 파일의 서비스/퀘스트 정의를 설정하고 실행 중인 서비스/퀘스트 정의 상태 차이를 표시하는 방법을 설명합니다.
Reference
이 문제에 관하여(ecspresso advent calendar 2020 day 9 - wait), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/fujiwara/articles/ecspresso-20201209텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)