レポートグループは、CodeBuild コンソール、AWS CLI、または buildspec ファイルを使用して作成できます。IAM ロールには、レポートグループを作成するために必要なアクセス権限が必要です。詳細については、「テストレポートのアクセス許可」を参照してください。
トピック
レポートグループの作成 (buildspec)
buildspec を使用して作成されたレポートグループは、生のテスト結果ファイルをエクスポートしません。レポートグループを表示し、エクスポート設定を指定できます。詳細については、「レポートグループの更新」を参照してください。
buildspec ファイルを使用してレポートグループを作成するには
-
AWS アカウントのレポートグループに関連付けられていないレポートグループ名を選択します。
-
buildspec ファイルの
reports
セクションをこの名前で設定します。この例では、レポートグループ名はnew-report-group
で、ユーステストケースは JUnit フレームワークを使用して作成されます。reports: new-report-group: #surefire junit reports files: - '**/*' base-directory: 'surefire/target/surefire-reports'
レポートグループ名は、buildspec で環境変数を使用して指定することもできます。
version: 0.2 env: variables: REPORT_GROUP_NAME: "new-report-group" phases: build: commands: - ... ... reports: $REPORT_GROUP_NAME: files: - '**/*' base-directory: 'surefire/target/surefire-reports'
詳細については、テストファイルの指定およびReports syntax in the buildspec fileを参照してください。
-
commands
セクションで、テストを実行するコマンドを指定します。詳細については、「 テストコマンドの指定 」を参照してください。 -
ビルドを実行します。ビルドが完了すると、形式
project-name-report-group-name
を使用する名前で新しいレポートグループが作成されます。詳細については、「Report group naming」を参照してください。
Create a report group (console)
次の手順で、AWS Management Console を使用してレポートグループを作成します。
レポートグループの作成
AWS CodeBuild コンソール (https://console.aws.amazon.com/codesuite/codebuild/home
) を開きます。 -
ナビゲーションペインで、[Report groups (レポートグループ)] を選択します。
-
[Create report group (レポートグループを作成)] を選択します。
-
[Report group name (レポートグループ名)] に、レポートグループの名前を入力します。
-
(オプション) [タグ] に、サポート対象の AWS のサービスで使用するタグの名前と値を入力します。[Add row] を使用して、タグを追加します。最大 50 個のタグを追加できます。
-
テストレポート結果の raw データを Amazon S3 バケットにアップロードする場合は、次のようにします。
-
[Amazon S3 にエクスポート] を選択します。
-
[S3 bucket name (S3 バケット名)] に、S3 バケットの名前を入力します。
-
(オプション)S3 バケット所有者で S3 バケットを所有するアカウントの AWS アカウント識別子を入力します。これにより、レポートデータを、ビルドを実行しているアカウント以外のアカウントが所有する Amazon S3 バケットにエクスポートできます。
-
[Path prefix (パスプレフィックス)] に、テスト結果をアップロードする S3 バケットのパスを入力します。
-
生のテスト結果データファイルを圧縮するには、[Compress test result data in a zip file (テスト結果データを圧縮する)] を選択します。
-
[Additional configuration (追加の設定)] を展開して、暗号化オプションを表示します。以下のうちのひとつを選択します。
-
Amazon S3 の AWS マネージドキー を使用するためのデフォルトの AWS 管理のキー。詳細については、AWS Key Management Service ユーザーガイドの「カスタマー マネージド CMKs」を参照してください。これはデフォルトの暗号化オプションです。
-
カスタムキーを選択して、ユーザーが作成して設定するカスタマー管理のキーを使用します。AWS KMS 暗号化キーの場合は、暗号化キーの ARN を入力します。形式は
arn:aws:kms:
です。詳細については、AWS Key Management Service ユーザーガイドの「KMS キーの作成」を参照してください。<region-id>
:<aws-account-id>
:key/<key-id>
-
暗号化を無効にするには、アーティファクト暗号化を無効にします。テスト結果を共有したり、静的ウェブサイトに公開したりする場合は、このオプションを選択します。(動的ウェブサイトでは、テスト結果を復号化するコードを実行できます)。
保管時の暗号化の詳細については、「データの暗号化」を参照してください。
-
注記
プロジェクトで指定した CodeBuild サービスロールは、S3 バケットにアップロードするアクセス許可に使用されます。
-
-
[Create report group (レポートグループを作成)] を選択します。
レポートグループの作成 (CLI)
次の手順で、AWS CLI を使用してレポートグループを作成します。
レポートグループの作成
-
CreateReportGroup.json
という名前のファイルを作成します。 -
要件に応じて、以下の JSON コードスニペットのいずれかを
CreateReportGroup.json
にコピーします。-
次の JSON を使用して、テストレポートグループが生のテスト結果ファイルを Amazon S3 バケットにエクスポートするように指定します。
{ "name": "
<report-name>
", "type": "TEST", "exportConfig": { "exportConfigType": "S3", "s3Destination": { "bucket": "<bucket-name>
", "bucketOwner": "<bucket-owner>
", "path": "<path>
", "packaging": "NONE | ZIP", "encryptionDisabled": "false", "encryptionKey": "<your-key>
" }, "tags": [ { "key": "tag-key", "value": "tag-value" } ] } }-
<bucket-name>
を Amazon S3 バケット名に、<path>
をファイルをエクスポートするバケット内のパスに置き換えます。 -
エクスポートされたファイルを
packaging
に圧縮する場合は、ZIP
を指定します。それ以外の場合は、NONE
を指定します。 -
bucketOwner
はオプションで、Amazon S3 バケットがビルドを実行しているアカウント以外のアカウントによって所有されている場合にのみ必要です。 -
エクスポートされたファイルを暗号化するかどうかを指定するために
encryptionDisabled
を使用します。エクスポートしたファイルを暗号化する場合は、カスタマー管理のキーを入力します。詳細については、「レポートグループの更新」を参照してください。
-
-
次の JSON を使用して、テストレポートで生のテストファイルをエクスポートしないように指定します。
{ "name": "
<report-name>
", "type": "TEST", "exportConfig": { "exportConfigType": "NO_EXPORT" } }
注記
プロジェクトで指定した CodeBuild サービスロールは、S3 バケットにアップロードするアクセス許可に使用されます。
-
-
次のコマンドを実行します。
aws codebuild create-report-group --cli-input-json file://CreateReportGroupInput.json
レポートグループの作成 (AWS CloudFormation)
AWS CloudFormation テンプレートを使用してレポートグループを作成するには、次の手順に従います。
AWS CloudFormation テンプレートを使用してレポートグループを作成するには
AWS CloudFormation テンプレートファイルを使用して、レポートグループを作成およびプロビジョニングできます。詳細については、AWS CloudFormation ユーザーガイドを参照してください。
次の AWS CloudFormation YAML テンプレートは、生のテスト結果ファイルをエクスポートしないレポートグループを作成します。
Resources:
CodeBuildReportGroup:
Type: AWS::CodeBuild::ReportGroup
Properties:
Name: my-report-group-name
Type: TEST
ExportConfig:
ExportConfigType: NO_EXPORT
次の AWS CloudFormation YAML テンプレートは、生のテスト結果ファイルを Amazon S3 バケットにエクスポートするレポートグループを作成します。
Resources:
CodeBuildReportGroup:
Type: AWS::CodeBuild::ReportGroup
Properties:
Name: my-report-group-name
Type: TEST
ExportConfig:
ExportConfigType: S3
S3Destination:
Bucket: amzn-s3-demo-bucket
Path: path-to-folder-for-exported-files
Packaging: ZIP
EncryptionKey: my-KMS-encryption-key
EncryptionDisabled: false
注記
プロジェクトで指定した CodeBuild サービスロールは、S3 バケットにアップロードする許可に使用されます。