Bekerja dengan proyek bersama - AWS CodeBuild

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Bekerja dengan proyek bersama

Berbagi proyek memungkinkan pemilik proyek untuk berbagiAWS CodeBuildproyek denganAWSakun atau pengguna. Dalam model ini, akun yang memiliki proyek (pemilik) berbagi proyek dengan akun lain (konsumen). Konsumen tidak dapat mengedit atau menjalankan proyek.

Prasyarat untuk berbagi proyek

Untuk berbagi proyek,AWSakun harus memilikinya. Anda tidak dapat membagikan proyek yang telah dibagikan dengan Anda.

Prasyarat untuk mengakses proyek bersama yang dibagikan kepada Anda

Untuk mengakses proyek bersama, peran IAM konsumen memerlukanBatchGetProjectsizin. Anda dapat memberlakukan kebijakan berikut ke peran IAM mereka:

{ "Effect": "Allow", "Resource": [ "*" ], "Action": [ "codebuild:BatchGetProjects" ] }

Untuk informasi selengkapnya, lihat Menggunakan kebijakan berbasis identitas untuk AWS CodeBuild.

Berbagi proyek terintegrasi denganAWS Resource Access Manager(AWS RAM), layanan yang memungkinkan Anda untuk berbagiAWSsumber daya denganAWSakun atau melaluiAWS Organizations. DenganAWS RAM, Anda berbagi sumber daya dengan membuatberbagi sumber dayayang menentukan sumber daya dan konsumen untuk berbagi dengan mereka. Konsumen bisa bersifat individualAWSakun, unit organisasi diAWS Organizations, atau seluruh organisasi diAWS Organizations.

Untuk informasi selengkapnya, lihat Panduan Pengguna AWS RAM.

Berbagi proyek

Konsumen dapat menggunakan keduaAWS CLIdanAWS CodeBuildkonsol untuk melihat proyek dan membangun yang telah Anda bagikan. Konsumen tidak dapat mengedit atau menjalankan proyek.

Anda dapat menambahkan proyek untuk berbagi sumber daya yang ada atau Anda dapat membuat satu diAWS RAMkonsol.

catatan

Anda tidak dapat menghapus proyek dengan build yang telah ditambahkan ke bagian sumber daya.

Untuk berbagi proyek dengan unit organisasi atau seluruh organisasi, Anda harus mengaktifkan berbagi denganAWS Organizations. Untuk informasi lebih lanjut, lihat Aktifkan pembagian dengan AWS Organizations dalam Panduan Pengguna AWS RAM .

Anda dapat menggunakanAWS CodeBuildkonsol,AWS RAMkonsol, atauAWS CLIuntuk berbagi proyek yang Anda miliki.

Untuk berbagi proyek yang Anda miliki (CodeBuild konsol)
  1. BukaAWS CodeBuildkonsol dihttps://console.aws.amazon.com/codesuite/codebuild/home.

  2. Di panel navigasi, pilihProyek pembangunan.

    catatan

    Secara default, hanya 10 proyek build terbaru yang ditampilkan. Untuk melihat proyek pembangunan lainnya, pilih ikon roda gigi, lalu pilih nilai yang berbedaProyek per halamanatau gunakan panah belakang dan depan.

  3. Pilih proyek yang ingin Anda bagikan, lalu pilihBagikan. Untuk informasi selengkapnya, lihatMembuat berbagi sumber dayadiAWS RAMPanduan Pengguna.

Untuk berbagi proyek yang Anda miliki (AWS RAMkonsol)

LihatMembuat berbagi sumber dayadiAWS RAMPanduan Pengguna.

Untuk berbagi proyek yang Anda miliki (AWS RAMperintah)

Gunakan perintah create-resource-share.

Untuk berbagi proyek yang Anda miliki (perintah CodeBuild)

Menggunakankebijakan-put-resourceperintah:

  1. Membuat file bernamapolicy.jsondan salin yang berikut ke dalamnya.

    { "Version":"2012-10-17", "Statement":[{ "Effect":"Allow", "Principal":{ "AWS":"<consumer-aws-account-id-or-user>" }, "Action":[ "codebuild:BatchGetProjects", "codebuild:BatchGetBuilds", "codebuild:ListBuildsForProject"], "Resource":"<arn-of-project-to-share>" }] }
  2. Perbaruipolicy.jsondengan proyek ARN dan pengidentifikasi untuk berbagi dengan. Contoh berikut memberikan akses hanya-baca ke pengguna root untukAWSakun diidentifikasi oleh 123456789012.

    { "Version":"2012-10-17", "Statement":[{ "Effect":"Allow", "Principal":{ "AWS": [ "123456789012" ] }, "Action":[ "codebuild:BatchGetProjects", "codebuild:BatchGetBuilds", "codebuild:ListBuildsForProject"], "Resource":"arn:aws:codebuild:us-west-2:123456789012:project/my-project" }] }
  3. Jalankankebijakan-put-resourceperintah.

    aws codebuild put-resource-policy --resource-arn <project-arn> --policy file://policy.json
  4. DapatkanAWS RAMberbagi sumber daya ARN.

    aws ram list-resources --resource-owner SELF --resource-arns <project-arn>

    Ini akan menghasilkan respons yang serupa dengan ini:

    { "resources": [ { "arn": "<project-arn>", "type": "<type>", "resourceShareArn": "<resource-share-arn>", "creationTime": "<creation-time>", "lastUpdatedTime": "<last-update-time>" } ] }

    Dari respon, salin<resource-share-arn>Nilai untuk digunakan pada langkah berikutnya.

  5. JalankanAWS RAM mempromosikan-sumber daya-bagian-dibuat-dari-kebijakanperintah.

    aws ram promote-resource-share-created-from-policy --resource-share-arn <resource-share-arn>

Membatalkan berbagi proyek bersama

Proyek yang tidak dibagikan, termasuk membangunnya, hanya dapat diakses oleh pemiliknya. Jika Anda membatalkan berbagi proyek, adaAWSakun atau pengguna yang sebelumnya Anda bagikan tidak dapat mengakses proyek atau membangunnya.

Untuk membatalkan berbagi proyek bersama yang Anda miliki, Anda harus menghapusnya dari berbagi sumber daya. Anda dapat menggunakanAWS CodeBuildkonsol,AWS RAMkonsol, atauAWS CLIuntuk melakukan ini.

Untuk membatalkan berbagi proyek bersama yang Anda miliki (AWS RAMkonsol)

Lihat Memperbarui Pembagian Sumber Daya di Panduan Pengguna.AWS RAM

Untuk membatalkan berbagi proyek bersama yang Anda miliki (AWS CLI)

Gunakan perintah disassociate-resource-share.

Untuk unshare proyek yang Anda miliki (perintah CodeBuild)

Jalankanhapus-kebijakanperintah dan menentukan ARN proyek Anda ingin unshare:

aws codebuild delete-resource-policy --resource-arn project-arn

Mengidentifikasi proyek bersama

Pemilik dan konsumen dapat menggunakanAWS CLIuntuk mengidentifikasi proyek bersama.

Untuk mengidentifikasi proyek yang dibagikan denganAWSakun atau pengguna (AWS CLI)

Menggunakandaftar-dibagikan proyekperintah untuk mengembalikan proyek-proyek yang dibagikan dengan Anda.

Izin proyek bersama

Izin untuk pemilik

Pemilik proyek dapat mengedit proyek dan menggunakannya untuk menjalankan build.

Izin untuk konsumen

Konsumen proyek dapat melihat proyek dan membangunnya, tetapi tidak dapat mengedit proyek atau menggunakannya untuk menjalankan build.