액션 YAML 정의 빌드 및 테스트 - 아마존 CodeCatalyst

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

액션 YAML 정의 빌드 및 테스트

다음은 빌드 및 테스트 작업에 대한 YAML 정의입니다. 두 액션의 YAML 속성이 매우 유사하기 때문에 두 액션에 대한 참조가 하나 있습니다.

이 액션 정의는 광범위한 워크플로 정의 파일 내에 섹션으로 존재합니다. 이 파일에 대한 자세한 내용은 워크플로우 YAML 정의을 참조합니다.

다음 코드에서 YAML 속성을 선택하면 해당 속성에 대한 설명이 표시됩니다.

참고

다음에 나오는 대부분의 YAML 속성에는 시각적 편집기에 해당하는 UI 요소가 있습니다. UI 요소를 검색하려면 Ctrl+F를 사용합니다. 요소는 관련 YAML 속성과 함께 나열됩니다.

# The workflow definition starts here. # See 최상위 속성 for details. Name: MyWorkflow SchemaVersion: 1.0 Actions: # The action definition starts here. action-name: Identifier: aws/build@v1 | aws/managed-test@v1 DependsOn: - dependent-action-name-1 Compute: Type: EC2 | Lambda Fleet: fleet-name Timeout: timeout-minutes Environment: Name: environment-name Connections: - Name: account-connection-name Role: iam-role-name Caching: FileCaching: key-name-1: Path: file1.txt RestoreKeys: - restore-key-1 Inputs: Sources: - source-name-1 - source-name-2 Artifacts: - artifact-name Variables: - Name: variable-name-1 Value: variable-value-1 - Name: variable-name-2 Value: variable-value-2 Outputs: Artifacts: - Name: output-artifact-1 Files: - build-output/artifact-1.jar - "build-output/build*" - Name: output-artifact-2 Files: - build-output/artifact-2.1.jar - build-output/artifact-2.2.jar Variables: - variable-name-1 - variable-name-2 AutoDiscoverReports: Enabled: true | false ReportNamePrefix: AutoDiscovered IncludePaths: - "**/*" ExcludePaths: - node_modules/cdk/junit.xml SuccessCriteria: PassRate: percent LineCoverage: percent BranchCoverage: percent Vulnerabilities: Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL Number: whole-number StaticAnalysisBug: Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL Number: whole-number StaticAnalysisSecurity: Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL Number: whole-number StaticAnalysisQuality: Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL Number: whole-number StaticAnalysisFinding: Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL Number: whole-number Reports: report-name-1: Format: format IncludePaths: - "*.xml" ExcludePaths: - report2.xml - report3.xml SuccessCriteria: PassRate: percent LineCoverage: percent BranchCoverage: percent Vulnerabilities: Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL Number: whole-number StaticAnalysisBug: Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL Number: whole-number StaticAnalysisSecurity: Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL Number: whole-number StaticAnalysisQuality: Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL Number: whole-number StaticAnalysisFinding: Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL Number: whole-number Configuration: Container: Registry: registry Image: image Steps: - Run: "step 1" - Run: "step 2" Packages: NpmConfiguration: PackageRegistries: - PackagesRepository: package-repository Scopes: - "@scope" ExportAuthorizationToken: true | false

액션 이름

(필수)

액션의 이름을 지정합니다. 모든 작업 이름은 워크플로 내에서 고유해야 합니다. 액션 이름은 영숫자 (a-z, A-Z, 0-9), 하이픈 (-), 밑줄 (_) 로 제한됩니다. 공백은 허용되지 않습니다. 액션 이름에 특수 문자와 공백을 사용할 때는 따옴표를 사용할 수 없습니다.

해당 UI: 구성 탭/ 작업 이름

Identifier

(액션 이름/) Identifier

액션을 식별합니다. 버전을 변경하려는 경우가 아니면 이 속성을 변경하지 마십시오. 자세한 정보는 액션의 메이저, 마이너 또는 패치 버전 지정을 참조하세요.

빌드 aws/build@v1 작업에 사용합니다.

테스트 aws/managed-test@v1 작업에 사용합니다.

해당 UI: 워크플로 다이어그램/액션 이름/ AWS/build @v1 |AWS/매니지드 테스트 @v1 라벨

DependsOn

(액션 이름/) DependsOn

(선택 사항)

이 액션을 실행하기 위해 성공적으로 실행되어야 하는 액션, 액션 그룹 또는 게이트를 지정하십시오.

'depends on' 기능에 대한 자세한 내용은 을 참조하십시오. 다른 액션에 종속되도록 액션을 구성하기

해당 UI: 입력 탭/ 종속 - 선택사항

Compute

(액션 이름/) Compute

(선택 사항)

워크플로 작업을 실행하는 데 사용되는 컴퓨팅 엔진. 워크플로 수준 또는 작업 수준에서 컴퓨팅을 지정할 수 있지만 둘 다에서 지정할 수는 없습니다. 워크플로 수준에서 지정된 경우 컴퓨팅 구성은 워크플로에 정의된 모든 작업에 적용됩니다. 워크플로 수준에서는 동일한 인스턴스에서 여러 작업을 실행할 수도 있습니다. 자세한 정보는 작업 간 컴퓨팅 공유을 참조하세요.

해당 UI: 없음

Type

(액션 이름 유형/Compute/)

(포함된 Compute 경우 필수)

컴퓨팅 엔진 유형. 다음 값 중 하나를 사용할 수 있습니다.

  • EC2 (비주얼 에디터) 또는 EC2 (YAML 에디터)

    작업 실행 시 유연성을 위해 최적화되었습니다.

  • Lambda (비주얼 에디터) Lambda 또는 (YAML 에디터)

    작업 시작 속도를 최적화했습니다.

컴퓨팅 유형에 대한 자세한 정보는 컴퓨팅 유형을 참고하세요.

해당 UI: 구성 탭/ 컴퓨팅 유형

Fleet

(액션 /Compute/ Fleet이름)

(선택 사항)

워크플로 또는 워크플로 작업을 실행할 컴퓨터 또는 플릿을 지정합니다. 온디맨드 플릿을 사용하면 작업이 시작되면 워크플로에서 필요한 리소스를 프로비저닝하고 작업이 완료되면 시스템이 폐기됩니다. 온디맨드 플릿의 예:,. Linux.x86-64.Large Linux.x86-64.XLarge 온디맨드 플릿에 대한 자세한 내용은 을 참조하십시오. 온디맨드 플릿 속성

프로비전된 플릿을 사용하면 워크플로 작업을 실행할 전용 컴퓨터 세트를 구성합니다. 이러한 시스템은 유휴 상태로 유지되므로 작업을 즉시 처리할 수 있습니다. 프로비전된 플릿에 대한 자세한 내용은 을 참조하십시오. 프로비저닝된 플릿 속성

생략된 경우 기본값은 Fleet 입니다. Linux.x86-64.Large

해당 UI: 구성 탭/ 컴퓨팅 플릿

Timeout

(액션 이름/) Timeout

(선택 사항)

작업이 CodeCatalyst 종료되기 전에 작업을 실행할 수 있는 시간을 분 (YAML 편집기) 또는 시간과 분 (비주얼 편집기) 단위로 지정합니다. 최소값은 5분이고 최대값은 에 설명되어 있습니다. 워크플로우 할당량 기본 타임아웃은 최대 타임아웃과 동일합니다.

해당 UI: 구성 탭/ 타임아웃 - 선택 사항

Environment

(액션 이름/) Environment

(선택 사항)

액션에 사용할 CodeCatalyst 환경을 지정합니다. 작업은 선택한 환경에 지정된 AWS 계정 및 선택적 Amazon VPC에 연결됩니다. 작업은 환경에 지정된 기본 IAM 역할을 사용하여 에 연결하고 AWS 계정, Amazon VPC 연결에 지정된 IAM 역할을 사용하여 Amazon VPC에 연결합니다.

참고

기본 IAM 역할에 작업에 필요한 권한이 없는 경우 다른 역할을 사용하도록 작업을 구성할 수 있습니다. 자세한 정보는 작업에 다른 IAM 역할 할당을 참조하세요.

환경에 대한 자세한 내용은 환경을 AWS 계정 포함한 VPC에 배포 CodeCatalyst 및 을 참조하십시오. 환경 생성

해당 UI: 구성 탭/ 환경

Name

(액션 /Environment/ Name이름)

(선택 사항)

작업과 연결하려는 기존 환경의 이름을 지정합니다.

해당 UI: 구성 탭/ 환경

Connections

(액션 /Environment/ Connections이름)

(선택 사항)

액션과 연결할 계정 연결을 지정합니다. 에서 최대 1개의 계정 연결을 지정할 수 Environment 있습니다.

계정 연결을 지정하지 않은 경우:

  • 작업에는 CodeCatalyst 콘솔 환경에 지정된 AWS 계정 연결 및 기본 IAM 역할이 사용됩니다. 환경에 계정 연결 및 기본 IAM 역할을 추가하는 방법에 대한 자세한 내용은 을 참조하십시오. 환경 생성

  • 기본 IAM 역할에는 작업에 필요한 정책 및 권한이 포함되어야 합니다. 이러한 정책 및 권한이 무엇인지 확인하려면 작업의 YAML 정의 설명서에서 역할 속성에 대한 설명을 참조하십시오.

계정 연결에 대한 자세한 내용은 을 참조하십시오연결된 AWS 리소스에 대한 액세스 허용 AWS 계정. 환경에 계정 연결을 추가하는 방법에 대한 자세한 내용은 을 참조하십시오환경 생성.

해당 UI: 구성 탭/환경/내 환경에는 무엇이 있습니까? /점 3개 메뉴/ 역할 전환

Name

(액션 이름) /Environment/Connections/ Name

(포함된 Connections 경우 필수)

계정 연결 이름을 지정합니다.

해당 UI: 구성 탭/환경/내 환경에는 무엇이 있나요? /점 3개 메뉴/ 역할 전환

Role

(액션 이름) /Environment/Connections/ Role

(포함된 Connections 경우 필수)

Amazon S3 및 Amazon ECR과 같은 AWS 서비스에 액세스하고 이를 운영하기 위해 이 작업이 사용하는 IAM 역할의 이름을 지정합니다. 스페이스의 AWS 계정 연결에 이 역할이 추가되었는지 확인하십시오. 계정 연결에 IAM 역할을 추가하려면 을 참조하십시오계정 연결에 IAM 역할 추가.

IAM 역할을 지정하지 않으면 콘솔 환경에 나열된 기본 IAM 역할이 작업에 사용됩니다. CodeCatalyst 환경에서 기본 역할을 사용하는 경우 해당 역할에 다음 정책이 적용되는지 확인하십시오.

참고

이 작업에 CodeCatalystWorkflowDevelopmentRole-spaceName 역할을 사용할 수 있습니다. 이에 대한 자세한 내용은 계정 및 스페이스에 대한 CodeCatalystWorkflowDevelopmentRole-spaceName역할 만들기 섹션을 참조하세요. CodeCatalystWorkflowDevelopmentRole-spaceName역할에는 보안 위험을 초래할 수 있는 전체 액세스 권한이 있다는 점을 이해하세요. 보안이 덜 우려되는 자습서 및 시나리오에서만 이 역할을 사용하는 것이 좋습니다.

주의

권한을 빌드 및 테스트 작업에 필요한 권한으로 제한하세요. 더 광범위한 권한이 있는 역할을 사용하면 보안 위험이 발생할 수 있습니다.

해당 UI: 구성 탭/환경/내 환경에는 무엇이 있나요? /점 3개 메뉴/ 역할 전환

Caching

(액션 이름/) Caching

(선택 사항)

디스크에 있는 파일을 저장하고 후속 워크플로우 실행 시 해당 캐시에서 복원할 캐시를 지정할 수 있는 섹션입니다.

파일 캐싱에 대한 자세한 내용은 을 참조하십시오. 워크플로우 실행 간 파일 캐싱

해당 UI: 구성 탭/ 파일 캐싱 - 선택 사항

FileCaching

(액션 이름) /Caching/ FileCaching

(선택 사항)

캐시 시퀀스의 구성을 지정하는 섹션입니다.

해당 UI: 구성 탭/파일 캐싱 - 선택 사항/ 캐시 추가

키 이름-1

(액션-네임 키-네임-1) /Caching/FileCaching/

(선택 사항)

기본 캐시 속성 이름을 지정합니다. 캐시 속성 이름은 워크플로우 내에서 고유해야 합니다. 각 작업에는 최대 5개의 항목이 포함될 수 FileCaching 있습니다.

해당 UI: 구성 탭/파일 캐싱 - 선택 사항/캐시 추가/키

Path

(/Caching/FileCaching/Path액션-이름 키-이름-1/)

(선택 사항)

캐시의 관련 경로를 지정합니다.

해당 UI: 구성 탭/파일 캐싱 - 선택 사항/캐시 추가/ 경로

RestoreKeys

(/Caching/FileCaching/RestoreKeys액션-이름 키-이름-1/)

(선택 사항)

기본 캐시 속성을 찾을 수 없을 때 폴백으로 사용할 복원 키를 지정합니다. 복원 키 이름은 워크플로우 내에서 고유해야 합니다. 각 캐시에는 최대 5개의 항목을 포함할 수 RestoreKeys 있습니다.

해당 UI: 구성 탭/파일 캐싱 - 선택 사항/캐시 추가/복원 키 - 선택 사항

Inputs

(액션 이름/) Inputs

(선택 사항)

Inputs 섹션에서는 워크플로우 실행 중에 작업에 필요한 데이터를 정의합니다.

참고

빌드 작업 또는 테스트 작업당 최대 4개의 입력 (소스 1개와 아티팩트 3개) 이 허용됩니다. 변수는 이 총계에 포함되지 않습니다.

다른 입력 (예: 소스 및 아티팩트) 에 있는 파일을 참조해야 하는 경우 소스 입력은 기본 입력이고 아티팩트는 보조 입력입니다. 보조 입력의 파일에 대한 참조에는 기본 입력과 구분하기 위해 특수 접두사가 사용됩니다. 자세한 내용은 예: 여러 아티팩트의 파일 참조단원을 참조하세요.

해당 UI: 입력 탭

Sources

(액션 이름 /Inputs/ Sources)

(선택 사항)

작업에 필요한 소스 리포지토리를 나타내는 레이블을 지정합니다. 현재 지원되는 유일한 레이블은 WorkflowSource 워크플로 정의 파일이 저장되는 소스 저장소를 나타내는 레이블입니다.

소스를 생략하는 경우 아래에 입력 아티팩트를 하나 이상 지정해야 합니다. action-name/Inputs/Artifacts

소스에 대한 자세한 내용은 워크플로를 소스 리포지토리에 연결 단원을 참조하십시오.

해당 UI: 없음

Artifacts - input

(액션 이름 /Inputs/ Artifacts)

(선택 사항)

이 작업에 대한 입력으로 제공하려는 이전 액션의 아티팩트를 지정합니다. 이러한 아티팩트는 이전 작업에서 출력 아티팩트로 이미 정의되어 있어야 합니다.

입력 아티팩트를 지정하지 않는 경우 에서 하나 이상의 소스 리포지토리를 지정해야 합니다. action-name/Inputs/Sources

예제를 포함한 아티팩트에 대한 자세한 내용은 을 참조하십시오. 아티팩트를 사용하여 워크플로의 작업 간 데이터 공유

참고

아티팩트 - 선택적 드롭다운 목록을 사용할 수 없거나 (시각적 편집기) YAML (YAML 편집기) 의 유효성을 검사할 때 오류가 발생하는 경우, 작업이 하나의 입력만 지원하기 때문일 수 있습니다. 이런 경우에는 소스 입력을 제거해 보세요.

해당 UI: 입력 탭/ 아티팩트 - 선택 사항

Variables - input

(액션 이름) /Inputs/ Variables

(선택 사항)

작업에 사용할 수 있도록 하려는 입력 변수를 정의하는 이름/값 쌍의 시퀀스를 지정합니다. 변수 이름은 영숫자 (a-z, A-Z, 0-9), 하이픈 (-), 밑줄 (_) 로 제한됩니다. 공백은 허용되지 않습니다. 변수 이름에 특수 문자와 공백을 사용할 때는 따옴표를 사용할 수 없습니다.

예제를 비롯한 변수에 대한 자세한 내용은 을 참조하십시오워크플로의 변수 구성 및 사용.

해당 UI: 입력 탭/ 변수 - 선택 사항

Outputs

(액션 이름/) Outputs

(선택 사항)

워크플로우 실행 중에 작업에 의해 출력되는 데이터를 정의합니다.

해당 UI: 출력

Artifacts - output

(액션 이름 /Outputs/ Artifacts)

(선택 사항)

액션으로 생성된 아티팩트의 이름을 지정합니다. 아티팩트 이름은 워크플로우 내에서 고유해야 하며 영숫자 (a-z, A-Z, 0-9) 와 밑줄 (_) 로 제한됩니다. 공백, 하이픈 (-) 및 기타 특수 문자는 사용할 수 없습니다. 출력 아티팩트 이름에 공백, 하이픈 및 기타 특수 문자를 사용할 때는 따옴표를 사용할 수 없습니다.

예를 포함한 아티팩트에 대한 자세한 내용은 을 참조하십시오. 아티팩트를 사용하여 워크플로의 작업 간 데이터 공유

해당 UI: 출력 탭/ 아티팩트

Name

(액션 이름) /Outputs/Artifacts/ Name

(포함된 Artifacts - output 경우 필수)

액션으로 생성된 아티팩트의 이름을 지정합니다. 아티팩트 이름은 워크플로우 내에서 고유해야 하며 영숫자 (a-z, A-Z, 0-9) 와 밑줄 (_) 로 제한됩니다. 공백, 하이픈 (-) 및 기타 특수 문자는 사용할 수 없습니다. 출력 아티팩트 이름에 공백, 하이픈 및 기타 특수 문자를 사용할 때는 따옴표를 사용할 수 없습니다.

예를 포함한 아티팩트에 대한 자세한 내용은 을 참조하십시오. 아티팩트를 사용하여 워크플로의 작업 간 데이터 공유

해당 UI: 출력 탭/아티팩트/새 출력/빌드 아티팩트 이름

Files

(액션 이름) /Outputs/Artifacts/ Files

(포함된 Artifacts - output 경우 필수)

액션에 의해 출력되는 아티팩트에 CodeCatalyst 포함할 파일을 지정합니다. 이러한 파일은 워크플로 작업이 실행될 때 생성되며 소스 저장소에서도 사용할 수 있습니다. 파일 경로는 소스 리포지토리 또는 이전 작업의 아티팩트에 있을 수 있으며 소스 리포지토리 또는 아티팩트 루트를 기준으로 합니다. 글로브 패턴을 사용하여 경로를 지정할 수 있습니다. 예:

  • 빌드 위치 또는 소스 리포지토리 위치의 루트에 있는 단일 파일을 지정하려면 my-file.jar를 사용합니다..

  • 하위 디렉터리에 단일 파일을 지정하려면 directory/my-file.jar 또는 directory/subdirectory/my-file.jar를 사용합니다.

  • 모든 파일을 지정하려면 "**/*"를 사용합니다. ** glob 패턴은 임의의 수의 하위 디렉터리와 일치함을 나타냅니다.

  • directory라는 디렉터리에 있는 모든 파일 및 디렉터리를 지정하려면 "directory/**/*"를 사용합니다. ** glob 패턴은 임의의 수의 하위 디렉터리와 일치함을 나타냅니다.

  • directory라는 디렉터리의 모든 파일을 지정하되 해당 하위 디렉터리는 지정하지 않으려면 "directory/*"를 사용합니다.

참고

파일 경로에 별표 (*) 또는 기타 특수 문자가 하나 이상 포함된 경우 경로를 큰따옴표 () 로 묶으십시오. "" 특수 문자에 대한 자세한 내용은 을 참조하십시오. 구문 지침 및 규칙

예제를 포함한 아티팩트에 대한 자세한 내용은 을 참조하십시오아티팩트를 사용하여 워크플로의 작업 간 데이터 공유.

참고

파일을 찾을 아티팩트나 소스를 나타내는 접두사를 파일 경로에 추가해야 할 수도 있습니다. 자세한 내용은 소스 리포지토리의 파일 참조아티팩트의 파일 참조 섹션을 참조하세요.

해당 UI: 출력 탭/아티팩트/새 출력/빌드로 생성된 파일

Variables - output

(액션 이름) /Outputs/ Variables

(선택 사항)

후속 작업에서 사용할 수 있도록 액션에서 내보낼 변수를 지정합니다.

예제를 비롯한 변수에 대한 자세한 내용은 을 참조하십시오워크플로의 변수 구성 및 사용.

해당 UI: 출력 탭/변수/ 변수 추가

변수 이름-1

(액션 이름 변수 이름-1) /Outputs/Variables/

(선택 사항)

액션으로 내보내려는 변수의 이름을 지정합니다. 이 변수는 동일한 액션의 Inputs 또는 Steps 섹션에 이미 정의되어 있어야 합니다.

예제를 비롯한 변수에 대한 자세한 내용은 을 참조하십시오워크플로의 변수 구성 및 사용.

해당 UI: 출력 탭/변수/변수 추가/이름

AutoDiscoverReports

(액션 이름) /Outputs/ AutoDiscoverReports

(선택 사항)

자동 검색 기능의 구성을 정의합니다.

자동 CodeCatalyst 검색을 활성화하면 작업에 Inputs 전달된 모든 파일과 작업 자체에서 생성된 모든 파일을 검색하여 테스트, 코드 적용 범위 및 SCA (소프트웨어 구성 분석) 보고서를 찾습니다. 발견된 각 보고서에 대해 보고서를 보고서로 CodeCatalyst 변환합니다. CodeCatalyst CodeCatalyst 보고서는 CodeCatalyst 서비스에 완전히 통합된 보고서이며 콘솔을 통해 보고 조작할 수 있습니다. CodeCatalyst

참고

기본적으로 자동 검색 기능은 모든 파일을 검사합니다. 또는 속성을 사용하여 검사할 파일을 제한할 수 있습니다. IncludePaths ExcludePaths

해당 UI: 출력 탭/보고서/ 자동 검색 보고서

Enabled

(액션 이름) /Outputs/AutoDiscoverReports/ Enabled

(선택 사항)

자동 검색 기능을 활성화하거나 비활성화합니다.

유효한 값은 true 또는 false입니다.

생략된 경우 기본값은 Enabled 입니다. true

해당 UI: 출력 탭/보고서/ 자동 검색 보고서

ReportNamePrefix

(액션 이름) /Outputs/AutoDiscoverReports/ ReportNamePrefix

(AutoDiscoverReports포함되고 활성화된 경우 필수)

관련 보고서의 이름을 지정하려면 찾은 모든 보고서 CodeCatalyst 앞에 붙는 접두사를 지정하십시오. CodeCatalyst 예를 들어 접두사를 지정하고 두 개의 테스트 보고서를 CodeCatalyst 자동으로 검색하는 경우 관련 CodeCatalyst 보고서의 이름은 TestSuiteOne.xmlTestSuiteTwo.xml 로 지정됩니다. AutoDiscovered AutoDiscoveredTestSuiteOne AutoDiscoveredTestSuiteTwo

해당 UI: 출력 탭/보고서/ 접두사 이름

IncludePaths

(액션 이름) /Outputs/AutoDiscoverReports/ IncludePaths

Or

(액션 /Outputs/Reports/ 네임 리포트-이름-1/) IncludePaths

(AutoDiscoverReports포함되고 활성화된 경우 또는 포함된 경우 필수) Reports

원시 보고서를 검색할 때 CodeCatalyst 포함할 파일 및 파일 경로를 지정하십시오. 예를 들어"/test/report/*", 지정하는 경우 는 작업에 사용된 전체 빌드 이미지를 CodeCatalyst 검색하여 /test/report/* 디렉터리를 찾습니다. 해당 디렉토리를 찾으면 해당 디렉토리에서 보고서를 찾습니다. CodeCatalyst

참고

파일 경로에 별표 (*) 또는 기타 특수 문자가 하나 이상 포함된 경우 경로를 큰따옴표 () 로 묶으십시오. "" 특수 문자에 대한 자세한 내용은 을 참조하십시오. 구문 지침 및 규칙

이 속성을 생략하면 기본값은 입니다. 즉"**/*", 모든 경로의 모든 파일이 검색에 포함됩니다.

참고

수동으로 구성된 보고서의 경우 단일 IncludePaths 파일과 일치하는 글로브 패턴이어야 합니다.

해당 UI:

  • 출력 탭/보고서/보고서 자동 검색/경로 포함/제외/경로 포함

  • 출력 탭/보고서/보고서 수동 구성/보고서 이름-1 /경로 포함/제외/경로 포함

ExcludePaths

(/Outputs/AutoDiscoverReports/ExcludePaths액션 이름)

Or

(액션 /Outputs/Reports/ 네임 리포트-이름-1/) ExcludePaths

(선택 사항)

원시 보고서를 검색할 때 제외할 파일 및 파일 경로를 지정합니다. CodeCatalyst 예를 들어"/test/my-reports/**/*", 지정하는 경우 CodeCatalyst 는 /test/my-reports/ 디렉터리에 있는 파일을 검색하지 않습니다. 디렉터리의 모든 파일을 무시하려면 **/* glob 패턴을 사용하십시오.

참고

파일 경로에 별표 (*) 또는 기타 특수 문자가 하나 이상 포함된 경우 경로를 큰따옴표 () 로 묶으십시오. "" 특수 문자에 대한 자세한 내용은 을 참조하십시오. 구문 지침 및 규칙

해당 UI:

  • 출력 탭/보고서/보고서 자동 검색/경로 포함/제외/경로 제외

  • 출력 탭/보고서/보고서 수동 구성/보고서 이름-1 /경로 포함/제외/경로 제외

SuccessCriteria

(/Outputs/AutoDiscoverReports/SuccessCriteria액션 이름)

Or

(액션 /Outputs/Reports/ 네임 리포트-이름-1/) SuccessCriteria

(선택 사항)

테스트, 코드 적용 범위, 소프트웨어 구성 분석 (SCA) 및 정적 분석 (SA) 보고서의 성공 기준을 지정합니다.

자세한 정보는 보고서의 성공 기준 구성을 참조하세요.

해당 UI: 출력 탭/보고서/성공 기준

PassRate

(액션 이름) /Outputs/AutoDiscoverReports/SuccessCriteria/ PassRate

Or

(액션 /Outputs/Reports/ 네임 리포트-네임-1) /SuccessCriteria/ PassRate

(선택 사항)

테스트 보고서에 있는 테스트 중 통과해야 관련 CodeCatalyst 보고서가 통과된 것으로 표시되는 테스트의 비율을 지정합니다. 유효한 값에는 10진수가 포함됩니다. 예: 50, 60.5. 합격률 기준은 테스트 보고서에만 적용됩니다. 테스트 보고서에 대한 자세한 내용은 을 참조하십시오테스트 보고서.

해당 UI: 출력 탭/보고서/성공 기준/합격률

LineCoverage

(액션 이름) /Outputs/AutoDiscoverReports/SuccessCriteria/ LineCoverage

Or

(액션 /Outputs/Reports/ 네임 리포트-네임-1) /SuccessCriteria/ LineCoverage

(선택 사항)

관련 CodeCatalyst 보고서가 통과된 것으로 표시되기 위해 포함해야 하는 코드 커버리지 보고서의 줄 비율을 지정합니다. 유효한 값에는 10진수가 포함됩니다. 예: 50, 60.5. 라인 커버리지 기준은 코드 커버리지 보고서에만 적용됩니다. 코드 커버리지 보고서에 대한 자세한 내용은 을 참조하십시오코드 범위 보고서.

해당 UI: 출력 탭/보고서/성공 기준/회선 커버리지

BranchCoverage

(액션 이름) /Outputs/AutoDiscoverReports/SuccessCriteria/ BranchCoverage

Or

(액션 /Outputs/Reports/ 네임 리포트-네임-1) /SuccessCriteria/ BranchCoverage

(선택 사항)

관련 CodeCatalyst 보고서가 통과된 것으로 표시되기 위해 포함되어야 하는 코드 커버리지 보고서의 분기 비율을 지정하십시오. 유효한 값에는 10진수가 포함됩니다. 예: 50, 60.5. 브랜치 커버리지 기준은 코드 커버리지 보고서에만 적용됩니다. 코드 커버리지 보고서에 대한 자세한 내용은 을 참조하십시오코드 범위 보고서.

해당 UI: 출력 탭/보고서/성공 기준/브랜치 커버리지

Vulnerabilities

(액션 이름) /Outputs/AutoDiscoverReports/SuccessCriteria/ Vulnerabilities

Or

(액션 /Outputs/Reports/ 네임 리포트-네임-1) /SuccessCriteria/ Vulnerabilities

(선택 사항)

관련 보고서가 통과된 것으로 표시되도록 SCA 보고서에서 허용되는 최대 취약성 수와 심각도를 지정하십시오. CodeCatalyst 취약성을 지정하려면 다음을 지정해야 합니다.

  • 집계에 포함하려는 취약성의 최소 심각도. 가장 심각한 값부터 가장 심각하지 않은 값까지 유효한 값은,CRITICAL,, HIGH MEDIUMLOW, INFORMATIONAL 입니다.

    예를 들어HIGH, 선택하면 HIGH CRITICAL 취약성이 집계됩니다.

  • 허용하려는 지정된 심각도 내에서 허용되는 최대 취약성 수입니다. 이 수를 초과하면 CodeCatalyst 보고서가 실패로 표시됩니다. 유효한 값은 정수입니다.

취약성 기준은 SCA 보고서에만 적용됩니다. SCA 보고서에 대한 자세한 내용은 을 참조하십시오. 소프트웨어 구성 분석 보고서

최소 심각도를 지정하려면 Severity 속성을 사용하십시오. 최대 취약성 수를 지정하려면 Number 속성을 사용하십시오.

해당 UI: 출력 탭/보고서/성공 기준/취약성

StaticAnalysisBug

(액션 이름) /Outputs/AutoDiscoverReports/SuccessCriteria/ StaticAnalysisBug

Or

(액션 /Outputs/Reports/ 네임 리포트-네임-1) /SuccessCriteria/ StaticAnalysisBug

(선택 사항)

관련 CodeCatalyst 보고서가 통과된 것으로 표시되도록 SA 보고서에서 허용되는 최대 버그 수와 심각도를 지정하십시오. 버그를 지정하려면 다음을 지정해야 합니다.

  • 카운트에 포함하려는 버그의 최소 심각도. 가장 심각한 값부터 가장 심각하지 않은 값까지 유효한 값은CRITICAL,,HIGH, MEDIUMLOW, INFORMATIONAL 입니다.

    예를 들어HIGH, 선택하면 HIGH CRITICAL 버그가 집계됩니다.

  • 허용하려는 지정된 심각도의 최대 버그 수입니다. 이 숫자를 초과하면 CodeCatalyst 보고서가 실패로 표시됩니다. 유효한 값은 정수입니다.

버그 기준은 ESLint SA 보고서에만 적용됩니다 PyLint . SA 보고서에 대한 자세한 내용은 을 참조하십시오. 정적 분석 보고서

최소 심각도를 지정하려면 Severity 속성을 사용하십시오. 최대 취약성 수를 지정하려면 Number 속성을 사용하십시오.

해당 UI: 출력 탭/보고서/성공 기준/버그

StaticAnalysisSecurity

(액션 이름) /Outputs/AutoDiscoverReports/SuccessCriteria/ StaticAnalysisSecurity

Or

(액션 /Outputs/Reports/ 네임 리포트-네임-1) /SuccessCriteria/ StaticAnalysisSecurity

(선택 사항)

관련 보고서가 통과된 것으로 표시되도록 SA 보고서에서 허용되는 보안 취약성의 최대 수와 심각도를 지정하십시오. CodeCatalyst 보안 취약성을 지정하려면 다음을 지정해야 합니다.

  • 카운트에 포함하려는 보안 취약성의 최소 심각도. 가장 심각한 값부터 가장 심각하지 않은 값까지 유효한 값은,CRITICAL,, HIGH MEDIUMLOW, INFORMATIONAL 입니다.

    예를 들어HIGH, 선택하면 HIGH CRITICAL 보안 취약성이 집계됩니다.

  • 허용하려는 지정된 심각도의 최대 보안 취약성 수입니다. 이 수를 초과하면 CodeCatalyst 보고서가 실패로 표시됩니다. 유효한 값은 정수입니다.

보안 취약성 기준은 ESLint SA PyLint 보고서에만 적용됩니다. SA 보고서에 대한 자세한 내용은 을 참조하십시오. 정적 분석 보고서

최소 심각도를 지정하려면 Severity 속성을 사용하십시오. 최대 취약성 수를 지정하려면 Number 속성을 사용하십시오.

해당 UI: 출력 탭/보고서/성공 기준/보안 취약성

StaticAnalysisQuality

(액션 이름) /Outputs/AutoDiscoverReports/SuccessCriteria/ StaticAnalysisQuality

Or

(액션 /Outputs/Reports/ 네임 리포트-네임-1) /SuccessCriteria/ StaticAnalysisQuality

(선택 사항)

관련 CodeCatalyst 보고서가 통과된 것으로 표시되도록 SA 보고서에서 허용되는 품질 문제의 최대 수와 심각도를 지정하십시오. 품질 문제를 지정하려면 다음을 지정해야 합니다.

  • 집계에 포함하려는 품질 문제의 최소 심각도. 가장 심각한 값부터 가장 심각하지 않은 값까지 유효한 값은CRITICAL,,HIGH, MEDIUMLOW, INFORMATIONAL 입니다.

    예를 들어HIGH, 선택하면 HIGH CRITICAL 품질 문제가 집계됩니다.

  • 허용하려는 지정된 심각도의 품질 문제 최대 개수. 이 수를 초과하면 CodeCatalyst 보고서가 실패로 표시됩니다. 유효한 값은 정수입니다.

품질 문제 기준은 ESLint SA 보고서에만 적용됩니다 PyLint . SA 보고서에 대한 자세한 내용은 을 참조하십시오. 정적 분석 보고서

최소 심각도를 지정하려면 Severity 속성을 사용하십시오. 최대 취약성 수를 지정하려면 Number 속성을 사용하십시오.

해당 UI: 출력 탭/보고서/성공 기준/품질 문제

StaticAnalysisFinding

(액션 이름) /Outputs/AutoDiscoverReports/SuccessCriteria/ StaticAnalysisFinding

Or

(액션 /Outputs/Reports/ 네임 리포트-네임-1) /SuccessCriteria/ StaticAnalysisFinding

(선택 사항)

관련 CodeCatalyst 보고서를 통과로 표시하기 위해 SA 보고서에서 허용되는 최대 결과 수와 심각도를 지정하십시오. 결과를 지정하려면 다음을 지정해야 합니다.

  • 집계에 포함하려는 결과의 최소 심각도. 가장 심각한 값부터 가장 심각도가 낮은 값까지 유효한 값은CRITICAL,,HIGH, MEDIUMLOW, INFORMATIONAL 입니다.

    예를 들어 HIGHHIGH, 선택하면 CRITICAL 결과가 집계됩니다.

  • 허용하려는 지정된 심각도의 최대 검색 결과 수입니다. 이 수를 초과하면 CodeCatalyst 보고서가 실패로 표시됩니다. 유효한 값은 정수입니다.

결과는 SARIF SA 보고서에만 적용됩니다. SA 보고서에 대한 자세한 내용은 을 참조하십시오정적 분석 보고서.

최소 심각도를 지정하려면 Severity 속성을 사용하십시오. 최대 취약성 수를 지정하려면 Number 속성을 사용하십시오.

해당 UI: 출력 탭/보고서/성공 기준/결과

Reports

(액션 이름) /Outputs/ Reports

(선택 사항)

테스트 보고서의 구성을 지정하는 섹션.

해당 UI: 출력 탭/ 보고서

보고서 이름-1

(액션 이름 보고서 이름 1) /Outputs/Reports/

(포함된 경우 필수Reports)

원시 보고서에서 생성될 CodeCatalyst 보고서에 부여하려는 이름.

해당 UI: 출력 탭/보고서/보고서 수동 구성/보고서 이름

Format

(/Outputs/Reports/Format액션-이름 보고서-이름-1/)

(포함된 경우 필수Reports)

보고서에 사용하는 파일 형식을 지정하십시오. 가능한 값은 다음과 같습니다.

  • 테스트 보고서의 경우:

    • Cucumber JSON의 경우, 큐컴버 (비주얼 에디터) 또는 CUCUMBERJSON (YAML 에디터) 를 지정하십시오.

    • JUnit XML의 경우 JUnit (비주얼 편집기) 또는 JUNITXML (YAML 편집기) 를 지정합니다.

    • NUnit XML의 경우 NUnit (비주얼 편집기) 또는 NUNITXML (YAML 편집기) 를 지정합니다.

    • 유닛 3 XML의 경우 NUnit3 (비주얼 편집기) 또는 (YAML 편집기) 를 지정하십시오. NUNIT3XML

    • 비주얼 스튜디오 TRX의 경우 비주얼 스튜디오 TRX (비주얼 편집기) 또는 (YAML 편집기) 를 지정합니다. VISUALSTUDIOTRX

    • TestNG XML의 경우 TestNG (비주얼 편집기) 또는 TESTNGXML (YAML 편집기) 를 지정하십시오.

  • 코드 커버리지 보고서의 경우:

    • 클로버 XML의 경우 클로버 (비주얼 편집기) 또는 CLOVERXML (YAML 편집기) 를 지정하십시오.

    • Cobertura XML의 경우 Cobertura (비주얼 편집기) 또는 (YAML 편집기) 를 지정합니다. COBERTURAXML

    • JaCoCo XML의 경우 JaCoCo(비주얼 편집기) 또는 (YAML 편집기) 를 지정하십시오. JACOCOXML

    • SimpleCov 심플코브-json이 아닌 심플코브에서 생성된 JSON의 경우 심플코브 (비주얼 에디터) 또는 (YAML 편집기) 를 지정하십시오. SIMPLECOV

  • 소프트웨어 구성 분석 (SCA) 보고서의 경우:

    • SARIF의 경우 SARIF (비주얼 편집기) 또는 SARIFSCA (YAML 편집기) 를 지정하십시오.

해당 UI: 출력 탭/보고서/보고서 수동 구성/보고서 추가/구성/보고서 이름-1/보고서 유형 및 보고서 형식

Configuration

(액션 이름/) Configuration

(필수) 작업의 구성 속성을 정의할 수 있는 섹션입니다.

해당 UI: 구성

Container

(액션 이름 /Configuration/ Container)

(선택 사항)

액션이 처리를 완료하는 데 사용하는 Docker 이미지 또는 컨테이너를 지정합니다. 함께 CodeCatalyst 제공되는 활성 이미지 중 하나를 지정하거나 자체 이미지를 사용할 수 있습니다. 자체 이미지를 사용하기로 선택한 경우 Amazon ECR, Docker Hub 또는 다른 레지스트리에 있을 수 있습니다. Docker 이미지를 지정하지 않으면 작업은 활성 이미지 중 하나를 처리에 사용합니다. 기본적으로 사용되는 활성 이미지에 대한 자세한 내용은 을 참조하십시오활성 이미지.

Docker 이미지를 직접 지정하는 방법에 대한 자세한 내용은 을 참조하십시오액션에 사용자 지정 런타임 환경 Docker 이미지 할당.

해당 UI: 런타임 환경 Docker 이미지 - 선택 사항

Registry

(액션 /Configuration/Container/ Registry이름)

(포함된 Container 경우 필수)

이미지가 저장되는 레지스트리를 지정하십시오. 유효한 값으로는 다음이 포함됩니다.

  • CODECATALYST(YAML 편집기)

    이미지는 CodeCatalyst 레지스트리에 저장됩니다.

  • 도커 허브 (비주얼 에디터) 또는 DockerHub (YAML 에디터)

    이미지는 Docker Hub 이미지 레지스트리에 저장됩니다.

  • 기타 레지스트리 (비주얼 에디터) 또는 Other (YAML 에디터)

    이미지는 사용자 지정 이미지 레지스트리에 저장됩니다. 공개적으로 사용 가능한 모든 레지스트리를 사용할 수 있습니다.

  • Amazon 엘라스틱 컨테이너 레지스트리 (비주얼 에디터) 또는 ECR (YAML 에디터)

    이미지는 Amazon Elastic 컨테이너 레지스트리 이미지 리포지토리에 저장됩니다. Amazon ECR 리포지토리의 이미지를 사용하려면 이 작업을 수행하려면 Amazon ECR에 대한 액세스 권한이 필요합니다. 이 액세스를 활성화하려면 다음 권한과 사용자 지정 신뢰 정책을 포함하는 IAM 역할을 생성해야 합니다. (원하는 경우 권한과 정책을 포함하도록 기존 역할을 수정할 수 있습니다.)

    IAM 역할의 역할 정책에 다음 권한이 포함되어야 합니다.

    • ecr:BatchCheckLayerAvailability

    • ecr:BatchGetImage

    • ecr:GetAuthorizationToken

    • ecr:GetDownloadUrlForLayer

    IAM 역할에는 다음과 같은 사용자 지정 신뢰 정책이 포함되어야 합니다.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": [ "codecatalyst-runner.amazonaws.com", "codecatalyst.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }

    IAM 역할 생성에 대한 자세한 내용은 IAM 사용 설명서의 사용자 지정 신뢰 정책을 사용한 역할 생성 (콘솔) 을 참조하십시오.

    역할을 생성한 후에는 환경을 통해 작업에 할당해야 합니다. 자세한 정보는 환경을 워크플로 작업에 연결을 참조하세요.

해당 UI: Amazon Elastic 컨테이너 레지스트리, Docker Hub기타 레지스트리 옵션

Image

(액션 /Configuration/Container/ Image이름)

(포함된 Container 경우 필수)

다음 중 하나를 지정하세요.

  • CODECATALYST레지스트리를 사용하는 경우 이미지를 다음 활성 이미지 중 하나로 설정하십시오.

    • CodeCatalystLinux_x86_64:2024_03

    • CodeCatalystLinux_x86_64:2022_11

    • CodeCatalystLinux_Arm64:2024_03

    • CodeCatalystLinux_Arm64:2022_11

    • CodeCatalystLinuxLambda_x86_64:2024_03

    • CodeCatalystLinuxLambda_x86_64:2022_11

    • CodeCatalystLinuxLambda_Arm64:2024_03

    • CodeCatalystLinuxLambda_Arm64:2022_11

    • CodeCatalystWindows_x86_64:2022_11

  • Docker Hub 레지스트리를 사용하는 경우 이미지를 Docker Hub 이미지 이름 및 선택적 태그로 설정합니다.

    예제: postgres:latest

  • Amazon ECR 레지스트리를 사용하는 경우 이미지를 Amazon ECR 레지스트리 URI로 설정하십시오.

    예제: 111122223333.dkr.ecr.us-west-2.amazonaws.com/codecatalyst-ecs-image-repo

  • 사용자 지정 레지스트리를 사용하는 경우 이미지를 사용자 지정 레지스트리에서 예상하는 값으로 설정하십시오.

해당 UI: 런타임 환경 도커 이미지 (레지스트리가 있는 경우CODECATALYST), Docker Hub 이미지 (레지스트리가 Docker Hub인 경우), ECR 이미지 URL (레지스트리가 Amazon Elastic 컨테이너 레지스트리인 경우), 이미지 URL (레지스트리가 기타 레지스트리인 경우).

Steps

(액션 /Configuration/ Steps이름)

(필수)

빌드 도구를 설치, 구성 및 실행하기 위해 작업 중에 실행할 셸 명령을 지정합니다.

npm 프로젝트를 빌드하는 방법의 예는 다음과 같습니다.

Steps: - Run: npm install - Run: npm run build

파일 경로를 지정하는 방법의 예는 다음과 같습니다.

Steps: - Run: cd $ACTION_BUILD_SOURCE_PATH_WorkflowSource/app && cat file2.txt - Run: cd $ACTION_BUILD_SOURCE_PATH_MyBuildArtifact/build-output/ && cat file.txt

파일 경로 지정에 대한 자세한 내용은 소스 리포지토리의 파일 참조 및 을 참조하십시오아티팩트의 파일 참조.

해당 UI: 구성 탭/ 셸 명령

Packages

(액션 /Configuration/ Packages이름)

(선택 사항)

작업이 종속성을 해결하는 데 사용하는 패키지 저장소를 지정할 수 있는 섹션입니다. 패키지를 사용하면 애플리케이션 개발에 사용되는 소프트웨어 패키지를 안전하게 저장하고 공유할 수 있습니다.

패키지에 대한 자세한 내용은 을 참조하십시오에서 소프트웨어 패키지 게시 및 공유 CodeCatalyst.

해당 UI: 구성 탭/ 패키지

NpmConfiguration

(액션 /Configuration/Packages/ NpmConfiguration이름)

(포함된 Packages 경우 필수)

npm 패키지 형식의 구성을 정의하는 섹션입니다. 이 구성은 워크플로 실행 중 작업에 사용됩니다.

npm 패키지 구성에 대한 자세한 내용은 을 참조하십시오npm 사용.

해당 UI: 구성 탭/패키지/구성 추가/ npm

PackageRegistries

(액션 이름) /Configuration/Packages/NpmConfiguration/ PackageRegistries

(포함된 Packages 경우 필수)

패키지 리포지토리 시퀀스의 구성 속성을 정의할 수 있는 섹션입니다.

해당 UI: 구성 탭/패키지/구성 추가/npm/ 패키지 리포지토리 추가

PackagesRepository

(액션 이름) /Configuration/Packages/NpmConfiguration/PackageRegistries/ PackagesRepository

(포함된 Packages 경우 필수)

작업에 사용할 CodeCatalyst 패키지 저장소의 이름을 지정합니다.

기본 리포지토리를 여러 개 지정하는 경우 마지막 리포지토리가 우선합니다.

패키지 리포지토리에 대한 자세한 내용은 을 참조하십시오. 패키지 리포지토리

해당 UI: 구성 탭/패키지/구성 추가/NPM/패키지 리포지토리 추가/패키지 리포지토리

Scopes

(액션 이름) /Configuration/Packages/NpmConfiguration/PackageRegistries/ Scopes

(선택 사항)

패키지 레지스트리에서 정의하려는 범위 시퀀스를 지정합니다. 범위를 정의할 때 지정된 패키지 저장소는 나열된 모든 범위의 레지스트리로 구성됩니다. npm 클라이언트를 통해 범위가 지정된 패키지를 요청하면 기본값 대신 해당 리포지토리를 사용합니다. 각 스코프 이름 앞에 “@”를 붙여야 합니다.

오버라이드 범위를 포함하면 마지막 리포지토리가 우선합니다.

를 생략하면 Scopes 지정된 패키지 저장소가 작업에 사용되는 모든 패키지의 기본 레지스트리로 구성됩니다.

범위에 대한 자세한 내용은 범위 지정 패키지를 참조하십시오패키지 네임스페이스.

해당 UI: 구성 탭/패키지/구성 추가/NPM/패키지 리포지토리 추가/범위 - 선택 사항

ExportAuthorizationToken

(액션 이름) /Configuration/Packages/ ExportAuthorizationToken

(선택 사항)

내보내기 인증 토큰 기능을 활성화 또는 비활성화합니다. 활성화된 경우 내보낸 인증 토큰을 사용하여 패키지 관리자가 CodeCatalyst 패키지 리포지토리에서 인증하도록 수동으로 구성할 수 있습니다. 토큰을 작업에서 참조할 수 있는 환경 변수로 사용할 수 있습니다.

유효한 값은 true 또는 false입니다.

생략된 경우 기본값은 ExportAuthorizationToken 입니다. false

내보내기 인증 토큰에 대한 자세한 내용은 을 참조하십시오. 워크플로 작업에 인증 토큰 사용

해당 UI: 구성 탭/패키지/내보내기 인증 토큰