AWSTOE run 명령에 대한 입력 구성 - EC2 Image Builder

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWSTOE run 명령에 대한 입력 구성

명령의 명령줄 입력을 간소화하기 위해 파일 확장자가 있는 JSON 형식 입력 구성 파일에 명령 매개 변수 및 옵션에 대한 설정을 포함할 수 있습니다. AWSTOE run .json AWSTOE 다음 위치 중 하나에서 파일을 읽을 수 있습니다.

  • 로컬 파일 경로(./config.json).

  • S3 버킷(s3://<bucket-path>/<bucket-name>/config.json).

run 명령을 입력하면 --config 파라미터를 사용하여 입력 구성 파일을 지정할 수 있습니다. 예:

awstoe run --config <file-path>/config.json
구성 파일

입력 구성 JSON 파일에는 run 명령 파라미터 및 옵션을 통해 직접 제공할 수 있는 모든 설정에 대한 키-값 쌍이 포함되어 있습니다. 입력 구성 파일과 run 명령 모두에서 설정을 파라미터 또는 옵션으로 지정하는 경우, 다음과 같은 우선 순위 규칙이 적용됩니다.

우선 순위 규칙
  1. 매개 변수 또는 옵션을 통해 run 명령에 직접 제공되는 설정은 동일한 설정에 대해 입력 구성 파일에 정의된 모든 값을 재정의합니다. AWS CLI

  2. 입력 구성 파일의 설정이 구성 요소 기본값보다 우선합니다.

  3. 구성 요소 문서에 다른 설정이 전달되지 않은 경우, 기본값이 있으면 기본값을 적용할 수 있습니다.

이 규칙에는 문서와 파라미터라는 두 가지 예외가 있습니다. 이러한 설정은 입력 구성과 명령 파라미터에서 다르게 작동합니다. 입력 구성 파일을 사용하는 경우, 이러한 파라미터를 run 명령에 직접 지정해서는 안 됩니다. 이렇게 하면 오류가 발생합니다.

구성 요소 설정

입력 구성 파일에는 다음 설정이 포함되어 있습니다. 파일을 간소화하기 위해, 필요하지 않은 선택적 설정은 생략할 수 있습니다. 달리 명시되지 않는 한 모든 설정은 선택 사항입니다.

  • cwIgnoreFailures(Boolean) — 로그의 로깅 실패를 무시합니다. CloudWatch

  • cwLogGroup(문자열) — CloudWatch 로그의 LogGroup 이름입니다.

  • cwLogRegion(문자열) — CloudWatch 로그에 적용되는 AWS 지역입니다.

  • cwLogStream(문자열) — console.log 파일을 스트리밍할 AWSTOE 위치를 알려주는 CloudWatch 로그의 LogStream 이름입니다.

  • 문서 3 BucketOwner (문자열) - S3 URI 기반 문서에 대한 버킷 소유자의 계정 ID입니다.

  • 문서 (객체 배열, 필수) - 명령이 실행 중인 YAML 구성 요소 문서를 나타내는 JSON 객체 배열입니다. AWSTOE run 구성 요소 문서를 하나 이상 지정해야 합니다.

    각 객체는 다음과 같은 필드로 구성됩니다.

    • path(문자열, 필수) - YAML 구성 요소 문서의 파일 위치입니다. 이 값은 다음 중 하나여야 합니다.

      • 로컬 파일 경로 (. /component-doc-example.yaml).

      • S3 URI(s3://bucket/key).

      • Image Builder 컴포넌트 빌드 버전 ARN (arn:aws:imagebuilder:us-west- 2:123456789012:component/ /2021.12.02/1). my-example-component

    • parameters(객체 배열) - 키-값 쌍 객체의 배열로, 각 객체는 구성 요소 문서를 실행할 때 run 명령이 전달하는 구성 요소별 파라미터를 나타냅니다. 구성 요소의 경우 파라미터는 선택 사항입니다. 컴포넌트 문서에는 파라미터가 정의되어 있을 수도 있고 그렇지 않을 수도 있습니다.

      각 객체는 다음과 같은 필드로 구성됩니다.

      • name(문자열, 필수) - 구성 요소 파라미터의 이름입니다.

      • value(문자열, 필수) - 명명된 파라미터에 대해 구성 요소 문서에 전달할 값입니다.

      구성 요소 파라미터에 대한 자세한 내용은 사용자 지정 구성 요소 문서의 변수 사용 페이지의 파라미터 섹션을 참조하세요.

  • executonId(문자열) - 현재 run 명령 실행에 적용되는 고유 ID입니다. 이 ID는 해당 파일을 고유하게 식별하고 현재 명령 실행에 연결하기 위해 출력 및 로그 파일 이름에 포함됩니다. 이 설정을 생략하면 GUID가 생성됩니다. AWSTOE

  • LogDirectory (문자열) - 이 명령 실행의 모든 로그 파일을 AWSTOE 저장하는 대상 디렉터리입니다. 기본적으로 이 파일은 TOE_<DATETIME>_<EXECUTIONID> 디렉터리에 위치합니다. 로그 디렉터리를 지정하지 않는 경우 는 현재 작업 디렉터리 (.) 를 AWSTOE 사용합니다.

  • LogS3 BucketName (문자열) - 구성 요소 로그가 Amazon S3에 저장되어 있는 경우 (권장), 구성 요소 애플리케이션 로그를 이 파라미터에 이름이 지정된 S3 버킷에 AWSTOE 업로드합니다.

  • LogS3 BucketOwner (문자열) - 구성 요소 로그가 Amazon S3에 저장되어 있는 경우 (권장), 이 ID는 로그 파일을 AWSTOE 쓰는 버킷의 소유자 계정 ID입니다.

  • LogS3 KeyPrefix (문자열) - 구성 요소 로그가 Amazon S3에 저장되는 경우 (권장), 이 접두사는 버킷 내 로그 위치의 S3 객체 키 접두사입니다.

  • parameters(객체 배열) - 현재 run 명령 실행에 포함된 모든 구성 요소에 전체적으로 적용되는 파라미터를 나타내는 키-값 쌍 객체의 배열입니다.

    • name(문자열, 필수) - 글로벌 파라미터의 이름입니다.

    • value(문자열, 필수) - 명명된 파라미터에 대해 모든 구성 요소 문서에 전달할 값입니다.

  • phase(문자열) - YAML 구성 요소 문서에서 실행할 단계를 지정하는 쉼표로 구분된 목록입니다. 구성 요소 문서에 추가 단계가 포함된 경우, 해당 단계는 실행되지 않습니다.

  • StateDirectory(문자열) - 상태 추적 파일이 저장되는 파일 경로입니다.

  • trace(부울) - 콘솔에 대한 자세한 로깅을 활성화합니다.

sampledoc.yamlconversation-intro.yaml 예제는 두 구성 요소 문서, buildtest 단계를 실행하는 입력 구성 파일을 보여줍니다. 각 구성 요소 문서에는 자체에만 적용되는 파라미터가 있으며 두 문서 모두 하나의 공유 파라미터를 사용합니다. project 파라미터는 두 컴포넌트 문서에 모두 적용됩니다.

{ "documents": [ { "path": "<file path>/awstoe/sampledoc.yaml>", "parameters": [ { "name": "dayofweek", "value": "Monday" } ] }, { "path": "<file path>/awstoe/conversation-intro.yaml>", "parameters": [ { "name": "greeting", "value": "Hello, HAL." } ] } ], "phases": "build,test", "parameters": [ { "name": "project", "value": "examples" } ], "cwLogGroup": "<log_group_name>", "cwLogStream": "<log_stream_name>", "documentS3BucketOwner": "<owner_aws_account_number>", "executionId": "<id_number>", "logDirectory": "<local_directory_path>", "logS3BucketName": "<bucket_name_for_log_files>", "logS3KeyPrefix": "<key_prefix_for_log_files>", "logS3BucketOwner": "<owner_aws_account_number>" }