ビルドアクションとテストアクション YAML - Amazon CodeCatalyst

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ビルドアクションとテストアクション YAML

以下は、ビルドアクションとテストアクションYAMLの定義です。YAML プロパティは非常に類似しているため、2 つのアクションには 1 つのリファレンスがあります。

このアクション定義は、より広範なワークフロー定義ファイル内のセクションとして存在します。ファイルの詳細については、「ワークフロー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

action-name

(必須)

アクションの名前を指定します。すべてのアクション名は、ワークフロー内で一意である必要があります。アクション名は、英数字 (a~z、A~Z、0~9)、ハイフン (-)、アンダースコア (_) に制限されています。スペースは使用できません。引用符を使用して、アクション名の特殊文字とスペースを有効にすることはできません。

対応する UI: 設定タブ/アクション名

Identifier

(action-name/Identifier)

アクションを識別します。バージョンを変更しない限り、このプロパティを変更しないでください。詳細については、「使用するアクションバージョンの指定」を参照してください。

ビルドアクションaws/build@v1に を使用します。

テストアクションaws/managed-test@v1に を使用します。

対応する UI: ワークフロー図/アクション名/aws/build@v1|aws/managed-test@v1 ラベル

DependsOn

(action-name/DependsOn)

(オプション)

このアクションを実行するために正常に実行する必要があるアクション、アクショングループ、またはゲートを指定します。

「依存関係」機能の詳細については、「」を参照してくださいシーケンスアクション

対応する UI: の入力タブ/依存 - オプション

Compute

(action-name/Compute)

(オプション)

ワークフローアクションの実行に使用されるコンピューティングエンジン。コンピューティングはワークフローレベルまたはアクションレベルで指定できますが、両方を指定することはできません。ワークフローレベルで指定すると、コンピューティング設定はワークフローで定義されたすべてのアクションに適用されます。ワークフローレベルでは、同じインスタンスで複数のアクションを実行することもできます。詳細については、「アクション間でのコンピューティングの共有」を参照してください。

対応する UI: なし

Type

(action-name/Compute/タイプ

( Computeが含まれている場合は必須)

コンピューティングエンジンのタイプ。次のいずれかの値を使用できます。

  • EC2 (ビジュアルエディタ) または EC2 (YAML エディタ)

    アクションの実行時の柔軟性のために最適化されています。

  • Lambda (ビジュアルエディタ) または Lambda (YAML エディタ)

    アクションの起動速度を最適化しました。

コンピューティングタイプの詳細については、「コンピューティングタイプ」を参照してください。

対応する UI: 設定タブ/コンピューティングタイプ

Fleet

(action-name/Compute/Fleet)

(オプション)

ワークフローまたはワークフローアクションを実行するマシンまたはフリートを指定します。オンデマンドフリートでは、アクションが開始されると、ワークフローは必要なリソースをプロビジョニングし、アクションが完了するとマシンは破棄されます。オンデマンドフリートの例: Linux.x86-64.LargeLinux.x86-64.XLarge。オンデマンドフリートの詳細については、「」を参照してくださいオンデマンドフリートプロパティ

プロビジョニングされたフリートでは、ワークフローアクションを実行するように専用マシンのセットを設定します。これらのマシンはアイドル状態のままで、アクションをすぐに処理できます。プロビジョニングされたフリートの詳細については、「」を参照してくださいプロビジョニングされたフリートプロパティ

Fleet を省略した場合、デフォルトは ですLinux.x86-64.Large

対応する UI: 設定タブ/コンピューティングフリート

Timeout

(action-name/Timeout)

(オプション)

アクション CodeCatalyst が終了する前にアクションを実行することができる時間を分単位 (YAMLエディタ) または時間分単位 (ビジュアルエディタ) で指定します。最小値は 5 分で、最大値は で説明されていますでのワークフローのクォータ CodeCatalyst。デフォルトのタイムアウトは、最大タイムアウトと同じです。

対応する UI: 設定タブ/タイムアウト - オプション

Environment

(action-name/Environment)

(オプション)

アクションで使用する CodeCatalyst 環境を指定します。アクションは、選択した環境でVPC指定された AWS アカウント およびオプションの Amazon に接続します。このアクションは、 環境内で指定されたデフォルトのIAMロールを使用して に接続し AWS アカウント、Amazon VPC接続で指定されたIAMロールを使用して Amazon に接続しますVPC。

注記

デフォルトのIAMロールにアクションに必要なアクセス許可がない場合は、別のロールを使用するようにアクションを設定できます。詳細については、「アクションのIAMロールの変更」を参照してください。

環境の詳細については、AWS アカウント と へのデプロイ VPCs「」および「」を参照してください環境を作成する

対応する UI: 設定タブ/環境

Name

(action-name/Environment/Name)

(オプション)

アクションに関連付ける既存の環境の名前を指定します。

対応する UI: 設定タブ/環境

Connections

(action-name/Environment/Connections)

(オプション)

アクションに関連付けるアカウント接続を指定します。で最大 1 つのアカウント接続を指定できますEnvironment

アカウント接続を指定しない場合:

  • アクションは、 CodeCatalyst コンソールの 環境で指定された AWS アカウント 接続とデフォルトのIAMロールを使用します。アカウント接続とデフォルトのIAMロールを環境に追加する方法については、「」を参照してください環境を作成する

  • デフォルトのIAMロールには、 アクションに必要なポリシーとアクセス許可が含まれている必要があります。これらのポリシーとアクセス許可を確認するには、アクションYAMLの定義ドキュメントの「ロールプロパティの説明」を参照してください。

アカウント接続の詳細については、「」を参照してください接続された AWS リソースへのアクセスを許可する AWS アカウント。環境へのアカウント接続の追加については、「」を参照してください環境を作成する

対応する UI: tab/Environment/Whatで を設定する my-environment?/3 つのドットメニュー/スイッチロール

Name

(action-name/Environment/Connections/Name)

( Connections が含まれている場合は必須)

アカウント接続の名前を指定します。

対応する UI: tab/Environment/Whatで を設定する my-environment?/3 つのドットメニュー/スイッチロール

Role

(action-name/Environment/Connections/Role)

( Connections が含まれている場合は必須)

このアクションが Amazon S3 や Amazon などの AWS サービスにアクセスして操作するために使用するIAMロールの名前を指定しますECR。このロールがスペースの接続に追加 AWS アカウント されていることを確認します。アカウント接続にIAMロールを追加するには、「」を参照してくださいアカウント接続へのIAMロールの追加

IAM ロールを指定しない場合、アクションは CodeCatalyst コンソールの 環境に記載されているデフォルトのIAMロールを使用します。環境でデフォルトのロールを使用する場合は、次のポリシーがあることを確認してください。

注記

このアクションで CodeCatalystWorkflowDevelopmentRole-spaceNameロールを使用できます。このロールの詳細については、「アカウントとスペースのCodeCatalystWorkflowDevelopmentRole-spaceNameロールの作成」を参照してください。CodeCatalystWorkflowDevelopmentRole-spaceName ロールには、セキュリティリスクをもたらす可能性のあるフルアクセス許可があることを理解します。このロールは、セキュリティが懸念されないチュートリアルやシナリオでのみ使用することをお勧めします。

警告

アクセス許可は、ビルドアクションとテストアクションに必要なアクセス許可に制限します。より広範なアクセス許可を持つロールを使用すると、セキュリティリスクが発生する可能性があります。

対応する UI: tab/Environment/Whatで を設定する my-environment?/3 つのドットメニュー/スイッチロール

Caching

(action-name/Caching)

(オプション)

キャッシュを指定して、ディスク上のファイルを保存し、後続のワークフロー実行でそのキャッシュから復元できるセクション。

ファイルキャッシュの詳細については、「」を参照してくださいワークフロー実行間のファイルのキャッシュ

対応する UI: 設定タブ/ファイルキャッシュ - オプション

FileCaching

(action-name/Caching/FileCaching)

(オプション)

一連のキャッシュの設定を指定するセクション。

対応する UI: 設定タブ/ファイルキャッシュ - オプション/キャッシュの追加

key-name-1

(action-name/Caching/FileCaching/key-name-1)

(オプション)

プライマリキャッシュプロパティ名の名前を指定します。キャッシュプロパティ名は、ワークフロー内で一意である必要があります。各アクションには、 に最大 5 つのエントリを含めることができますFileCaching

対応する UI: 設定tab/File caching - optional/Addキャッシュ/キー

Path

(action-name/Caching/FileCaching/key-name-1/Path)

(オプション)

キャッシュの関連するパスを指定します。

対応する UI: 設定tab/File caching - optional/Addキャッシュ/パス

RestoreKeys

(action-name/Caching/FileCaching/key-name-1/RestoreKeys)

(オプション)

プライマリキャッシュプロパティが見つからない場合にフォールバックとして使用する復元キーを指定します。復元キー名は、ワークフロー内で一意である必要があります。各キャッシュには、最大 5 つのエントリを含めることができますRestoreKeys

対応する UI: 設定tab/File caching - optional/Addキャッシュ/復元キー - オプション

Inputs

(action-name/Inputs)

(オプション)

このセクションでは、ワークフローの実行中にアクションに必要なデータInputsを定義します。

注記

ビルドアクションまたはテストアクションごとに最大 4 つの入力 (1 つのソースと 3 つのアーティファクト) が許可されます。変数はこの合計にはカウントされません。

異なる入力 (ソースとアーティファクトなど) にあるファイルを参照する必要がある場合、ソース入力はプライマリ入力で、アーティファクトはセカンダリ入力です。セカンダリ入力内のファイルへの参照には、プライマリからファイルを分割するための特別なプレフィックスが必要です。詳細については、「例: 複数のアーティファクト内のファイルを参照する」を参照してください。

対応する UI: 入力タブ

Sources

(action-name/Inputs/Sources)

(オプション)

アクションに必要なソースリポジトリを表すラベルを指定します。現在、サポートされているラベルは のみです。これはWorkflowSource、ワークフロー定義ファイルが保存されているソースリポジトリを表します。

ソースを省略する場合は、 で少なくとも 1 つの入力アーティファクトを指定する必要がありますaction-name/Inputs/Artifacts

sources の詳細については、「ソースリポジトリをワークフローに接続する」を参照してください。

対応する UI: なし

Artifacts - input

(action-name/Inputs/Artifacts)

(オプション)

このアクションへの入力として提供する以前のアクションのアーティファクトを指定します。これらのアーティファクトは、前のアクションで出力アーティファクトとして既に定義されている必要があります。

入力アーティファクトを指定しない場合は、 で少なくとも 1 つのソースリポジトリを指定する必要がありますaction-name/Inputs/Sources

例を含むアーティファクトの詳細については、「」を参照してくださいアクション間でのアーティファクトとファイルの共有

注記

アーティファクト - オプションのドロップダウンリストが使用できない場合 (ビジュアルエディタ)、または YAML (YAMLエディタ) の検証時に にエラーが発生した場合、アクションが 1 つの入力のみをサポートしているためである可能性があります。この場合、ソース入力を削除してみてください。

対応する UI: 入力タブ/アーティファクト - オプション

Variables - input

(action-name/Inputs/Variables)

(オプション)

アクションで使用できるようにしたい入力変数を定義する名前と値のペアのシーケンスを指定します。変数名は、英数字 (a~z、A~Z、0~9)、ハイフン (-)、アンダースコア (_) に制限されています。スペースは使用できません。引用符を使用して、変数名の特殊文字とスペースを有効にすることはできません。

例を含む変数の詳細については、「」を参照してくださいワークフローでの変数の使用

対応する UI: 入力タブ/変数 - オプション

Outputs

(action-name/Outputs)

(オプション)

ワークフローの実行中にアクションによって出力されるデータを定義します。

対応する UI: 出力タブ

Artifacts - output

(action-name/Outputs/Artifacts)

(オプション)

アクションによって生成されたアーティファクトの名前を指定します。アーティファクト名はワークフロー内で一意でなければならず、英数字 (a~z、A~Z、0~9) とアンダースコア (_) に制限されます。スペース、ハイフン (-)、その他の特殊文字は使用できません。引用符を使用して、出力アーティファクト名のスペース、ハイフン、その他の特殊文字を有効にすることはできません。

例を含むアーティファクトの詳細については、「」を参照してくださいアクション間でのアーティファクトとファイルの共有

対応する UI: 出力タブ/アーティファクト

Name

(action-name/Outputs/Artifacts/Name)

( Artifacts - output が含まれている場合は必須)

アクションによって生成されたアーティファクトの名前を指定します。アーティファクト名はワークフロー内で一意でなければならず、英数字 (a~z、A~Z、0~9) とアンダースコア (_) に制限されます。スペース、ハイフン (-)、その他の特殊文字は使用できません。引用符を使用して、出力アーティファクト名のスペース、ハイフン、その他の特殊文字を有効にすることはできません。

例を含むアーティファクトの詳細については、「」を参照してくださいアクション間でのアーティファクトとファイルの共有

対応する UI: tab/Artifacts/New出力/ビルドアーティファクト名を出力します

Files

(action-name/Outputs/Artifacts/Files)

( Artifacts - output が含まれている場合は必須)

アクションによって出力されるアーティファクト CodeCatalyst に含まれるファイルを指定します。これらのファイルは、実行時にワークフローアクションによって生成され、ソースリポジトリでも使用できます。ファイルパスは、ソースリポジトリまたは前のアクションからのアーティファクトに存在し、ソースリポジトリまたはアーティファクトルートを基準とすることができます。glob パターンを使用してパスを指定できます。例:

  • ビルドまたはソースリポジトリの場所のルートにある 1 つのファイルを指定するには、my-file.jar を使用します。

  • サブディレクトリ内の 1 つのファイルを指定するには、directory/my-file.jar または directory/subdirectory/my-file.jar を使用します。

  • すべてのファイルを指定するには、"**/*" を使用します。glob パターン ** は、任意の数のサブディレクトリにマッチすることを示します。

  • directory という名前のディレクトリ内のすべてのファイルとディレクトリを指定するには、"directory/**/*" を使用します。glob パターン ** は、任意の数のサブディレクトリにマッチすることを示します。

  • directory という名前のディレクトリ内のすべてのファイルを指定するが、そのサブディレクトリを含めないようにするには、"directory/*" を使用します。

注記

ファイルパスに 1 つ以上のアスタリスク (*) またはその他の特殊文字が含まれている場合は、パスを二重引用符 () で囲みます""。特殊文字の詳細については、「」を参照してください構文のガイドラインと規則

例を含むアーティファクトの詳細については、「」を参照してくださいアクション間でのアーティファクトとファイルの共有

注記

ファイルパスにプレフィックスを追加して、見つけるアーティファクトまたはソースを示す必要がある場合があります。詳細については、「ソースリポジトリファイルを参照する」および「アーティファクト内のファイルを参照する」を参照してください。

対応する UI: ビルドによって生成されたtab/Artifacts/New出力/ファイルを出力する

Variables - output

(action-name/Outputs/Variables)

(オプション)

後続のアクションで使用できるように、アクションがエクスポートする変数を指定します。

例を含む変数の詳細については、「」を参照してくださいワークフローでの変数の使用

対応する UI: 出力タブ/変数/変数の追加

variable-name-1

(action-name/Outputs/Variables/variable-name-1)

(オプション)

アクションをエクスポートする変数の名前を指定します。この変数は、同じアクションの Inputsまたは Stepsセクションで既に定義されている必要があります。

例を含む変数の詳細については、「」を参照してくださいワークフローでの変数の使用

対応する UI: tab/Variables/Add変数/名前を出力

AutoDiscoverReports

(action-name/Outputs/AutoDiscoverReports)

(オプション)

自動検出機能の設定を定義します。

自動検出を有効にすると、 はアクションに渡Inputsされたすべてのファイルとアクション自体によって生成されたすべてのファイル CodeCatalyst を検索し、テスト、コードカバレッジ、ソフトウェア構成分析 (SCA) レポートを探します。見つかったレポートごとに、 はそれを CodeCatalyst レポートに変換 CodeCatalyst します。CodeCatalyst レポートは、 CodeCatalyst サービスに完全に統合され、 CodeCatalyst コンソールを介して表示および操作できるレポートです。

注記

デフォルトでは、自動検出機能はすべてのファイルを検査します。IncludePaths または ExcludePathsプロパティを使用して、検査するファイルを制限できます。

対応する UI: 出力タブ/レポート/自動検出レポート

Enabled

(action-name/Outputs/AutoDiscoverReports/Enabled)

(オプション)

自動検出機能を有効または無効にします。

有効な値は true または false です。

Enabled を省略した場合、デフォルトは ですtrue

対応する UI: 出力タブ/レポート/自動検出レポート

ReportNamePrefix

(action-name/Outputs/AutoDiscoverReports/ReportNamePrefix)

( AutoDiscoverReports が含まれ、有効になっている場合は必須です)

関連するレポートに名前を付けるために、見つかったすべての CodeCatalyst レポートに CodeCatalyst 付加するプレフィックスを指定します。例えば、 のプレフィックスを指定しAutoDiscovered CodeCatalyst、2 つのテストレポートTestSuiteOne.xmlと を自動検出するとTestSuiteTwo.xml、関連付けられた CodeCatalyst レポートには AutoDiscoveredTestSuiteOneと という名前が付けられますAutoDiscoveredTestSuiteTwo

対応する UI: 出力タブ/レポート/プレフィックス名

IncludePaths

(action-name/Outputs/AutoDiscoverReports/IncludePaths)

または

(action-name/Outputs/Reports/report-name-1/IncludePaths)

( AutoDiscoverReportsが含まれ、有効になっている場合、または Reports が含まれている場合は必須)

未加工レポートを検索するときに CodeCatalyst に含まれるファイルとファイルパスを指定します。例えば、 を指定すると"/test/report/*"、 は /test/report/* ディレクトリを検索するアクションで使用されるビルドイメージ全体 CodeCatalyst を検索します。そのディレクトリが見つかると、 はそのディレクトリ内のレポート CodeCatalyst を検索します。

注記

ファイルパスに 1 つ以上のアスタリスク (*) またはその他の特殊文字が含まれている場合は、パスを二重引用符 () で囲みます""。特殊文字の詳細については、「」を参照してください構文のガイドラインと規則

このプロパティを省略した場合、デフォルトは です。つまり"**/*"、検索にはすべてのパスのすべてのファイルが含まれます。

注記

手動設定のレポートの場合、 は単一のファイルに一致する球パターンIncludePathsである必要があります。

対応する UI:

  • 出力tab/Reports/Auto-discover reports/Include/excludeパス/包含パス

  • 出力はレポートtab/Reports/Manuallyを設定します/report-name-1/Include/exclude パス/Include パス

ExcludePaths

(action-name/Outputs/AutoDiscoverReports/ExcludePaths)

または

(action-name/Outputs/Reports/report-name-1/ExcludePaths)

(オプション)

未加工レポートを検索するときに CodeCatalyst 除外するファイルとファイルパスを指定します。例えば、 を指定した場合"/test/my-reports/**/*"、 CodeCatalyst は /test/my-reports/ ディレクトリ内のファイルを検索しません。ディレクトリ内のすべてのファイルを無視するには、glob **/* パターンを使用します。

注記

ファイルパスに 1 つ以上のアスタリスク (*) またはその他の特殊文字が含まれている場合は、パスを二重引用符 () で囲みます""。特殊文字の詳細については、「」を参照してください構文のガイドラインと規則

対応する UI:

  • 出力tab/Reports/Auto-discover reports/Include/excludeパス/除外パス

  • 出力はレポートtab/Reports/Manuallyを設定します/report-name-1/Include/Exclude パス/Exclude パス

SuccessCriteria

(action-name/Outputs/AutoDiscoverReports/SuccessCriteria)

または

(action-name/Outputs/Reports/report-name-1/SuccessCriteria)

(オプション)

テスト、コードカバレッジ、ソフトウェア構成分析 (SCA)、静的分析 (SA) レポートの成功基準を指定します。

詳細については、「レポートの成功基準の設定」を参照してください。

対応する UI: 出力タブ/レポート/成功基準

PassRate

(action-name/Outputs/AutoDiscoverReports/SuccessCriteria/PassRate)

または

(action-name/Outputs/Reports/report-name-1/SuccessCriteria/PassRate)

(オプション)

関連する CodeCatalystレポートを合格としてマークするために合格する必要があるテストレポート内のテストの割合を指定します。有効な値には 10 進数が含まれます。例: 5060.5。合格率基準は、テストレポートにのみ適用されます。テストレポートの詳細については、「」を参照してくださいテストレポート

対応する UI: 出力tab/Reports/Success基準/合格率

LineCoverage

(action-name/Outputs/AutoDiscoverReports/SuccessCriteria/LineCoverage)

または

(action-name/Outputs/Reports/report-name-1/SuccessCriteria/LineCoverage)

(オプション)

コードカバレッジレポートで、関連する CodeCatalyst レポートを合格としてマークするためにカバーする必要がある行の割合を指定します。有効な値には 10 進数が含まれます。例: 5060.5。行カバレッジ基準は、コードカバレッジレポートにのみ適用されます。コードカバレッジレポートの詳細については、「」を参照してくださいコードカバレッジレポート

対応する UI: 出力tab/Reports/Success基準/ラインカバレッジ

BranchCoverage

(action-name/Outputs/AutoDiscoverReports/SuccessCriteria/BranchCoverage)

または

(action-name/Outputs/Reports/report-name-1/SuccessCriteria/BranchCoverage)

(オプション)

コードカバレッジレポートで、関連するレポートを合格としてマーク CodeCatalyst するためにカバーする必要があるブランチの割合を指定します。有効な値には 10 進数が含まれます。例: 5060.5。ブランチカバレッジ基準は、コードカバレッジレポートにのみ適用されます。コードカバレッジレポートの詳細については、「」を参照してくださいコードカバレッジレポート

対応する UI: 出力tab/Reports/Success基準/ブランチカバレッジ

Vulnerabilities

(action-name/Outputs/AutoDiscoverReports/SuccessCriteria/Vulnerabilities)

または

(action-name/Outputs/Reports/report-name-1/SuccessCriteria/Vulnerabilities)

(オプション)

レポートで許可される脆弱性の最大数と重要度を指定し、SCA関連する CodeCatalyst レポートを合格としてマークします。脆弱性を指定するには、以下を指定する必要があります。

  • カウントに含める脆弱性の最小重要度。最も重要度の高い値から最も重要度の低い値までの有効な値は、、CRITICALHIGHMEDIUMLOW、、 ですINFORMATIONAL

    例えば、 を選択するとHIGHHIGHと のCRITICAL脆弱性が集計されます。

  • 許可する指定された重要度の脆弱性の最大数。この数を超えると、 CodeCatalyst レポートは失敗としてマークされます。有効な値は整数です。

脆弱性基準はSCAレポートにのみ適用されます。SCA レポートの詳細については、「」を参照してくださいソフトウェア構成分析レポート

最小重要度を指定するには、 Severityプロパティを使用します。脆弱性の最大数を指定するには、 Numberプロパティを使用します。

対応する UI: 出力tab/Reports/Success基準/脆弱性

StaticAnalysisBug

(action-name/Outputs/AutoDiscoverReports/SuccessCriteria/StaticAnalysisBug)

または

(action-name/Outputs/Reports/report-name-1/SuccessCriteria/StaticAnalysisBug)

(オプション)

SA レポートで許可されるバグの最大数と重要度を指定し、関連する CodeCatalyst レポートを合格としてマークします。バグを指定するには、以下を指定する必要があります。

  • カウントに含めるバグの最小重要度。最も重要度の高い値から最も重要度の低い値までの有効な値は、、CRITICALHIGHMEDIUMLOW、、 ですINFORMATIONAL

    例えば、 を選択するとHIGHHIGHCRITICAL のバグが集計されます。

  • 許可する指定された重要度の最大バグ数。この数を超えると、 CodeCatalyst レポートは失敗としてマークされます。有効な値は整数です。

バグ基準は、 PyLint および ESLint SA レポートにのみ適用されます。SA レポートの詳細については、「」を参照してください静的分析レポート

最小重要度を指定するには、 Severityプロパティを使用します。脆弱性の最大数を指定するには、 Numberプロパティを使用します。

対応する UI: 出力tab/Reports/Success基準/バグ

StaticAnalysisSecurity

(action-name/Outputs/AutoDiscoverReports/SuccessCriteria/StaticAnalysisSecurity)

または

(action-name/Outputs/Reports/report-name-1/SuccessCriteria/StaticAnalysisSecurity)

(オプション)

SA レポートで許可されるセキュリティ脆弱性の最大数と重要度を指定し、関連する CodeCatalyst レポートを合格としてマークします。セキュリティの脆弱性を指定するには、以下を指定する必要があります。

  • カウントに含めるセキュリティ脆弱性の最小重要度。最も重要度の高い値から最も重要度の低い値までの有効な値は、、CRITICALHIGHMEDIUMLOW、、 ですINFORMATIONAL

    例えば、 を選択するとHIGHHIGHCRITICAL セキュリティの脆弱性が集計されます。

  • 許可する指定された重要度のセキュリティ脆弱性の最大数。この数を超えると、 CodeCatalyst レポートは失敗としてマークされます。有効な値は整数です。

セキュリティ脆弱性の基準は、 PyLint および ESLint SA レポートにのみ適用されます。SA レポートの詳細については、「」を参照してください静的分析レポート

最小重要度を指定するには、 Severityプロパティを使用します。脆弱性の最大数を指定するには、 Numberプロパティを使用します。

対応する UI: 出力tab/Reports/Success基準/セキュリティの脆弱性

StaticAnalysisQuality

(action-name/Outputs/AutoDiscoverReports/SuccessCriteria/StaticAnalysisQuality)

または

(action-name/Outputs/Reports/report-name-1/SuccessCriteria/StaticAnalysisQuality)

(オプション)

SA レポートで許可される品質問題の最大数と重要度を指定し、関連する CodeCatalyst レポートを合格としてマークします。品質問題を指定するには、以下を指定する必要があります。

  • カウントに含める品質問題の最小重要度。最も重要度の高い値から最も重要度の低い値までの有効な値は、、CRITICALHIGHMEDIUMLOW、、 ですINFORMATIONAL

    例えば、 を選択するとHIGHHIGHCRITICAL品質の問題が集計されます。

  • 許可する指定された重要度の品質問題の最大数。この数を超えると、 CodeCatalyst レポートは失敗としてマークされます。有効な値は整数です。

品質問題の基準は、 PyLint および ESLint SA レポートにのみ適用されます。SA レポートの詳細については、「」を参照してください静的分析レポート

最小重要度を指定するには、 Severityプロパティを使用します。脆弱性の最大数を指定するには、 Numberプロパティを使用します。

対応する UI: 出力tab/Reports/Success基準/品質の問題

StaticAnalysisFinding

(action-name/Outputs/AutoDiscoverReports/SuccessCriteria/StaticAnalysisFinding)

または

(action-name/Outputs/Reports/report-name-1/SuccessCriteria/StaticAnalysisFinding)

(オプション)

関連するレポートが合格としてマークされるように、SA CodeCatalyst レポートで許可される結果の最大数と重要度を指定します。検出結果を指定するには、以下を指定する必要があります。

  • カウントに含める結果の最小重要度。最も重要度の高い値から最も重要度の低い値までの有効な値は、、CRITICALHIGHMEDIUMLOW、、 ですINFORMATIONAL

    例えば、 を選択するとHIGHHIGHCRITICALの結果が集計されます。

  • 許可する指定された重要度の検出結果の最大数。この数を超えると、 CodeCatalyst レポートは失敗としてマークされます。有効な値は整数です。

結果は SARIF SA レポートにのみ適用されます。SA レポートの詳細については、「」を参照してください静的分析レポート

最小重要度を指定するには、 Severityプロパティを使用します。脆弱性の最大数を指定するには、 Numberプロパティを使用します。

対応する UI: 出力tab/Reports/Success基準/検出結果

Reports

(action-name/Outputs/Reports )

(オプション)

テストレポートの設定を指定するセクション。

対応する UI: 出力タブ/レポート

report-name-1

(action-name/Outputs/Reports/report-name-1 )

( Reports が含まれている場合は必須)

未加工 CodeCatalyst のレポートから生成されるレポートに付ける名前。

対応する UI: 出力がレポート/レポート名tab/Reports/Manuallyを設定する

Format

(action-name/Outputs/Reports/report-name-1/Format)

( Reports が含まれている場合は必須)

レポートに使用するファイル形式を指定します。指定できる値は以下のとおりです。

  • テストレポートの場合:

    • キューカンバー にはJSON、キューカンバー (ビジュアルエディタ) または CUCUMBERJSON (YAMLエディタ) を指定します。

    • にはXML、 JUnit (ビジュアルエディタ) または JUNITXML (YAML エディタ) JUnit を指定します。

    • にはXML、 NUnit (ビジュアルエディタ) または NUNITXML (YAML エディタ) NUnit を指定します。

    • NUnit 3 の場合はXML、 NUnit3 (ビジュアルエディタ) または NUNIT3XML (YAML エディタ) を指定します。

    • Visual Studio の場合はTRX、Visual Studio TRX (ビジュアルエディタ) または VISUALSTUDIOTRX (YAMLエディタ) を指定します。

    • TestNG の場合はXML、TestNG (ビジュアルエディタ) または TESTNGXML (YAML エディタ) を指定します。

  • コードカバレッジレポートの場合:

    • Clover にはXML、Clover (ビジュアルエディタ) または CLOVERXML (YAML エディタ) を指定します。

    • Cobertura の場合はXML、Cobertura (ビジュアルエディタ) または COBERTURAXML (YAMLエディタ) を指定します。

    • には JaCoCo XML、 JaCoCo (ビジュアルエディタ) または JACOCOXML (YAML エディタ) を指定します。

    • simplecov-json SimpleCov JSONではなく simplecov によって生成された では、Simplecov (ビジュアルエディタ) または SIMPLECOV (YAML エディタ) を指定します。 https://github.com/vicentllongo/simplecov-json

  • ソフトウェアコンポジション分析 (SCA) レポートの場合:

    • の場合はSARIF、 SARIF (ビジュアルエディタ) または SARIFSCA (YAML エディタ) を指定します。

対応する UI: tab/Reports/Manually configure reports/Add/configureレポートを出力/report-name-1/レポートタイプレポート形式

Configuration

(action-name/Configuration)

(必須) アクションの設定プロパティを定義できるセクション。

対応する UI: 設定タブ

Container

(action-name/Configuration/Container)

(オプション)

アクションが処理を完了するために使用する Docker イメージまたはコンテナ を指定します。に付属しているアクティブなイメージのいずれかを指定するか CodeCatalyst、独自のイメージを使用できます。独自のイメージを使用する場合は、Amazon ECR、Docker Hub、または別のレジストリに格納できます。Docker イメージを指定しない場合、アクションはその処理にアクティブなイメージの 1 つを使用します。デフォルトではどのアクティブなイメージが使用されているかについては、「」を参照してくださいアクティブなイメージ

独自の Docker イメージの指定の詳細については、「」を参照してくださいカスタムランタイム環境の Docker イメージを アクションに割り当てる

対応する UI: ランタイム環境 Docker イメージ - オプション

Registry

(action-name/Configuration/Container/Registry)

( Container が含まれている場合は必須)

イメージが保存されているレジストリを指定します。有効な値を次に示します。

  • CODECATALYST (YAML エディタ)

    イメージは CodeCatalyst レジストリに保存されます。

  • Docker Hub (ビジュアルエディタ) または DockerHub (YAML エディタ)

    イメージは Docker Hub イメージレジストリに保存されます。

  • その他のレジストリ (ビジュアルエディタ) または Other (YAMLエディタ)

    イメージはカスタムイメージレジストリに保存されます。公開されているレジストリを使用することができます。

  • Amazon Elastic Container Registry (ビジュアルエディタ) または ECR (YAML エディタ)

    イメージは Amazon Elastic Container Registry イメージリポジトリに保存されます。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 Container Registry Docker Hub およびその他のレジストリオプション

Image

(action-name/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: ランタイム環境の Docker イメージ (レジストリが の場合CODECATALYST)、Docker Hub イメージ (レジストリが Docker Hub の場合)、ECRイメージ URL (レジストリが Amazon Elastic Container Registry の場合)、イメージ URL (レジストリがその他のレジストリの場合)。

Steps

(action-name/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

(action-name/Configuration/Packages)

(オプション)

アクションが依存関係を解決するために使用するパッケージリポジトリを指定できるセクション。パッケージを使用すると、アプリケーション開発に使用されるソフトウェアパッケージを安全に保存および共有できます。

パッケージの詳細については、「」を参照してくださいでソフトウェアパッケージを公開および共有する CodeCatalyst

対応する UI: 設定タブ/パッケージ

NpmConfiguration

(action-name/Configuration/Packages/NpmConfiguration)

( Packages が含まれている場合は必須)

npm パッケージ形式の設定を定義するセクション。この設定は、ワークフローの実行中に アクションによって使用されます。

npm パッケージ設定の詳細については、「」を参照してくださいnpmを使う

対応する UI: tab/Packages/Add設定設定/npm

PackageRegistries

(action-name/Configuration/Packages/NpmConfiguration/PackageRegistries)

( Packages が含まれている場合は必須)

一連のパッケージリポジトリの設定プロパティを定義できるセクション。

対応する UI: パッケージリポジトリの設定tab/Packages/Add configuration/npm/追加

PackagesRepository

(action-name/Configuration/Packages/NpmConfiguration/PackageRegistries/PackagesRepository)

( Packages が含まれている場合は必須)

アクションで使用する CodeCatalyst パッケージリポジトリの名前を指定します。

複数のデフォルトリポジトリを指定すると、最後のリポジトリが優先されます。

パッケージリポジトリの詳細については、「」を参照してくださいパッケージリポジトリ

対応する UI: 設定tab/Packages/Add configuration/npm/Addパッケージリポジトリ/パッケージリポジトリ

Scopes

(action-name/Configuration/Packages/NpmConfiguration/PackageRegistries/Scopes)

(オプション)

パッケージレジストリで定義するスコープのシーケンスを指定します。スコープを定義する場合、指定されたパッケージリポジトリは、リストされているすべてのスコープのレジストリとして設定されます。スコープを持つパッケージが npm クライアントを介してリクエストされた場合、デフォルトの代わりにそのリポジトリが使用されます。各スコープ名には「@」というプレフィックスを付ける必要があります。

上書きスコープを含めると、最後のリポジトリが優先されます。

Scopes を省略すると、指定されたパッケージリポジトリは、 アクションで使用されるすべてのパッケージのデフォルトレジストリとして設定されます。

スコープの詳細については、パッケージ名前空間「」および「スコープパッケージ」を参照してください。

対応する UI: 設定tab/Packages/Add configuration/npm/Addパッケージリポジトリ/スコープ - オプション

ExportAuthorizationToken

(action-name/Configuration/Packages/ExportAuthorizationToken)

(オプション)

エクスポート認証トークン機能を有効または無効にします。有効にすると、エクスポートされた認証トークンを使用して、パッケージリポジトリで認証するように CodeCatalyst パッケージマネージャーを手動で設定できます。トークンは、アクションで参照できる環境変数として使用できます。

有効な値は true または false です。

ExportAuthorizationToken を省略した場合、デフォルトは ですfalse

エクスポート認証トークンの詳細については、「」を参照してくださいワークフローアクションでの認証トークンの使用

対応する UI: 設定タブ/パッケージ/エクスポート認証トークン