CodeBuild 使用範例 AWS CLI - AWS Command Line Interface

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

CodeBuild 使用範例 AWS CLI

下列程式碼範例說明如何使用 AWS Command Line Interface 與來執行動作及實作常見案例 CodeBuild。

Actions 是大型程式的程式碼摘錄,必須在內容中執行。雖然動作會告訴您如何呼叫個別服務函數,但您可以在其相關情境和跨服務範例中查看內容中的動作。

Scenarios (案例) 是向您展示如何呼叫相同服務中的多個函數來完成特定任務的程式碼範例。

每個範例都包含一個連結 GitHub,您可以在其中找到如何在內容中設定和執行程式碼的指示。

主題

動作

下列程式碼範例會示範如何使用batch-delete-builds

AWS CLI

若要在中刪除組建 AWS CodeBuild。

下列batch-delete-builds範例會刪除 CodeBuild 具有指定 ID 的組建。

aws codebuild batch-delete-builds --ids my-build-project-one:a1b2c3d4-5678-9012-abcd-11111EXAMPLE my-build-project-two:a1b2c3d4-5678-9012-abcd-22222EXAMPLE

輸出:

{ "buildsNotDeleted": [ { "id": "arn:aws:codebuild:us-west-2:123456789012:build/my-build-project-one:a1b2c3d4-5678-9012-abcd-11111EXAMPLE", "statusCode": "BUILD_IN_PROGRESS" } ], "buildsDeleted": [ "arn:aws:codebuild:us-west-2:123456789012:build/my-build-project-two:a1b2c3d4-5678-9012-abcd-22222EXAMPLE" ] }

如需詳細資訊,請參閱AWS CodeBuild 使用者指南中的刪除組建 (AWS CLI)

下列程式碼範例會示範如何使用batch-get-build-batches

AWS CLI

若要在中檢視組建的詳細資料 AWS CodeBuild。

下列batch-get-build-batches範例會取得 CodeBuild 使用指定 ID 的組建批次相關資訊。

aws codebuild batch-get-build-batches \ --ids codebuild-demo-project:e9c4f4df-3f43-41d2-ab3a-60fe2EXAMPLE

輸出:

{ "buildBatches": [ { "id": "codebuild-demo-project:e9c4f4df-3f43-41d2-ab3a-60fe2EXAMPLE", "arn": "arn:aws:codebuild:us-west-2:123456789012:build-batch/codebuild-demo-project:e9c4f4df-3f43-41d2-ab3a-60fe2EXAMPLE", "startTime": "2020-11-03T21:52:20.775000+00:00", "endTime": "2020-11-03T21:56:59.784000+00:00", "currentPhase": "SUCCEEDED", "buildBatchStatus": "SUCCEEDED", "resolvedSourceVersion": "0a6546f68309560d08a310daac92314c4d378f6b", "projectName": "codebuild-demo-project", "phases": [ { "phaseType": "SUBMITTED", "phaseStatus": "SUCCEEDED", "startTime": "2020-11-03T21:52:20.775000+00:00", "endTime": "2020-11-03T21:52:20.976000+00:00", "durationInSeconds": 0 }, { "phaseType": "DOWNLOAD_BATCHSPEC", "phaseStatus": "SUCCEEDED", "startTime": "2020-11-03T21:52:20.976000+00:00", "endTime": "2020-11-03T21:52:57.401000+00:00", "durationInSeconds": 36 }, { "phaseType": "IN_PROGRESS", "phaseStatus": "SUCCEEDED", "startTime": "2020-11-03T21:52:57.401000+00:00", "endTime": "2020-11-03T21:56:59.751000+00:00", "durationInSeconds": 242 }, { "phaseType": "COMBINE_ARTIFACTS", "phaseStatus": "SUCCEEDED", "startTime": "2020-11-03T21:56:59.751000+00:00", "endTime": "2020-11-03T21:56:59.784000+00:00", "durationInSeconds": 0 }, { "phaseType": "SUCCEEDED", "startTime": "2020-11-03T21:56:59.784000+00:00" } ], "source": { "type": "GITHUB", "location": "https://github.com/my-repo/codebuild-demo-project.git", "gitCloneDepth": 1, "gitSubmodulesConfig": { "fetchSubmodules": false }, "reportBuildStatus": false, "insecureSsl": false }, "secondarySources": [], "secondarySourceVersions": [], "artifacts": { "location": "" }, "secondaryArtifacts": [], "cache": { "type": "NO_CACHE" }, "environment": { "type": "LINUX_CONTAINER", "image": "aws/codebuild/amazonlinux2-x86_64-standard:3.0", "computeType": "BUILD_GENERAL1_SMALL", "environmentVariables": [], "privilegedMode": false, "imagePullCredentialsType": "CODEBUILD" }, "logConfig": { "cloudWatchLogs": { "status": "ENABLED" }, "s3Logs": { "status": "DISABLED", "encryptionDisabled": false } }, "buildTimeoutInMinutes": 60, "queuedTimeoutInMinutes": 480, "complete": true, "initiator": "Strohm", "encryptionKey": "arn:aws:kms:us-west-2:123456789012:alias/aws/s3", "buildBatchNumber": 6, "buildBatchConfig": { "serviceRole": "arn:aws:iam::123456789012:role/service-role/codebuild-demo-project", "restrictions": { "maximumBuildsAllowed": 100 }, "timeoutInMins": 480 }, "buildGroups": [ { "identifier": "DOWNLOAD_SOURCE", "ignoreFailure": false, "currentBuildSummary": { "arn": "arn:aws:codebuild:us-west-2:123456789012:build/codebuild-demo-project:379737d8-bc35-48ec-97fd-776d27545315", "requestedOn": "2020-11-03T21:52:21.394000+00:00", "buildStatus": "SUCCEEDED", "primaryArtifact": { "type": "no_artifacts", "identifier": "DOWNLOAD_SOURCE" }, "secondaryArtifacts": [] } }, { "identifier": "linux_small", "dependsOn": [], "ignoreFailure": false, "currentBuildSummary": { "arn": "arn:aws:codebuild:us-west-2:123456789012:build/codebuild-demo-project:dd785171-ed84-4bb6-8ede-ceeb86e54bdb", "requestedOn": "2020-11-03T21:52:57.604000+00:00", "buildStatus": "SUCCEEDED", "primaryArtifact": { "type": "no_artifacts", "identifier": "linux_small" }, "secondaryArtifacts": [] } }, { "identifier": "linux_medium", "dependsOn": [ "linux_small" ], "ignoreFailure": false, "currentBuildSummary": { "arn": "arn:aws:codebuild:us-west-2:123456789012:build/codebuild-demo-project:97cf7bd4-5313-4786-8243-4aef350a1267", "requestedOn": "2020-11-03T21:54:18.474000+00:00", "buildStatus": "SUCCEEDED", "primaryArtifact": { "type": "no_artifacts", "identifier": "linux_medium" }, "secondaryArtifacts": [] } }, { "identifier": "linux_large", "dependsOn": [ "linux_medium" ], "ignoreFailure": false, "currentBuildSummary": { "arn": "arn:aws:codebuild:us-west-2:123456789012:build/codebuild-demo-project:60a194cd-0d03-4337-9db1-d41476a17d27", "requestedOn": "2020-11-03T21:55:39.203000+00:00", "buildStatus": "SUCCEEDED", "primaryArtifact": { "type": "no_artifacts", "identifier": "linux_large" }, "secondaryArtifacts": [] } } ] } ], "buildBatchesNotFound": [] }

如需詳細資訊,請參閱《使AWS CodeBuild 用指南》 AWS CodeBuild 中的「Batch 建置」。 < https://docs.aws.amazon.com/codebuild/latest/userguide/batch-build.html>

下列程式碼範例會示範如何使用batch-get-builds

AWS CLI

若要在中檢視組建的詳細資料 AWS CodeBuild。

下列batch-get-builds範例會取得有關使用指定 ID CodeBuild 的組建資訊。

aws codebuild batch-get-builds --ids codebuild-demo-project:e9c4f4df-3f43-41d2-ab3a-60fe2EXAMPLE codebuild-demo-project:815e755f-bade-4a7e-80f0-efe51EXAMPLE

輸出:

{ "buildsNotFound": [], "builds": [ { "artifacts": { "md5sum": "0e95edf915048a0c22efe6d139fff837", "location": "arn:aws:s3:::codepipeline-us-west-2-820783811474/CodeBuild-Python-Pip/BuildArtif/6DJsqQa", "encryptionDisabled": false, "sha256sum": "cfa0df33a090966a737f64ae4fe498969fdc842a0c9aec540bf93c37ac0d05a2" }, "logs": { "cloudWatchLogs": { "status": "ENABLED" }, "s3Logs": { "status": "DISABLED" }, "streamName": "46472baf-8f6b-43c2-9255-b3b963af2732", "groupName": "/aws/codebuild/codebuild-demo-project", "deepLink": "https://console.aws.amazon.com/cloudwatch/home?region=us-west-2#logEvent:group=/aws/codebuild/codebuild-demo-project;stream=46472baf-8f6b-43c2-9255-b3b963af2732" }, "timeoutInMinutes": 60, "environment": { "privilegedMode": false, "computeType": "BUILD_GENERAL1_MEDIUM", "image": "aws/codebuild/windows-base:1.0", "environmentVariables": [], "type": "WINDOWS_CONTAINER" }, "projectName": "codebuild-demo-project", "buildComplete": true, "source": { "gitCloneDepth": 1, "insecureSsl": false, "type": "CODEPIPELINE" }, "buildStatus": "SUCCEEDED", "secondaryArtifacts": [], "phases": [ { "durationInSeconds": 0, "startTime": 1548717462.122, "phaseType": "SUBMITTED", "endTime": 1548717462.484, "phaseStatus": "SUCCEEDED" }, { "durationInSeconds": 0, "startTime": 1548717462.484, "phaseType": "QUEUED", "endTime": 1548717462.775, "phaseStatus": "SUCCEEDED" }, { "durationInSeconds": 34, "endTime": 1548717496.909, "contexts": [ { "statusCode": "", "message": "" } ], "startTime": 1548717462.775, "phaseType": "PROVISIONING", "phaseStatus": "SUCCEEDED" }, { "durationInSeconds": 15, "endTime": 1548717512.555, "contexts": [ { "statusCode": "", "message": "" } ], "startTime": 1548717496.909, "phaseType": "DOWNLOAD_SOURCE", "phaseStatus": "SUCCEEDED" }, { "durationInSeconds": 0, "endTime": 1548717512.734, "contexts": [ { "statusCode": "", "message": "" } ], "startTime": 1548717512.555, "phaseType": "INSTALL", "phaseStatus": "SUCCEEDED" }, { "durationInSeconds": 0, "endTime": 1548717512.924, "contexts": [ { "statusCode": "", "message": "" } ], "startTime": 1548717512.734, "phaseType": "PRE_BUILD", "phaseStatus": "SUCCEEDED" }, { "durationInSeconds": 9, "endTime": 1548717522.254, "contexts": [ { "statusCode": "", "message": "" } ], "startTime": 1548717512.924, "phaseType": "BUILD", "phaseStatus": "SUCCEEDED" }, { "durationInSeconds": 3, "endTime": 1548717525.498, "contexts": [ { "statusCode": "", "message": "" } ], "startTime": 1548717522.254, "phaseType": "POST_BUILD", "phaseStatus": "SUCCEEDED" }, { "durationInSeconds": 9, "endTime": 1548717534.646, "contexts": [ { "statusCode": "", "message": "" } ], "startTime": 1548717525.498, "phaseType": "UPLOAD_ARTIFACTS", "phaseStatus": "SUCCEEDED" }, { "durationInSeconds": 2, "endTime": 1548717536.846, "contexts": [ { "statusCode": "", "message": "" } ], "startTime": 1548717534.646, "phaseType": "FINALIZING", "phaseStatus": "SUCCEEDED" }, { "startTime": 1548717536.846, "phaseType": "COMPLETED" } ], "startTime": 1548717462.122, "encryptionKey": "arn:aws:kms:us-west-2:123456789012:alias/aws/s3", "initiator": "codepipeline/CodeBuild-Pipeline", "secondarySources": [], "serviceRole": "arn:aws:iam::123456789012:role/service-role/my-codebuild-service-role", "currentPhase": "COMPLETED", "id": "codebuild-demo-project:e9c4f4df-3f43-41d2-ab3a-60fe2EXAMPLE", "cache": { "type": "NO_CACHE" }, "sourceVersion": "arn:aws:s3:::codepipeline-us-west-2-820783811474/CodeBuild-Python-Pip/SourceArti/1TspnN3.zip", "endTime": 1548717536.846, "arn": "arn:aws:codebuild:us-west-2:123456789012:build/codebuild-demo-project:e9c4f4df-3f43-41d2-ab3a-60fe2EXAMPLE", "queuedTimeoutInMinutes": 480, "resolvedSourceVersion": "f2194c1757bbdcb0f8f229254a4b3c8b27d43e0b" }, { "artifacts": { "md5sum": "", "overrideArtifactName": false, "location": "arn:aws:s3:::my-artifacts/codebuild-demo-project", "encryptionDisabled": false, "sha256sum": "" }, "logs": { "cloudWatchLogs": { "status": "ENABLED" }, "s3Logs": { "status": "DISABLED" }, "streamName": "4dea3ca4-20ec-4898-b22a-a9eb9292775d", "groupName": "/aws/codebuild/codebuild-demo-project", "deepLink": "https://console.aws.amazon.com/cloudwatch/home?region=us-west-2#logEvent:group=/aws/codebuild/codebuild-demo-project;stream=4dea3ca4-20ec-4898-b22a-a9eb9292775d" }, "timeoutInMinutes": 60, "environment": { "privilegedMode": false, "computeType": "BUILD_GENERAL1_MEDIUM", "image": "aws/codebuild/windows-base:1.0", "environmentVariables": [], "type": "WINDOWS_CONTAINER" }, "projectName": "codebuild-demo-project", "buildComplete": true, "source": { "gitCloneDepth": 1, "location": "https://github.com/my-repo/codebuild-demo-project.git", "insecureSsl": false, "reportBuildStatus": false, "type": "GITHUB" }, "buildStatus": "SUCCEEDED", "secondaryArtifacts": [], "phases": [ { "durationInSeconds": 0, "startTime": 1548716241.89, "phaseType": "SUBMITTED", "endTime": 1548716242.241, "phaseStatus": "SUCCEEDED" }, { "durationInSeconds": 0, "startTime": 1548716242.241, "phaseType": "QUEUED", "endTime": 1548716242.536, "phaseStatus": "SUCCEEDED" }, { "durationInSeconds": 33, "endTime": 1548716276.171, "contexts": [ { "statusCode": "", "message": "" } ], "startTime": 1548716242.536, "phaseType": "PROVISIONING", "phaseStatus": "SUCCEEDED" }, { "durationInSeconds": 15, "endTime": 1548716291.809, "contexts": [ { "statusCode": "", "message": "" } ], "startTime": 1548716276.171, "phaseType": "DOWNLOAD_SOURCE", "phaseStatus": "SUCCEEDED" }, { "durationInSeconds": 0, "endTime": 1548716291.993, "contexts": [ { "statusCode": "", "message": "" } ], "startTime": 1548716291.809, "phaseType": "INSTALL", "phaseStatus": "SUCCEEDED" }, { "durationInSeconds": 0, "endTime": 1548716292.191, "contexts": [ { "statusCode": "", "message": "" } ], "startTime": 1548716291.993, "phaseType": "PRE_BUILD", "phaseStatus": "SUCCEEDED" }, { "durationInSeconds": 9, "endTime": 1548716301.622, "contexts": [ { "statusCode": "", "message": "" } ], "startTime": 1548716292.191, "phaseType": "BUILD", "phaseStatus": "SUCCEEDED" }, { "durationInSeconds": 3, "endTime": 1548716304.783, "contexts": [ { "statusCode": "", "message": "" } ], "startTime": 1548716301.622, "phaseType": "POST_BUILD", "phaseStatus": "SUCCEEDED" }, { "durationInSeconds": 8, "endTime": 1548716313.775, "contexts": [ { "statusCode": "", "message": "" } ], "startTime": 1548716304.783, "phaseType": "UPLOAD_ARTIFACTS", "phaseStatus": "SUCCEEDED" }, { "durationInSeconds": 2, "endTime": 1548716315.935, "contexts": [ { "statusCode": "", "message": "" } ], "startTime": 1548716313.775, "phaseType": "FINALIZING", "phaseStatus": "SUCCEEDED" }, { "startTime": 1548716315.935, "phaseType": "COMPLETED" } ], "startTime": 1548716241.89, "secondarySourceVersions": [], "initiator": "my-codebuild-project", "arn": "arn:aws:codebuild:us-west-2:123456789012:build/codebuild-demo-project:815e755f-bade-4a7e-80f0-efe51EXAMPLE", "encryptionKey": "arn:aws:kms:us-west-2:123456789012:alias/aws/s3", "serviceRole": "arn:aws:iam::123456789012:role/service-role/my-codebuild-service-role", "currentPhase": "COMPLETED", "id": "codebuild-demo-project:815e755f-bade-4a7e-80f0-efe51EXAMPLE", "cache": { "type": "NO_CACHE" }, "endTime": 1548716315.935, "secondarySources": [], "queuedTimeoutInMinutes": 480, "resolvedSourceVersion": "f2194c1757bbdcb0f8f229254a4b3c8b27d43e0b" } ] }

如需詳細資訊,請參閱AWS CodeBuild 使用者指南中的檢視組建詳細資料 (AWS CLI)

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考BatchGetBuilds中的。

下列程式碼範例會示範如何使用batch-get-projects

AWS CLI

獲取 AWS CodeBuild 構建項目名稱的列表。

下列batch-get-projects範例會取得依名稱指定的 CodeBuild 建置專案清單。

aws codebuild batch-get-projects --names codebuild-demo-project codebuild-demo-project2 my-other-demo-project

在下列輸出中,projectsNotFound陣列會列出指定但找不到的任何建置專案名稱。projects 陣列會列出每個找到資訊的組建專案詳細資訊。

{ "projectsNotFound": [], "projects": [ { "encryptionKey": "arn:aws:kms:us-west-2:123456789012:alias/aws/s3", "name": "codebuild-demo-project2", "queuedTimeoutInMinutes": 480, "timeoutInMinutes": 60, "source": { "buildspec": "version: 0.2\n\n#env:\n #variables:\n # key: \"value\"\n # key: \"value\"\n #parameter-store:\n # key: \"value\"\n # key:\"value\"\n\nphases:\n #install:\n #commands:\n # - command\n # - command\n #pre_build:\n #commands:\n # - command\n # - command\n build:\n commands:\n # - command\n # - command\n #post_build:\n #commands:\n # - command\n # - command\n#artifacts:\n #files:\n # - location\n # - location\n #name: $(date +%Y-%m-%d)\n #discard-paths: yes\n #base-directory: location\n#cache:\n #paths:\n # - paths", "type": "NO_SOURCE", "insecureSsl": false, "gitCloneDepth": 1 }, "artifacts": { "type": "NO_ARTIFACTS" }, "badge": { "badgeEnabled": false }, "lastModified": 1540588091.108, "created": 1540588091.108, "arn": "arn:aws:codebuild:us-west-2:123456789012:project/test-for-sample", "secondarySources": [], "secondaryArtifacts": [], "cache": { "type": "NO_CACHE" }, "serviceRole": "arn:aws:iam::123456789012:role/service-role/my-test-role", "environment": { "image": "aws/codebuild/java:openjdk-8", "privilegedMode": true, "type": "LINUX_CONTAINER", "computeType": "BUILD_GENERAL1_SMALL", "environmentVariables": [] }, "tags": [] }, { "encryptionKey": "arn:aws:kms:us-west-2:123456789012:alias/aws/s3", "name": "my-other-demo-project", "queuedTimeoutInMinutes": 480, "timeoutInMinutes": 60, "source": { "location": "https://github.com/iversonic/codedeploy-sample.git", "reportBuildStatus": false, "buildspec": "buildspec.yml", "insecureSsl": false, "gitCloneDepth": 1, "type": "GITHUB", "auth": { "type": "OAUTH" } }, "artifacts": { "type": "NO_ARTIFACTS" }, "badge": { "badgeEnabled": false }, "lastModified": 1523401711.73, "created": 1523401711.73, "arn": "arn:aws:codebuild:us-west-2:123456789012:project/Project2", "cache": { "type": "NO_CACHE" }, "serviceRole": "arn:aws:iam::123456789012:role/service-role/codebuild-Project2-service-role", "environment": { "image": "aws/codebuild/nodejs:4.4.7", "privilegedMode": false, "type": "LINUX_CONTAINER", "computeType": "BUILD_GENERAL1_SMALL", "environmentVariables": [] }, "tags": [] } ] }

如需詳細資訊,請參閱AWS CodeBuild 使用者指南的檢視組建專案的詳細資料 (AWS CLI)

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考BatchGetProjects中的。

下列程式碼範例會示範如何使用batch-get-report-groups

AWS CLI

若要取得中一或多個報表群組的相關資訊 AWS CodeBuild。

下列batch-get-report-groups範例會擷取具有指定 ARN 之報表群組的相關資訊。

aws codebuild batch-get-report-groups \ --report-group-arns arn:aws:codebuild:<region-ID>:<user-ID>:report-group/<report-group-name>

輸出:

{ "reportGroups": [ { "arn": "arn:aws:codebuild:<region-ID>:<user-ID>:report-group/<report-group-name>", "name": "report-group-name", "type": "TEST", "exportConfig": { "exportConfigType": "NO_EXPORT" }, "created": "2020-10-01T18:04:08.466000+00:00", "lastModified": "2020-10-01T18:04:08.466000+00:00", "tags": [] } ], "reportGroupsNotFound": [] }

如需詳細資訊,請參閱《使用指南》中的〈AWS CodeBuild 使用報表群組

下列程式碼範例會示範如何使用batch-get-reports

AWS CLI

若要取得中的一或多個報告的相關資訊 AWS CodeBuild。

下列batch-get-reports範例會擷取具有指定 ARN 之報表的相關資訊。

aws codebuild batch-get-reports \ --report-arns arn:aws:codebuild:<region-ID>:<user-ID>:report/<report-group-name>:<report 1 ID> arn:aws:codebuild:<region-ID>:<user-ID>:report/<report-group-name>:<report 2 ID>

輸出:

{ "reports": [ { "arn": "arn:aws:codebuild:<region-ID>:<user-ID>:report/<report-group-name>:<report 1 ID>", "type": "TEST", "name": "<report-group-name>", "reportGroupArn": "arn:aws:codebuild:<region-ID>:<user-ID>:report-group/<report-group-name>", "executionId": "arn:aws:codebuild:<region-ID>:<user-ID>:build/test-reports:<ID>", "status": "FAILED", "created": "2020-10-01T11:25:22.531000-07:00", "expired": "2020-10-31T11:25:22-07:00", "exportConfig": { "exportConfigType": "NO_EXPORT" }, "truncated": false, "testSummary": { "total": 28, "statusCounts": { "ERROR": 5, "FAILED": 1, "SKIPPED": 4, "SUCCEEDED": 18, "UNKNOWN": 0 }, "durationInNanoSeconds": 94000000 } }, { "arn": "arn:aws:codebuild:<region-ID>:<user-ID>:report/<report-group-name>:<report 2 ID>", "type": "TEST", "name": "<report-group-name>", "reportGroupArn": "arn:aws:codebuild:<region-ID>:<user-ID>:report-group/<report-group-name>", "executionId": "arn:aws:codebuild:<region-ID>:<user-ID>:build/test-reports:<ID>", "status": "FAILED", "created": "2020-10-01T11:13:05.816000-07:00", "expired": "2020-10-31T11:13:05-07:00", "exportConfig": { "exportConfigType": "NO_EXPORT" }, "truncated": false, "testSummary": { "total": 28, "statusCounts": { "ERROR": 5, "FAILED": 1, "SKIPPED": 4, "SUCCEEDED": 18, "UNKNOWN": 0 }, "durationInNanoSeconds": 94000000 } } ], "reportsNotFound": [] }

若要取得更多資訊,請參閱《使用指南》中的〈AWS CodeBuild 使用報告

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考BatchGetReports中的。

下列程式碼範例會示範如何使用create-project

AWS CLI

範例 1:建立 AWS CodeBuild 建置專案

下列create-project範例使用 S3 儲存貯體的原始碼檔案 CodeBuild 建立建置專案

aws codebuild create-project \ --name "my-demo-project" \ --source "{\"type\": \"S3\",\"location\": \"codebuild-us-west-2-123456789012-input-bucket/my-source.zip\"}" \ --artifacts {"\"type\": \"S3\",\"location\": \"codebuild-us-west-2-123456789012-output-bucket\""} \ --environment "{\"type\": \"LINUX_CONTAINER\",\"image\": \"aws/codebuild/standard:1.0\",\"computeType\": \"BUILD_GENERAL1_SMALL\"}" \ --service-role "arn:aws:iam::123456789012:role/service-role/my-codebuild-service-role"

輸出:

{ "project": { "arn": "arn:aws:codebuild:us-west-2:123456789012:project/my-demo-project", "name": "my-cli-demo-project", "encryptionKey": "arn:aws:kms:us-west-2:123456789012:alias/aws/s3", "serviceRole": "arn:aws:iam::123456789012:role/service-role/my-codebuild-service-role", "lastModified": 1556839783.274, "badge": { "badgeEnabled": false }, "queuedTimeoutInMinutes": 480, "environment": { "image": "aws/codebuild/standard:1.0", "computeType": "BUILD_GENERAL1_SMALL", "type": "LINUX_CONTAINER", "imagePullCredentialsType": "CODEBUILD", "privilegedMode": false, "environmentVariables": [] }, "artifacts": { "location": "codebuild-us-west-2-123456789012-output-bucket", "name": "my-cli-demo-project", "namespaceType": "NONE", "type": "S3", "packaging": "NONE", "encryptionDisabled": false }, "source": { "type": "S3", "location": "codebuild-us-west-2-123456789012-input-bucket/my-source.zip", "insecureSsl": false }, "timeoutInMinutes": 60, "cache": { "type": "NO_CACHE" }, "created": 1556839783.274 } }

範例 2:使用參數的 JSON 輸入檔案 AWS CodeBuild 建立建置專案

下列create-project範例會在 JSON 輸入檔案中傳遞所有必要參數,藉此 CodeBuild 建立組建專案。透過僅在執行指令的情況下建立輸入檔案範本--generate-cli-skeleton parameter

aws codebuild create-project --cli-input-json file://create-project.json

輸入的 JSON 檔案create-project.json包含下列內容:

{ "name": "codebuild-demo-project", "source": { "type": "S3", "location": "codebuild-region-ID-account-ID-input-bucket/MessageUtil.zip" }, "artifacts": { "type": "S3", "location": "codebuild-region-ID-account-ID-output-bucket" }, "environment": { "type": "LINUX_CONTAINER", "image": "aws/codebuild/standard:1.0", "computeType": "BUILD_GENERAL1_SMALL" }, "serviceRole": "serviceIAMRole" }

輸出:

{ "project": { "name": "codebuild-demo-project", "serviceRole": "serviceIAMRole", "tags": [], "artifacts": { "packaging": "NONE", "type": "S3", "location": "codebuild-region-ID-account-ID-output-bucket", "name": "message-util.zip" }, "lastModified": 1472661575.244, "timeoutInMinutes": 60, "created": 1472661575.244, "environment": { "computeType": "BUILD_GENERAL1_SMALL", "image": "aws/codebuild/standard:1.0", "type": "LINUX_CONTAINER", "environmentVariables": [] }, "source": { "type": "S3", "location": "codebuild-region-ID-account-ID-input-bucket/MessageUtil.zip" }, "encryptionKey": "arn:aws:kms:region-ID:account-ID:alias/aws/s3", "arn": "arn:aws:codebuild:region-ID:account-ID:project/codebuild-demo-project" } }

如需詳細資訊,請參閱AWS CodeBuild 使用者指南中的建立組建專案 (AWS CLI)

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考CreateProject中的。

下列程式碼範例會示範如何使用create-report-group

AWS CLI

若要在中建立報表群組 AWS CodeBuild。

下列create-report-group範例會建立新的報表群組。

aws codebuild create-report-group \ --cli-input-json file://create-report-group-source.json

create-report-group-source.json 的內容:

{ "name": "cli-created-report-group", "type": "TEST", "exportConfig": { "exportConfigType": "S3", "s3Destination": { "bucket": "my-s3-bucket", "path": "", "packaging": "ZIP", "encryptionDisabled": true } } }

輸出:

{ "reportGroup": { "arn": "arn:aws:codebuild:<region-ID>:<user-ID>:report-group/cli-created-report-group", "name": "cli-created-report-group", "type": "TEST", "exportConfig": { "exportConfigType": "S3", "s3Destination": { "bucket": "my-s3-bucket", "path": "", "packaging": "ZIP", "encryptionDisabled": true } }, "created": 1602020026.775, "lastModified": 1602020026.775 } }

如需詳細資訊,請參閱《使用指南》中的〈AWS CodeBuild 使用報表群組

下列程式碼範例會示範如何使用create-webhook

AWS CLI

若要為專案建立網路掛接篩選器 AWS CodeBuild

下列create-webhook範例會為名為具有兩個篩選群組my-project的 CodeBuild 專案建立 webhook。第一個篩選群組指定在分支上建立、更新或重新開啟的提取請求,並且這些分支的 Git 參考名稱符合規則表達式 ^refs/heads/master$,而標頭參考符合 ^refs/heads/myBranch$。第二個篩選器群組會指定 Git 參考名稱與規則運算式不符的分支上的推送要求^refs/heads/myBranch$

aws codebuild create-webhook \ --project-name my-project \ --filter-groups "[[{\"type\":\"EVENT\",\"pattern\":\"PULL_REQUEST_CREATED, PULL_REQUEST_UPDATED, PULL_REQUEST_REOPENED\"},{\"type\":\"HEAD_REF\",\"pattern\":\"^refs/heads/myBranch$\",\"excludeMatchedPattern\":true},{\"type\":\"BASE_REF\",\"pattern\":\"^refs/heads/master$\",\"excludeMatchedPattern\":true}],[{\"type\":\"EVENT\",\"pattern\":\"PUSH\"},{\"type\":\"HEAD_REF\",\"pattern\":\"^refs/heads/myBranch$\",\"excludeMatchedPattern\":true}]]"

輸出:

{ "webhook": { "payloadUrl": "https://codebuild.us-west-2.amazonaws.com/webhooks?t=eyJlbmNyeXB0ZWREYXRhIjoiVVl5MGtoeGRwSzZFRXl2Wnh4bld1Z0tKZ291TVpQNEtFamQ3RDlDYWpRaGIreVFrdm9EQktIVk1NeHJEWEpmUDUrVUNOMUIyRHJRc1VxcHJ6QlNDSnljPSIsIml2UGFyYW1ldGVyU3BlYyI6InN4Tm1SeUt5MUhaUVRWbGciLCJtYXRlcmlhbFNldFNlcmlhbCI6MX0%3D&v=1", "url": "https://api.github.com/repos/iversonic/codedeploy-sample/hooks/105190656", "lastModifiedSecret": 1556311319.069, "filterGroups": [ [ { "type": "EVENT", "pattern": "PULL_REQUEST_CREATED, PULL_REQUEST_UPDATED, PULL_REQUEST_REOPENED", "excludeMatchedPattern": false }, { "type": "HEAD_REF", "pattern": "refs/heads/myBranch$", "excludeMatchedPattern": true }, { "type": "BASE_REF", "pattern": "refs/heads/master$", "excludeMatchedPattern": true } ], [ { "type": "EVENT", "pattern": "PUSH", "excludeMatchedPattern": false }, { "type": "HEAD_REF", "pattern": "refs/heads/myBranch$", "excludeMatchedPattern": true } ] ] } }

如需詳細資訊,請參閱AWS CodeBuild 使用指南中的篩選 GitHub Webhook 事件 (SDK)

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考CreateWebhook中的。

下列程式碼範例會示範如何使用delete-build-batch

AWS CLI

若要在中刪除批次組建 AWS CodeBuild。

下列delete-build-batch範例會刪除指定的批次建置。

aws codebuild delete-build-batch \ --id <project-name>:<batch-ID>

輸出:

{ "statusCode": "BATCH_DELETED", "buildsDeleted": [ "arn:aws:codebuild:<region-ID>:<account-ID>:build/<project-name>:<build-ID>", "arn:aws:codebuild:<region-ID>:<account-ID>:build/<project-name>:<build-ID>", "arn:aws:codebuild:<region-ID>:<account-ID>:build/<project-name>:<build-ID>", "arn:aws:codebuild:<region-ID>:<account-ID>:build/<project-name>:<build-ID>" ], "buildsNotDeleted": [] }

如需詳細資訊,請參閱《AWS CodeBuild 使用指南》 AWS CodeBuild中的「Batch 組建」。

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考DeleteBuildBatch中的。

下列程式碼範例會示範如何使用delete-project

AWS CLI

若要刪除組 AWS CodeBuild 建專案

下列delete-project範例會刪除指定的 CodeBuild 建置專案。

aws codebuild delete-project --name my-project

此命令不會產生輸出。

如需詳細資訊,請參閱AWS CodeBuild 使用者指南中的刪除組建專案 (AWS CLI)

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考DeleteProject中的。

下列程式碼範例會示範如何使用delete-report-group

AWS CLI

若要刪除中的報表群組 AWS CodeBuild。

下列delete-report-group範例會刪除具有指定 ARN 的報表群組。

aws codebuild delete-report-group \ --arn arn:aws:codebuild:<region-ID>:<user-ID>:report-group/<report-group-name>

此命令不會產生輸出。

如需詳細資訊,請參閱《使用指南》中的〈AWS CodeBuild 使用報表群組

下列程式碼範例會示範如何使用delete-report

AWS CLI

若要刪除中的報告 AWS CodeBuild。

下列delete-report範例會刪除指定的報表。

aws codebuild delete-report \ --arn arn:aws:codebuild:<region-ID>:<account-ID>:report/<report-group-name>:<report-ID>

此命令不會產生輸出。

若要取得更多資訊,請參閱《使用指南》中的〈AWS CodeBuild 使用報告

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考DeleteReport中的。

下列程式碼範例會示範如何使用delete-source-credentials

AWS CLI

斷開與源提供程序的連接並刪除其訪問令牌。

下列delete-source-credentials範例會中斷與來源提供者的連線,並移除其 Token。用來連線至來源提供者的來源證明資料 ARN 會決定哪些來源證明資料。

aws codebuild delete-source-credentials --arn arn-of-your-credentials

輸出:

{ "arn": "arn:aws:codebuild:your-region:your-account-id:token/your-server-type" }

如需詳細資訊,請參閱AWS CodeBuild 使用者指南中的使用存取權杖 Connect 來源提供者 (CLI)

下列程式碼範例會示範如何使用delete-webhook

AWS CLI

若要從專案中刪除網路掛接篩選 AWS CodeBuild

下列delete-webhook範例會從指定的 CodeBuild 專案中刪除 Webhook。

aws codebuild delete-webhook --project-name my-project

此命令不會產生輸出。

如需詳細資訊,請參閱AWS CodeBuild 使用指南中的自動停止執行組建 (AWS CLI)

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考DeleteWebhook中的。

下列程式碼範例會示範如何使用describe-code-coverages

AWS CLI

要獲取有關代碼覆蓋率測試結果的詳細信息 AWS CodeBuild。

下列範describe-code-coverages例會取得指定報表中程式碼涵蓋範圍測試結果的相關資訊。

aws codebuild describe-code-coverages \ --report-arn arn:aws:codebuild:<region-ID>:<account-ID>:report/<report-group-name>:<report-ID>

輸出:

{ "codeCoverages": [ { "id": "20a0adcc-db13-4b66-804b-ecaf9f852855", "reportARN": "arn:aws:codebuild:<region-ID>:972506530580:report/<report-group-name>:<report-ID>", "filePath": "<source-file-1-path>", "lineCoveragePercentage": 83.33, "linesCovered": 5, "linesMissed": 1, "branchCoveragePercentage": 50.0, "branchesCovered": 1, "branchesMissed": 1, "expired": "2020-11-20T21:22:45+00:00" }, { "id": "0887162d-bf57-4cf1-a164-e432373d1a83", "reportARN": "arn:aws:codebuild:<region-ID>:972506530580:report/<report-group-name>:<report-ID>", "filePath": "<source-file-2-path>", "lineCoveragePercentage": 90.9, "linesCovered": 10, "linesMissed": 1, "branchCoveragePercentage": 50.0, "branchesCovered": 1, "branchesMissed": 1, "expired": "2020-11-20T21:22:45+00:00" } ] }

如需詳細資訊,請參閱AWS CodeBuild 使用指南中的程式碼涵蓋範圍報告

下列程式碼範例會示範如何使用describe-test-cases

AWS CLI

若要取得中測試案例的詳細資訊 AWS CodeBuild。

下列describe-test-cases範例會取得指定報表中測試案例的相關資訊。

aws codebuild describe-test-cases \ --report-arn arn:aws:codebuild:<region-ID>:<account-ID>:report/<report-group-name>:<report-ID>

輸出:

{ "testCases": [ { "reportArn": "arn:aws:codebuild:<region-ID>:<account-ID>:report/<report-group-name>:<report-ID>", "testRawDataPath": "<test-report-path>", "prefix": "NUnit.Tests.Assemblies.MockTestFixture", "name": "NUnit.Tests.Assemblies.MockTestFixture.NotRunnableTest", "status": "ERROR", "durationInNanoSeconds": 0, "message": "No arguments were provided\n", "expired": "2020-11-20T17:52:10+00:00" }, { "reportArn": "arn:aws:codebuild:<region-ID>:<account-ID>:report/<report-group-name>:<report-ID>", "testRawDataPath": "<test-report-path>", "prefix": "NUnit.Tests.Assemblies.MockTestFixture", "name": "NUnit.Tests.Assemblies.MockTestFixture.TestWithException", "status": "ERROR", "durationInNanoSeconds": 0, "message": "System.ApplicationException : Intentional Exception\nat NUnit.Tests.Assemblies.MockTestFixture.MethodThrowsException()\nat NUnit.Tests.Assemblies.MockTestFixture.TestWithException()\n\n", "expired": "2020-11-20T17:52:10+00:00" } ] }

如需詳細資訊,請參閱《使用指南》 AWS CodeBuild中的〈AWS CodeBuild 使用測試報告

下列程式碼範例會示範如何使用import-source-credentials

AWS CLI

匯入來源提供 AWS CodeBuild 者的認證,將使用者 Connect 至來源提供者。

下列import-source-credentials範例會為使用 BASIC_AUTH 做為其驗證類型的 Bitbucket 儲存庫匯入權杖。

aws codebuild import-source-credentials --server-type BITBUCKET --auth-type BASIC_AUTH --token my-Bitbucket-password --username my-Bitbucket-username

輸出:

{ "arn": "arn:aws:codebuild:us-west-2:123456789012:token/bitbucket" }

如需詳細資訊,請參閱AWS CodeBuild 使用者指南中的使用存取權杖 Connect 來源提供者 (CLI)

下列程式碼範例會示範如何使用invalidate-project-cache

AWS CLI

若要重設 AWS CodeBuild 建置專案的快取。

下列invalidate-project-cache範例會重設指定 CodeBuild 專案的快取。

aws codebuild invalidate-project-cache --project-name my-project

此命令不會產生輸出。

如需詳細資訊,請參閱《使用指南》 CodeBuild中的AWS CodeBuild 〈組建快取

下列程式碼範例會示範如何使用list-build-batches-for-project

AWS CLI

若要在中列出特定建置專案的批次建置 AWS CodeBuild。

下列list-build-batches-for-project範例會列出指定專案的 CodeBuild 批次建置。

aws codebuild list-build-batches-for-project \ --project-name "<project-name>"

輸出:

{ "ids": [ "<project-name>:<batch-ID>", "<project-name>:<batch-ID>" ] }

如需詳細資訊,請參閱《AWS CodeBuild 使用指南》 AWS CodeBuild中的「Batch 組建」。

下列程式碼範例會示範如何使用list-build-batches

AWS CLI

若要列出批次組建 AWS CodeBuild。

下列list-build-batches範例會列出目前帳戶的 CodeBuild 批次建置。

aws codebuild list-build-batches

輸出:

{ "ids": [ "<project-name>:<batch-ID>", "<project-name>:<batch-ID>" ] }

如需詳細資訊,請參閱《使AWS CodeBuild 用指南》 AWS CodeBuild 中的「Batch 建置」。 < https://docs.aws.amazon.com/codebuild/latest/userguide/batch-build.html>

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考ListBuildBatches中的。

下列程式碼範例會示範如何使用list-builds-for-project

AWS CLI

若要檢視組 AWS CodeBuild 建專案的組建清單。

下列list-builds-for-project範例會針對指定的建置專案,以遞減順序列出 CodeBuild 組建 ID。

aws codebuild list-builds-for-project --project-name codebuild-demo-project --sort-order DESCENDING

輸出:

{ "ids": [ "codebuild-demo-project:1a2b3c4d-5678-90ab-cdef-11111example", "codebuild-demo-project:1a2b3c4d-5678-90ab-cdef-22222example", "codebuild-demo-project:1a2b3c4d-5678-90ab-cdef-33333example", "codebuild-demo-project:1a2b3c4d-5678-90ab-cdef-44444example", "codebuild-demo-project:1a2b3c4d-5678-90ab-cdef-55555example" ] }

如需詳細資訊,請參閱AWS CodeBuild 使用者指南的檢視組建專案的組建 ID 清單 (AWS CLI)

下列程式碼範例會示範如何使用list-builds

AWS CLI

若要取得 AWS CodeBuild 組建 ID 的清單。

下列list-builds範例會取得以遞增順序排序的 CodeBuild ID 清單。

aws codebuild list-builds --sort-order ASCENDING

輸出包括一個nextToken值,表示有更多可用的輸出。

{ "nextToken": "4AEA6u7J...The full token has been omitted for brevity...MzY2OA==", "ids": [ "codebuild-demo-project:815e755f-bade-4a7e-80f0-efe51EXAMPLE" "codebuild-demo-project:84a7f3d1-d40e-4956-b4cf-7a9d4EXAMPLE" ... The full list of build IDs has been omitted for brevity ... "codebuild-demo-project:931d0b72-bf6f-4040-a472-5c707EXAMPLE" ] }

再次執行此命令,並提供上一個回應中的nextToken值做為參數,以取得輸出的下一部分。重複此步驟,直到您沒有收到回應中的nextToken值為止。

aws codebuild list-builds --sort-order ASCENDING --next-token 4AEA6u7J...The full token has been omitted for brevity...MzY2OA==

輸出的下一部分:

{ "ids": [ "codebuild-demo-project:49015049-21cf-4b50-9708-df115EXAMPLE", "codebuild-demo-project:543e7206-68a3-46d6-a4da-759abEXAMPLE", ... The full list of build IDs has been omitted for brevity ... "codebuild-demo-project:c282f198-4582-4b38-bdc0-26f96EXAMPLE" ] }

如需詳細資訊,請參閱AWS CodeBuild 使用者指南的檢視組建 ID 清單 (AWS CLI)

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考ListBuilds中的。

下列程式碼範例會示範如何使用list-curated-environment-images

AWS CLI

若要取得可用於組建的 Docker 映像檔清單。 AWS CodeBuild

下列list-curated-environment-images範例會列出由管理且可用於組建 CodeBuild 的 Docker 映像檔。 :

aws codebuild list-curated-environment-images

輸出:

{ "platforms": [ { "platform": "AMAZON_LINUX", "languages": [ { "language": "JAVA", "images": [ { "description": "AWS ElasticBeanstalk - Java 7 Running on Amazon Linux 64bit v2.1.3", "name": "aws/codebuild/eb-java-7-amazonlinux-64:2.1.3", "versions": [ "aws/codebuild/eb-java-7-amazonlinux-64:2.1.3-1.0.0" ] }, { "description": "AWS ElasticBeanstalk - Java 8 Running on Amazon Linux 64bit v2.1.3", "name": "aws/codebuild/eb-java-8-amazonlinux-64:2.1.3", "versions": [ "aws/codebuild/eb-java-8-amazonlinux-64:2.1.3-1.0.0" ] }, ... LIST TRUNCATED FOR BREVITY ... ] } ] } ] }

如需詳細資訊,請參閱AWS CodeBuild 使用者指南中提供 CodeBuild的 Docker 影像

下列程式碼範例會示範如何使用list-projects

AWS CLI

獲取 AWS CodeBuild 構建項目名稱的列表。

下列list-projects範例會取得依名稱遞增順序排序的 CodeBuild 建置專案清單。

aws codebuild list-projects --sort-by NAME --sort-order ASCENDING

輸出包括一個nextToken值,表示有更多可用的輸出。

{ "nextToken": "Ci33ACF6...The full token has been omitted for brevity...U+AkMx8=", "projects": [ "codebuild-demo-project", "codebuild-demo-project2", ... The full list of build project names has been omitted for brevity ... "codebuild-demo-project99" ] }

再次執行此命令,並提供上一個回應中的nextToken值作為參數,以取得輸出的下一部分。重複此步驟,直到您沒有收到回應中的nextToken值為止。

aws codebuild list-projects --sort-by NAME --sort-order ASCENDING --next-token Ci33ACF6...The full token has been omitted for brevity...U+AkMx8= { "projects": [ "codebuild-demo-project100", "codebuild-demo-project101", ... The full list of build project names has been omitted for brevity ... "codebuild-demo-project122" ] }

如需詳細資訊,請參閱AWS CodeBuild 使用者指南的檢視組建專案名稱清單 (AWS CLI)

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考ListProjects中的。

下列程式碼範例會示範如何使用list-report-groups

AWS CLI

若要取得中 AWS CodeBuild報表群組 ARN 的清單。

下列list-report-groups範例會擷取區域中帳戶的報表群組 ARN。

aws codebuild list-report-groups

輸出:

{ "reportGroups": [ "arn:aws:codebuild:<region-ID>:<user-ID>:report-group/report-group-1", "arn:aws:codebuild:<region-ID>:<user-ID>:report-group/report-group-2", "arn:aws:codebuild:<region-ID>:<user-ID>:report-group/report-group-3" ] }

如需詳細資訊,請參閱《使用指南》中的〈AWS CodeBuild 使用報表群組

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考ListReportGroups中的。

下列程式碼範例會示範如何使用list-reports-for-report-group

AWS CLI

若要取得中報表群組中的報表清單 AWS CodeBuild。

下列list-report-for-report-groups範例會針對區域中帳戶擷取指定報表群組中的報表。

aws codebuild list-reports-for-report-group \ --report-group-arn arn:aws:codebuild:<region-ID>:<user-ID>:report-group/<report-group-name>

輸出:

{ "reports": [ "arn:aws:codebuild:<region-ID>:<user-ID>:report/report-1", "arn:aws:codebuild:<region-ID>:<user-ID>:report/report-2", "arn:aws:codebuild:<region-ID>:<user-ID>:report/report-3" ] }

如需詳細資訊,請參閱《使用指南》中的〈AWS CodeBuild 使用報表群組

下列程式碼範例會示範如何使用list-reports

AWS CLI

若要取得中目前帳戶的報告清單 AWS CodeBuild。

下列list-reports範例會擷取目前帳戶之報表的 ARN。

aws codebuild list-reports

輸出:

{ "reports": [ "arn:aws:codebuild:<region-ID>:<user-ID>:report/<report-group-name>:<report ID>", "arn:aws:codebuild:<region-ID>:<user-ID>:report/<report-group-name>:<report ID>", "arn:aws:codebuild:<region-ID>:<user-ID>:report/<report-group-name>:<report ID>" ] }

若要取得更多資訊,請參閱《使用指南》中的〈AWS CodeBuild 使用報告

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考ListReports中的。

下列程式碼範例會示範如何使用list-shared-projects

AWS CLI

若要在中列出共用專案 AWS CodeBuild。

下列list-shared-projects範例會列出目前帳戶可用的 CodeBuild 共用專案。

aws codebuild list-shared-projects

輸出:

{ "projects": [ "arn:aws:codebuild:<region-ID>:<account-ID>:project/<shared-project-name-1>", "arn:aws:codebuild:<region-ID>:<account-ID>:project/<shared-project-name-2>" ] }

若要取得更多資訊,請參閱《使用指南》中的〈使用共AWS CodeBuild 用專案

下列程式碼範例會示範如何使用list-shared-report-groups

AWS CLI

若要取得中 AWS CodeBuild共用報表群組 ARN 的清單。

下列list-shared-report-groups範例會擷取區域中帳戶的報表群組 ARN。

aws codebuild list-shared-report-groups

輸出:

{ "reportGroups": [ "arn:aws:codebuild:<region-ID>:<user-ID>:report-group/report-group-1", "arn:aws:codebuild:<region-ID>:<user-ID>:report-group/report-group-2", "arn:aws:codebuild:<region-ID>:<user-ID>:report-group/report-group-3" ] }

如需詳細資訊,請參閱《使用指南》中的〈AWS CodeBuild 使用報表群組

下列程式碼範例會示範如何使用list-source-credentials

AWS CLI

若要檢視清單 sourceCredentialsObjects

下列list-source-credentials範例會列出連結至一個 Bitbucket AWS 帳戶和一個帳戶的帳戶的權杖。 GitHub 回應中的每個sourceCredentialsInfos物件都包含連線的來源認證資訊。

aws codebuild list-source-credentials

輸出:

{ "sourceCredentialsInfos": [ { "serverType": "BITBUCKET", "arn": "arn:aws:codebuild:us-west-2:123456789012:token/bitbucket", "authType": "BASIC_AUTH" }, { "serverType": "GITHUB", "arn": "arn:aws:codebuild:us-west-2:123456789012:token/github", "authType": "OAUTH" } ] }

如需詳細資訊,請參閱AWS CodeBuild 使用者指南中的使用存取權杖 Connect 來源提供者 (CLI)

下列程式碼範例會示範如何使用retry-build-batch

AWS CLI

若要在中重試失敗的批次建置 AWS CodeBuild。

下列retry-build-batch範例會重新啟動指定的批次建置。

aws codebuild retry-build-batch \ --id <project-name>:<batch-ID>

輸出:

{ "buildBatch": { "id": "<project-name>:<batch-ID>", "arn": "arn:aws:codebuild:<region-ID>:<account-ID>:build-batch/<project-name>:<batch-ID>", "startTime": "2020-10-21T17:26:23.099000+00:00", "currentPhase": "SUBMITTED", "buildBatchStatus": "IN_PROGRESS", "resolvedSourceVersion": "3a9e11cb419e8fff14b03883dc4e64f6155aaa7e", "projectName": "<project-name>", "phases": [ { "phaseType": "SUBMITTED", "phaseStatus": "SUCCEEDED", "startTime": "2020-10-21T17:26:23.099000+00:00", "endTime": "2020-10-21T17:26:23.457000+00:00", "durationInSeconds": 0 }, { "phaseType": "DOWNLOAD_BATCHSPEC", "phaseStatus": "SUCCEEDED", "startTime": "2020-10-21T17:26:23.457000+00:00", "endTime": "2020-10-21T17:26:54.902000+00:00", "durationInSeconds": 31 }, { "phaseType": "IN_PROGRESS", "phaseStatus": "CLIENT_ERROR", "startTime": "2020-10-21T17:26:54.902000+00:00", "endTime": "2020-10-21T17:28:16.060000+00:00", "durationInSeconds": 81 }, { "phaseType": "FAILED", "phaseStatus": "RETRY", "startTime": "2020-10-21T17:28:16.060000+00:00", "endTime": "2020-10-21T17:29:39.709000+00:00", "durationInSeconds": 83 }, { "phaseType": "SUBMITTED", "startTime": "2020-10-21T17:29:39.709000+00:00" } ], "source": { "type": "GITHUB", "location": "https://github.com/strohm-a/<project-name>-graph.git", "gitCloneDepth": 1, "gitSubmodulesConfig": { "fetchSubmodules": false }, "reportBuildStatus": false, "insecureSsl": false }, "secondarySources": [], "secondarySourceVersions": [], "artifacts": { "location": "" }, "secondaryArtifacts": [], "cache": { "type": "NO_CACHE" }, "environment": { "type": "LINUX_CONTAINER", "image": "aws/codebuild/amazonlinux2-x86_64-standard:3.0", "computeType": "BUILD_GENERAL1_SMALL", "environmentVariables": [], "privilegedMode": false, "imagePullCredentialsType": "CODEBUILD" }, "logConfig": { "cloudWatchLogs": { "status": "ENABLED" }, "s3Logs": { "status": "DISABLED", "encryptionDisabled": false } }, "buildTimeoutInMinutes": 60, "queuedTimeoutInMinutes": 480, "complete": false, "initiator": "<username>", "encryptionKey": "arn:aws:kms:<region-ID>:<account-ID>:alias/aws/s3", "buildBatchNumber": 4, "buildBatchConfig": { "serviceRole": "arn:aws:iam::<account-ID>:role/service-role/<project-name>", "restrictions": { "maximumBuildsAllowed": 100 }, "timeoutInMins": 480 }, "buildGroups": [ { "identifier": "DOWNLOAD_SOURCE", "ignoreFailure": false, "currentBuildSummary": { "arn": "arn:aws:codebuild:<region-ID>:<account-ID>:build/<project-name>:<build-ID>", "requestedOn": "2020-10-21T17:26:23.889000+00:00", "buildStatus": "SUCCEEDED", "primaryArtifact": { "type": "no_artifacts", "identifier": "DOWNLOAD_SOURCE" }, "secondaryArtifacts": [] } }, { "identifier": "linux_small", "dependsOn": [], "ignoreFailure": false, "currentBuildSummary": { "arn": "arn:aws:codebuild:<region-ID>:<account-ID>:build/<project-name>:<build-ID>", "requestedOn": "2020-10-21T17:26:55.115000+00:00", "buildStatus": "FAILED", "primaryArtifact": { "type": "no_artifacts", "identifier": "linux_small" }, "secondaryArtifacts": [] } }, { "identifier": "linux_medium", "dependsOn": [ "linux_small" ], "ignoreFailure": false, "currentBuildSummary": { "arn": "arn:aws:codebuild:<region-ID>:<account-ID>:build/<project-name>:<build-ID>", "requestedOn": "2020-10-21T17:26:54.594000+00:00", "buildStatus": "STOPPED" } }, { "identifier": "linux_large", "dependsOn": [ "linux_medium" ], "ignoreFailure": false, "currentBuildSummary": { "arn": "arn:aws:codebuild:<region-ID>:<account-ID>:build/<project-name>:<build-ID>", "requestedOn": "2020-10-21T17:26:54.701000+00:00", "buildStatus": "STOPPED" } } ] } }

如需詳細資訊,請參閱《AWS CodeBuild 使用指南》 AWS CodeBuild中的「Batch 組建」。

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考RetryBuildBatch中的。

下列程式碼範例會示範如何使用retry-build

AWS CLI

若要在中重試失敗的組建 AWS CodeBuild。

下列retry-build範例會重新啟動指定的組建。

aws codebuild retry-build \ --id <project-name>:<build-ID>

輸出:

{ "build": { "id": "<project-name>:<build-ID>", "arn": "arn:aws:codebuild:<region-ID>:<account-ID>:build/<project-name>:<build-ID>", "buildNumber": 9, "startTime": "2020-10-21T17:51:38.161000+00:00", "currentPhase": "QUEUED", "buildStatus": "IN_PROGRESS", "projectName": "<project-name>", "phases": [ { "phaseType": "SUBMITTED", "phaseStatus": "SUCCEEDED", "startTime": "2020-10-21T17:51:38.161000+00:00", "endTime": "2020-10-21T17:51:38.210000+00:00", "durationInSeconds": 0 }, { "phaseType": "QUEUED", "startTime": "2020-10-21T17:51:38.210000+00:00" } ], "source": { "type": "GITHUB", "location": "<GitHub-repo-URL>", "gitCloneDepth": 1, "gitSubmodulesConfig": { "fetchSubmodules": false }, "reportBuildStatus": false, "insecureSsl": false }, "secondarySources": [], "secondarySourceVersions": [], "artifacts": { "location": "" }, "secondaryArtifacts": [], "cache": { "type": "NO_CACHE" }, "environment": { "type": "LINUX_CONTAINER", "image": "aws/codebuild/amazonlinux2-x86_64-standard:3.0", "computeType": "BUILD_GENERAL1_SMALL", "environmentVariables": [], "privilegedMode": false, "imagePullCredentialsType": "CODEBUILD" }, "serviceRole": "arn:aws:iam::<account-ID>:role/service-role/<service-role-name>", "logs": { "deepLink": "https://console.aws.amazon.com/cloudwatch/home?region=<region-ID>#logEvent:group=null;stream=null", "cloudWatchLogsArn": "arn:aws:logs:<region-ID>:<account-ID>:log-group:null:log-stream:null", "cloudWatchLogs": { "status": "ENABLED" }, "s3Logs": { "status": "DISABLED", "encryptionDisabled": false } }, "timeoutInMinutes": 60, "queuedTimeoutInMinutes": 480, "buildComplete": false, "initiator": "<username>", "encryptionKey": "arn:aws:kms:<region-ID>:<account-ID>:alias/aws/s3" } }

如需詳細資訊,請參閱《AWS CodeBuild 使用指南》 AWS CodeBuild中的「Batch 組建」。

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考RetryBuild中的。

下列程式碼範例會示範如何使用start-build-batch

AWS CLI

若要在中啟動批次建置 AWS CodeBuild。

下列start-build-batch範例會啟動指定專案的批次建置。

aws codebuild start-build-batch \ --project-name <project-name>

輸出:

{ "buildBatch": { "id": "<project-name>:<batch-ID>", "arn": "arn:aws:codebuild:<region-ID>:<account-ID>:build-batch/<project-name>:<batch-ID>", "startTime": "2020-10-21T16:54:24.740000+00:00", "currentPhase": "SUBMITTED", "buildBatchStatus": "IN_PROGRESS", "projectName": "<project-name>", "source": { "type": "GITHUB", "location": "<GitHub-repo-URL>", "gitCloneDepth": 1, "gitSubmodulesConfig": { "fetchSubmodules": false }, "reportBuildStatus": false, "insecureSsl": false }, "secondarySources": [], "secondarySourceVersions": [], "artifacts": { "location": "" }, "secondaryArtifacts": [], "cache": { "type": "NO_CACHE" }, "environment": { "type": "LINUX_CONTAINER", "image": "aws/codebuild/amazonlinux2-x86_64-standard:3.0", "computeType": "BUILD_GENERAL1_SMALL", "environmentVariables": [], "privilegedMode": false, "imagePullCredentialsType": "CODEBUILD" }, "logConfig": { "cloudWatchLogs": { "status": "ENABLED" }, "s3Logs": { "status": "DISABLED", "encryptionDisabled": false } }, "buildTimeoutInMinutes": 60, "queuedTimeoutInMinutes": 480, "complete": false, "initiator": "<username>", "encryptionKey": "arn:aws:kms:<region-ID>:<account-ID>:alias/aws/s3", "buildBatchNumber": 3, "buildBatchConfig": { "serviceRole": "arn:aws:iam::<account-ID>:role/service-role/<service-role-name>", "restrictions": { "maximumBuildsAllowed": 100 }, "timeoutInMins": 480 } } }

如需詳細資訊,請參閱《AWS CodeBuild 使用指南》 AWS CodeBuild中的「Batch 組建」。

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考StartBuildBatch中的。

下列程式碼範例會示範如何使用start-build

AWS CLI

開始運行構建項目的 AWS CodeBuild 構建。

下列start-build範例會啟動指定 CodeBuild 專案的組建。組建會覆寫專案的設定 (允許組建在逾時前排入佇列的分鐘數),以及專案的成品設定。

aws codebuild start-build \ --project-name "my-demo-project" \ --queued-timeout-in-minutes-override 5 \ --artifacts-override {"\"type\": \"S3\",\"location\": \"arn:aws:s3:::artifacts-override\",\"overrideArtifactName\":true"}

輸出:

{ "build": { "serviceRole": "arn:aws:iam::123456789012:role/service-role/my-codebuild-service-role", "buildStatus": "IN_PROGRESS", "buildComplete": false, "projectName": "my-demo-project", "timeoutInMinutes": 60, "source": { "insecureSsl": false, "type": "S3", "location": "codebuild-us-west-2-123456789012-input-bucket/my-source.zip" }, "queuedTimeoutInMinutes": 5, "encryptionKey": "arn:aws:kms:us-west-2:123456789012:alias/aws/s3", "currentPhase": "QUEUED", "startTime": 1556905683.568, "environment": { "computeType": "BUILD_GENERAL1_MEDIUM", "environmentVariables": [], "type": "LINUX_CONTAINER", "privilegedMode": false, "image": "aws/codebuild/standard:1.0", "imagePullCredentialsType": "CODEBUILD" }, "phases": [ { "phaseStatus": "SUCCEEDED", "startTime": 1556905683.568, "phaseType": "SUBMITTED", "durationInSeconds": 0, "endTime": 1556905684.524 }, { "startTime": 1556905684.524, "phaseType": "QUEUED" } ], "logs": { "deepLink": "https://console.aws.amazon.com/cloudwatch/home?region=us-west-2#logEvent:group=null;stream=null" }, "artifacts": { "encryptionDisabled": false, "location": "arn:aws:s3:::artifacts-override/my-demo-project", "overrideArtifactName": true }, "cache": { "type": "NO_CACHE" }, "id": "my-demo-project::12345678-a1b2-c3d4-e5f6-11111EXAMPLE", "initiator": "my-aws-account-name", "arn": "arn:aws:codebuild:us-west-2:123456789012:build/my-demo-project::12345678-a1b2-c3d4-e5f6-11111EXAMPLE" } }

如需詳細資訊,請參閱AWS CodeBuild 使用者指南中的執行組建 (AWS CLI)

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考StartBuild中的。

下列程式碼範例會示範如何使用stop-build-batch

AWS CLI

若要停止進行中的 AWS CodeBuild批次建置。

下列stop-build-batch範例會停止指定的批次建置。

aws codebuild stop-build-batch \ --id <project-name>:<batch-ID>

輸出:

{ "buildBatch": { "id": "<project-name>:<batch-ID>", "arn": "arn:aws:codebuild:<region-ID>:<account-ID>:build-batch/<project-name>:<batch-ID>", "startTime": "2020-10-21T16:54:24.740000+00:00", "endTime": "2020-10-21T16:56:05.152000+00:00", "currentPhase": "STOPPED", "buildBatchStatus": "STOPPED", "resolvedSourceVersion": "aef7744ed069c51098e15c360f4102cd2cd1ad64", "projectName": "<project-name>", "phases": [ { "phaseType": "SUBMITTED", "phaseStatus": "SUCCEEDED", "startTime": "2020-10-21T16:54:24.740000+00:00", "endTime": "2020-10-21T16:54:25.039000+00:00", "durationInSeconds": 0 }, { "phaseType": "DOWNLOAD_BATCHSPEC", "phaseStatus": "SUCCEEDED", "startTime": "2020-10-21T16:54:25.039000+00:00", "endTime": "2020-10-21T16:54:56.583000+00:00", "durationInSeconds": 31 }, { "phaseType": "IN_PROGRESS", "phaseStatus": "STOPPED", "startTime": "2020-10-21T16:54:56.583000+00:00", "endTime": "2020-10-21T16:56:05.152000+00:00", "durationInSeconds": 68 }, { "phaseType": "STOPPED", "startTime": "2020-10-21T16:56:05.152000+00:00" } ], "source": { "type": "GITHUB", "location": "<GitHub-repo-URL>", "gitCloneDepth": 1, "gitSubmodulesConfig": { "fetchSubmodules": false }, "reportBuildStatus": false, "insecureSsl": false }, "secondarySources": [], "secondarySourceVersions": [], "artifacts": { "location": "" }, "secondaryArtifacts": [], "cache": { "type": "NO_CACHE" }, "environment": { "type": "LINUX_CONTAINER", "image": "aws/codebuild/amazonlinux2-x86_64-standard:3.0", "computeType": "BUILD_GENERAL1_SMALL", "environmentVariables": [], "privilegedMode": false, "imagePullCredentialsType": "CODEBUILD" }, "logConfig": { "cloudWatchLogs": { "status": "ENABLED" }, "s3Logs": { "status": "DISABLED", "encryptionDisabled": false } }, "buildTimeoutInMinutes": 60, "queuedTimeoutInMinutes": 480, "complete": true, "initiator": "Strohm", "encryptionKey": "arn:aws:kms:<region-ID>:<account-ID>:alias/aws/s3", "buildBatchNumber": 3, "buildBatchConfig": { "serviceRole": "arn:aws:iam::<account-ID>:role/service-role/<project-name>", "restrictions": { "maximumBuildsAllowed": 100 }, "timeoutInMins": 480 }, "buildGroups": [ { "identifier": "DOWNLOAD_SOURCE", "ignoreFailure": false, "currentBuildSummary": { "arn": "arn:aws:codebuild:<region-ID>:<account-ID>:build/<project-name>:<build-ID>", "requestedOn": "2020-10-21T16:54:25.468000+00:00", "buildStatus": "SUCCEEDED", "primaryArtifact": { "type": "no_artifacts", "identifier": "DOWNLOAD_SOURCE" }, "secondaryArtifacts": [] } }, { "identifier": "linux_small", "dependsOn": [], "ignoreFailure": false, "currentBuildSummary": { "arn": "arn:aws:codebuild:<region-ID>:<account-ID>:build/<project-name>:<build-ID>", "requestedOn": "2020-10-21T16:54:56.833000+00:00", "buildStatus": "IN_PROGRESS" } }, { "identifier": "linux_medium", "dependsOn": [ "linux_small" ], "ignoreFailure": false, "currentBuildSummary": { "arn": "arn:aws:codebuild:<region-ID>:<account-ID>:build/<project-name>:<build-ID>", "requestedOn": "2020-10-21T16:54:56.211000+00:00", "buildStatus": "PENDING" } }, { "identifier": "linux_large", "dependsOn": [ "linux_medium" ], "ignoreFailure": false, "currentBuildSummary": { "arn": "arn:aws:codebuild:<region-ID>:<account-ID>:build/<project-name>:<build-ID>", "requestedOn": "2020-10-21T16:54:56.330000+00:00", "buildStatus": "PENDING" } } ] } }

如需詳細資訊,請參閱《AWS CodeBuild 使用指南》 AWS CodeBuild中的「Batch 組建」。

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考StopBuildBatch中的。

下列程式碼範例會示範如何使用stop-build

AWS CLI

要停止構建項目的 AWS CodeBuild 構建。

下列stop-build範例會停止指定的 CodeBuild 組建。

aws codebuild stop-build --id my-demo-project:12345678-a1b2-c3d4-e5f6-11111EXAMPLE

輸出:

{ "build": { "startTime": 1556906956.318, "initiator": "my-aws-account-name", "projectName": "my-demo-project", "currentPhase": "COMPLETED", "cache": { "type": "NO_CACHE" }, "source": { "insecureSsl": false, "location": "codebuild-us-west-2-123456789012-input-bucket/my-source.zip", "type": "S3" }, "id": "my-demo-project:1a2b3c4d-5678-90ab-cdef-11111EXAMPLE", "endTime": 1556906974.781, "phases": [ { "durationInSeconds": 0, "phaseType": "SUBMITTED", "endTime": 1556906956.935, "phaseStatus": "SUCCEEDED", "startTime": 1556906956.318 }, { "durationInSeconds": 1, "phaseType": "QUEUED", "endTime": 1556906958.272, "phaseStatus": "SUCCEEDED", "startTime": 1556906956.935 }, { "phaseType": "PROVISIONING", "phaseStatus": "SUCCEEDED", "durationInSeconds": 14, "contexts": [ { "message": "", "statusCode": "" } ], "endTime": 1556906972.847, "startTime": 1556906958.272 }, { "phaseType": "DOWNLOAD_SOURCE", "phaseStatus": "SUCCEEDED", "durationInSeconds": 0, "contexts": [ { "message": "", "statusCode": "" } ], "endTime": 1556906973.552, "startTime": 1556906972.847 }, { "phaseType": "INSTALL", "phaseStatus": "SUCCEEDED", "durationInSeconds": 0, "contexts": [ { "message": "", "statusCode": "" } ], "endTime": 1556906973.75, "startTime": 1556906973.552 }, { "phaseType": "PRE_BUILD", "phaseStatus": "SUCCEEDED", "durationInSeconds": 0, "contexts": [ { "message": "", "statusCode": "" } ], "endTime": 1556906973.937, "startTime": 1556906973.75 }, { "durationInSeconds": 0, "phaseType": "BUILD", "endTime": 1556906974.781, "phaseStatus": "STOPPED", "startTime": 1556906973.937 }, { "phaseType": "COMPLETED", "startTime": 1556906974.781 } ], "artifacts": { "location": "arn:aws:s3:::artifacts-override/my-demo-project", "encryptionDisabled": false, "overrideArtifactName": true }, "buildComplete": true, "buildStatus": "STOPPED", "encryptionKey": "arn:aws:kms:us-west-2:123456789012:alias/aws/s3", "serviceRole": "arn:aws:iam::123456789012:role/service-role/my-codebuild-service-role", "queuedTimeoutInMinutes": 5, "timeoutInMinutes": 60, "environment": { "type": "LINUX_CONTAINER", "environmentVariables": [], "computeType": "BUILD_GENERAL1_MEDIUM", "privilegedMode": false, "image": "aws/codebuild/standard:1.0", "imagePullCredentialsType": "CODEBUILD" }, "logs": { "streamName": "1a2b3c4d-5678-90ab-cdef-11111EXAMPLE", "deepLink": "https://console.aws.amazon.com/cloudwatch/home?region=us-west-2#logEvent:group=/aws/codebuild/my-demo-project;stream=1a2b3c4d-5678-90ab-cdef-11111EXAMPLE", "groupName": "/aws/codebuild/my-demo-project" }, "arn": "arn:aws:codebuild:us-west-2:123456789012:build/my-demo-project:1a2b3c4d-5678-90ab-cdef-11111EXAMPLE" } }

如需詳細資訊,請參閱AWS CodeBuild 使用者指南中的停止組建 (AWS CLI)

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考StopBuild中的。

下列程式碼範例會示範如何使用update-project

AWS CLI

若要變更 AWS CodeBuild 建置專案的設定。

下列update-project範例會變更名為的指定 CodeBuild 建置專案的設定 my-demo-project。

aws codebuild update-project --name "my-demo-project" \ --description "This project is updated" \ --source "{\"type\": \"S3\",\"location\": \"codebuild-us-west-2-123456789012-input-bucket/my-source-2.zip\"}" \ --artifacts {"\"type\": \"S3\",\"location\": \"codebuild-us-west-2-123456789012-output-bucket-2\""} \ --environment "{\"type\": \"LINUX_CONTAINER\",\"image\": \"aws/codebuild/standard:1.0\",\"computeType\": \"BUILD_GENERAL1_MEDIUM\"}" \ --service-role "arn:aws:iam::123456789012:role/service-role/my-codebuild-service-role"

輸出會顯示更新的設定。

{ "project": { "arn": "arn:aws:codebuild:us-west-2:123456789012:project/my-demo-project", "environment": { "privilegedMode": false, "environmentVariables": [], "type": "LINUX_CONTAINER", "image": "aws/codebuild/standard:1.0", "computeType": "BUILD_GENERAL1_MEDIUM", "imagePullCredentialsType": "CODEBUILD" }, "queuedTimeoutInMinutes": 480, "description": "This project is updated", "artifacts": { "packaging": "NONE", "name": "my-demo-project", "type": "S3", "namespaceType": "NONE", "encryptionDisabled": false, "location": "codebuild-us-west-2-123456789012-output-bucket-2" }, "encryptionKey": "arn:aws:kms:us-west-2:123456789012:alias/aws/s3", "badge": { "badgeEnabled": false }, "serviceRole": "arn:aws:iam::123456789012:role/service-role/my-codebuild-service-role", "lastModified": 1556840545.967, "tags": [], "timeoutInMinutes": 60, "created": 1556839783.274, "name": "my-demo-project", "cache": { "type": "NO_CACHE" }, "source": { "type": "S3", "insecureSsl": false, "location": "codebuild-us-west-2-123456789012-input-bucket/my-source-2.zip" } } }

如需詳細資訊,請參閱AWS CodeBuild 使用者指南的變更組建專案的設定 (AWS CLI)

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考UpdateProject中的。

下列程式碼範例會示範如何使用update-report-group

AWS CLI

若要更新中的報表群組 AWS CodeBuild。

下列update-report-group範例會將報表群組的匯出類型變更為「NO_EXPORT」。

aws codebuild update-report-group \ --arn arn:aws:codebuild:<region-ID>:<user-ID>:report-group/cli-created-report-group \ --export-config="exportConfigType=NO_EXPORT"

輸出:

{ "reportGroup": { "arn": "arn:aws:codebuild:<region-ID>:<user-ID>:report-group/cli-created-report-group", "name": "cli-created-report-group", "type": "TEST", "exportConfig": { "exportConfigType": "NO_EXPORT" }, "created": 1602020686.009, "lastModified": 1602021033.454, "tags": [] } }

如需詳細資訊,請參閱《使用指南》中的〈AWS CodeBuild 使用報表群組

下列程式碼範例會示範如何使用update-webhook

AWS CLI

若要更新專案的網路掛接 AWS CodeBuild

下列update-webhook範例會使用兩個篩選群組來更新指定 CodeBuild 專案的 webhook。此--rotate-secret參數會指定每次程式碼變更觸發組建時,都會 GitHub 旋轉專案的秘密金鑰。第一個篩選群組指定在分支上建立、更新或重新開啟的提取請求,並且這些分支的 Git 參考名稱符合規則表達式 ^refs/heads/master$,而標頭參考符合 ^refs/heads/myBranch$。第二個篩選器群組會指定 Git 參考名稱與規則運算式不符的分支上的推送要求^refs/heads/myBranch$

aws codebuild update-webhook \ --project-name Project2 \ --rotate-secret \ --filter-groups "[[{\"type\":\"EVENT\",\"pattern\":\"PULL_REQUEST_CREATED, PULL_REQUEST_UPDATED, PULL_REQUEST_REOPENED\"},{\"type\":\"HEAD_REF\",\"pattern\":\"^refs/heads/myBranch$\",\"excludeMatchedPattern\":true},{\"type\":\"BASE_REF\",\"pattern\":\"^refs/heads/master$\",\"excludeMatchedPattern\":true}],[{\"type\":\"EVENT\",\"pattern\":\"PUSH\"},{\"type\":\"HEAD_REF\",\"pattern\":\"^refs/heads/myBranch$\",\"excludeMatchedPattern\":true}]]"

輸出:

{ "webhook": { "filterGroups": [ [ { "pattern": "PULL_REQUEST_CREATED, PULL_REQUEST_UPDATED, PULL_REQUEST_REOPENED", "type": "EVENT" }, { "excludeMatchedPattern": true, "pattern": "refs/heads/myBranch$", "type": "HEAD_REF" }, { "excludeMatchedPattern": true, "pattern": "refs/heads/master$", "type": "BASE_REF" } ], [ { "pattern": "PUSH", "type": "EVENT" }, { "excludeMatchedPattern": true, "pattern": "refs/heads/myBranch$", "type": "HEAD_REF" } ] ], "lastModifiedSecret": 1556312220.133 } }

如需詳細資訊,請參閱AWS CodeBuild 使用者指南的變更組建專案的設定 (AWS CLI)

  • 如需 API 詳細資訊,請參閱AWS CLI 命令參考UpdateWebhook中的。