View a markdown version of this page

CodeStarSourceConnection untuk Bitbucket Cloud, GitHub Enterprise Server GitHub GitLab.com, dan tindakan yang dikelola GitLab sendiri - AWS CodePipeline

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

CodeStarSourceConnection untuk Bitbucket Cloud, GitHub Enterprise Server GitHub GitLab.com, dan tindakan yang dikelola GitLab sendiri

Tindakan sumber untuk koneksi didukung oleh AWS CodeConnections. CodeConnections memungkinkan Anda untuk membuat dan mengelola koneksi antara AWS sumber daya dan repositori pihak ketiga seperti GitHub. Memulai pipeline saat komit baru dibuat pada repositori kode sumber pihak ketiga. Tindakan sumber mengambil perubahan kode saat pipeline dijalankan secara manual atau ketika peristiwa webhook dikirim dari penyedia sumber.

Anda dapat mengonfigurasi tindakan dalam pipeline Anda untuk menggunakan konfigurasi Git yang memungkinkan Anda memulai pipeline dengan pemicu. Untuk mengonfigurasi konfigurasi pemicu pipeline untuk memfilter dengan pemicu, lihat detail selengkapnya diTambahkan pemicu dengan jenis acara push atau pull request kode.

catatan

Fitur ini tidak tersedia di Asia Pasifik (Hong Kong), Asia Pasifik (Hyderabad), Asia Pasifik (Jakarta), Asia Pasifik (Melbourne), Asia Pasifik (Osaka), Afrika (Cape Town), Timur Tengah (Bahrain), Timur Tengah (UEA), Eropa (Spanyol), Eropa (Zurich), Israel (Tel Aviv), atau AWS GovCloud (US-West) Wilayah. Untuk mereferensikan tindakan lain yang tersedia, lihatIntegrasi produk dan layanan dengan CodePipeline. Untuk pertimbangan dengan tindakan ini di Wilayah Eropa (Milan), lihat catatan diCodeStarSourceConnection untuk Bitbucket Cloud, GitHub Enterprise Server GitHub GitLab.com, dan tindakan yang dikelola GitLab sendiri.

Koneksi dapat mengaitkan AWS sumber daya Anda dengan repositori pihak ketiga berikut:

  • Bitbucket Cloud (melalui opsi penyedia Bitbucket di CodePipeline konsol atau Bitbucket penyedia di CLI)

    catatan

    Anda dapat membuat koneksi ke repositori Bitbucket Cloud. Jenis penyedia Bitbucket yang diinstal, seperti Bitbucket Server, tidak didukung.

  • catatan

    Jika Anda menggunakan ruang kerja Bitbucket, Anda harus memiliki akses administrator untuk membuat koneksi.

  • GitHub dan GitHub Enterprise Cloud (melalui opsi penyedia GitHub (melalui GitHub Aplikasi) di CodePipeline konsol atau GitHub penyedia di CLI)

    catatan

    Jika repositori Anda berada di GitHub organisasi, Anda harus menjadi pemilik organisasi untuk membuat koneksi. Jika Anda menggunakan repositori yang tidak ada dalam organisasi, Anda harus menjadi pemilik repositori.

  • GitHub Enterprise Server (melalui opsi penyedia Server Perusahaan di CodePipeline konsol atau GitHub Enterprise Server penyedia di CLI) GitHub

  • GitLab.com (melalui opsi GitLab penyedia di CodePipeline konsol atau GitLab penyedia di CLI)

    catatan

    Anda dapat membuat koneksi ke repositori tempat Anda memiliki peran Pemilik GitLab, dan kemudian koneksi dapat digunakan dengan repositori dengan sumber daya seperti CodePipeline. Untuk repositori dalam grup, Anda tidak perlu menjadi pemilik grup.

  • Self-managed instalasi untuk GitLab (Edisi Perusahaan atau Edisi Komunitas) (melalui opsi penyedia yang GitLab dikelola sendiri di CodePipeline konsol atau GitLabSelfManaged penyedia di CLI)

catatan

Setiap koneksi mendukung semua repositori yang Anda miliki dengan penyedia itu. Anda hanya perlu membuat koneksi baru untuk setiap jenis penyedia.

Koneksi memungkinkan pipeline Anda mendeteksi perubahan sumber melalui aplikasi instalasi penyedia pihak ketiga. Misalnya, webhook digunakan untuk berlangganan jenis GitHub acara dan dapat diinstal pada organisasi, repositori, atau GitHub Aplikasi. Koneksi Anda menginstal webhook repositori di GitHub Aplikasi Anda yang berlangganan acara tipe GitHub push.

Setelah perubahan kode terdeteksi, Anda memiliki opsi berikut untuk meneruskan kode ke tindakan selanjutnya:

  • Default: Seperti tindakan CodePipeline sumber lain yang ada, CodeStarSourceConnection dapat menampilkan file ZIP dengan salinan komit yang dangkal.

  • Klon penuh: juga CodeStarSourceConnection dapat dikonfigurasi untuk menampilkan referensi URL ke repo untuk tindakan selanjutnya.

    Saat ini, referensi URL Git hanya dapat digunakan oleh CodeBuild tindakan hilir untuk mengkloning repo dan metadata Git terkait. Mencoba meneruskan referensi URL Git ke non- CodeBuild tindakan menghasilkan kesalahan.

CodePipeline meminta Anda untuk menambahkan aplikasi instalasi AWS Connector ke akun pihak ketiga saat Anda membuat koneksi. Anda harus telah membuat akun penyedia pihak ketiga dan repositori sebelum Anda dapat terhubung melalui CodeStarSourceConnection tindakan.

catatan

Untuk membuat atau melampirkan kebijakan ke peran Anda dengan izin yang diperlukan untuk menggunakan AWS CodeStar koneksi, lihat referensi izin koneksi. Bergantung pada kapan peran CodePipeline layanan Anda dibuat, Anda mungkin perlu memperbarui izinnya untuk mendukung AWS CodeStar koneksi. Untuk petunjuk, lihat Menambahkan izin ke peran CodePipeline layanan.

catatan

Untuk menggunakan koneksi di Eropa (Milan) Wilayah AWS, Anda harus:

  1. Instal Region-specific aplikasi

  2. Aktifkan Wilayah

Region-specific Aplikasi ini mendukung koneksi di Wilayah Eropa (Milan). Ini dipublikasikan di situs penyedia pihak ketiga, dan terpisah dari aplikasi yang ada yang mendukung koneksi untuk Wilayah lain. Dengan menginstal aplikasi ini, Anda memberi wewenang kepada penyedia pihak ketiga untuk membagikan data Anda dengan layanan untuk Wilayah ini saja, dan Anda dapat mencabut izin kapan saja dengan menghapus instalasi aplikasi.

Layanan tidak akan memproses atau menyimpan data Anda kecuali Anda mengaktifkan Wilayah. Dengan mengaktifkan Wilayah ini, Anda memberikan izin layanan kami untuk memproses dan menyimpan data Anda.

Meskipun Wilayah tidak diaktifkan, penyedia pihak ketiga masih dapat membagikan data Anda dengan layanan kami jika Region-specific aplikasi tetap diinstal, jadi pastikan untuk menghapus aplikasi setelah Anda menonaktifkan Wilayah. Untuk informasi selengkapnya, lihat Mengaktifkan Wilayah.

Tipe tindakan

  • Kategori: Source

  • Pemilik: AWS

  • Penyedia: CodeStarSourceConnection

  • Versi: 1

Parameter konfigurasi

ConnectionArn

Wajib: Ya

Koneksi ARN yang dikonfigurasi dan diautentikasi untuk penyedia sumber.

FullRepositoryId

Wajib: Ya

Pemilik dan nama repositori tempat perubahan sumber akan dideteksi.

Contoh: some-user/my-repo

penting

Anda harus mempertahankan kasus yang benar untuk FullRepositoryId nilai tersebut. Misalnya, jika nama pengguna Anda adalah some-user dan nama repo adalahMy-Repo, nilai yang disarankan FullRepositoryId adalahsome-user/My-Repo.

BranchName

Wajib: Ya

Nama cabang tempat perubahan sumber akan dideteksi.

OutputArtifactFormat

Wajib: Tidak

Menentukan format artefak keluaran. Bisa salah satu CODEBUILD_CLONE_REF atauCODE_ZIP. Jika tidak ditentukan, defaultnya adalahCODE_ZIP.

penting

CODEBUILD_CLONE_REFOpsi ini hanya dapat digunakan oleh tindakan CodeBuild hilir.

Jika Anda memilih opsi ini, Anda perlu memperbarui izin untuk peran layanan CodeBuild proyek Anda seperti yang ditunjukkan padaTambahkan CodeBuild GitClone izin untuk koneksi ke Bitbucket, GitHub, GitHub Enterprise Server, atau GitLab.com. Untuk tutorial yang menunjukkan cara menggunakan opsi klon penuh, lihatTutorial: Gunakan klon penuh dengan sumber GitHub pipeline.

DetectChanges

Wajib: Tidak

Kontrol secara otomatis memulai pipeline Anda ketika komit baru dibuat pada repositori dan cabang yang dikonfigurasi. Jika tidak ditentukan, nilai defaultnya adalahtrue, dan bidang tidak ditampilkan secara default. Nilai yang valid untuk parameter ini:

  • true: CodePipeline secara otomatis memulai pipeline Anda pada commit baru.

  • false: CodePipeline tidak memulai pipeline Anda pada commit baru.

Artefak masukan

  • Jumlah artefak: 0

  • Deskripsi: Artefak masukan tidak berlaku untuk jenis tindakan ini.

Artefak keluaran

  • Jumlah artefak: 1

  • Deskripsi: Artefak yang dihasilkan dari repositori adalah artefak keluaran untuk CodeStarSourceConnection tindakan tersebut. ID komit kode sumber ditampilkan CodePipeline sebagai revisi sumber untuk eksekusi pipeline yang dipicu. Anda dapat mengonfigurasi artefak keluaran dari tindakan ini di:

    • File ZIP yang berisi konten repositori dan cabang yang dikonfigurasi pada komit yang ditentukan sebagai revisi sumber untuk eksekusi pipeline.

    • File JSON yang berisi referensi URL ke repositori sehingga tindakan hilir dapat melakukan perintah Git secara langsung.

      penting

      Opsi ini hanya dapat digunakan oleh tindakan CodeBuild hilir.

      Jika Anda memilih opsi ini, Anda perlu memperbarui izin untuk peran layanan CodeBuild proyek Anda seperti yang ditunjukkan padaPemecahan masalah CodePipeline. Untuk tutorial yang menunjukkan cara menggunakan opsi klon penuh, lihatTutorial: Gunakan klon penuh dengan sumber GitHub pipeline.

Variabel keluaran

Ketika dikonfigurasi, tindakan ini menghasilkan variabel yang dapat direferensikan oleh konfigurasi tindakan hilir dalam pipeline. Tindakan ini menghasilkan variabel yang dapat dilihat sebagai variabel keluaran, bahkan jika tindakan tidak memiliki namespace. Anda mengonfigurasi tindakan dengan namespace untuk membuat variabel tersebut tersedia untuk konfigurasi tindakan hilir.

Untuk informasi selengkapnya, lihat Referensi variabel.

AuthorDate

Tanggal ketika komit ditulis, dalam format stempel waktu.

BranchName

Nama cabang untuk repositori tempat perubahan sumber dilakukan.

CommitId

ID komit yang memicu eksekusi pipeline.

CommitMessage

Pesan deskripsi, jika ada, terkait dengan komit yang memicu eksekusi pipeline.

ConnectionArn

Koneksi ARN yang dikonfigurasi dan diautentikasi untuk penyedia sumber.

FullRepositoryName

Nama repositori tempat komit yang memicu pipeline dibuat.

Izin peran layanan: CodeConnections tindakan

Untuk CodeConnections, izin berikut diperlukan untuk membuat pipeline dengan sumber yang menggunakan koneksi, seperti Bitbucket Cloud.

{ "Effect": "Allow", "Action": [ "codeconnections:UseConnection", "codestar-connections:UseConnection" ], "Resource": "resource_ARN" },
catatan

Kedua tindakan tersebut diperlukan. Operasi dipanggil melalui panggilancodestar-connections:UseConnection, sementara operasi dipanggil di luar panggilan. codeconnections:UseConnection Pemberian kedua tindakan memastikan peran berfungsi untuk kedua jalur kode, terlepas dari apakah ARN sumber daya koneksi menggunakan awalan codestar-connections layanan codeconnections atau.

Untuk informasi selengkapnya tentang izin IAM untuk koneksi, lihat referensi izin koneksi.

Deklarasi tindakan

Dalam contoh berikut, artefak keluaran diatur ke format ZIP default CODE_ZIP untuk koneksi dengan ARN. arn:aws:codestar-connections:region:account-id:connection/connection-id

YAML
Name: Source Actions: - InputArtifacts: [] ActionTypeId: Version: '1' Owner: AWS Category: Source Provider: CodeStarSourceConnection OutputArtifacts: - Name: SourceArtifact RunOrder: 1 Configuration: ConnectionArn: "arn:aws:codestar-connections:region:account-id:connection/connection-id" FullRepositoryId: "some-user/my-repo" BranchName: "main" OutputArtifactFormat: "CODE_ZIP" Name: ApplicationSource
JSON
{ "Name": "Source", "Actions": [ { "InputArtifacts": [], "ActionTypeId": { "Version": "1", "Owner": "AWS", "Category": "Source", "Provider": "CodeStarSourceConnection" }, "OutputArtifacts": [ { "Name": "SourceArtifact" } ], "RunOrder": 1, "Configuration": { "ConnectionArn": "arn:aws:codestar-connections:region:account-id:connection/connection-id", "FullRepositoryId": "some-user/my-repo", "BranchName": "main", "OutputArtifactFormat": "CODE_ZIP" }, "Name": "ApplicationSource" } ] },

Menginstal aplikasi instalasi dan membuat koneksi

Pertama kali Anda menggunakan konsol untuk menambahkan koneksi baru ke repositori pihak ketiga, Anda harus mengotorisasi CodePipeline akses ke repositori Anda. Anda memilih atau membuat aplikasi instalasi yang membantu Anda terhubung ke akun tempat Anda membuat repositori kode pihak ketiga.

Ketika Anda menggunakan AWS CLI atau CloudFormation template, Anda harus memberikan koneksi ARN dari koneksi yang telah melalui jabat tangan instalasi. Jika tidak, pipa tidak dipicu.

catatan

Untuk tindakan CodeStarSourceConnection sumber, Anda tidak perlu mengatur webhook atau default untuk polling. Tindakan koneksi mengelola deteksi perubahan sumber untuk Anda.

Sumber daya terkait berikut dapat membantu Anda saat Anda mengerjakan tindakan ini.

  • AWS::CodeStarConnections: :Connection — Refer CloudFormation ensi template untuk sumber daya AWS CodeStar Koneksi menyediakan parameter dan contoh untuk koneksi dalam CloudFormation template.

  • AWS CodeStarReferensi API Kon AWS CodeStar eksi — Referensi API Kon eksi menyediakan informasi referensi untuk tindakan koneksi yang tersedia.

  • Untuk melihat langkah-langkah untuk membuat pipeline dengan tindakan sumber yang didukung oleh koneksi, lihat berikut ini:

    • Untuk Bitbucket Cloud, gunakan opsi Bitbucket di konsol atau CodestarSourceConnection tindakan di CLI. Lihat Koneksi Bitbucket Cloud.

    • Untuk GitHub dan GitHub Enterprise Cloud, gunakan opsi GitHub penyedia di konsol atau CodestarSourceConnection tindakan di CLI. Lihat GitHub koneksi.

    • Untuk Server GitHub Perusahaan, gunakan GitHub opsi penyedia Server Perusahaan di konsol atau CodestarSourceConnection tindakan di CLI. Lihat GitHub Koneksi Server Perusahaan.

    • Untuk GitLab.com, gunakan opsi GitLab penyedia di konsol atau CodestarSourceConnection tindakan dengan GitLab penyedia di CLI. Lihat GitLab.com koneksi.

  • Untuk melihat tutorial Memulai yang membuat pipeline dengan sumber Bitbucket dan CodeBuild tindakan, lihat Mem ulai koneksi.

  • Untuk tutorial yang menunjukkan cara menyambung ke GitHub repositori dan menggunakan opsi klon penuh dengan CodeBuild tindakan hilir, lihatTutorial: Gunakan klon penuh dengan sumber GitHub pipeline.