Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Lampiran A: GitHub (melalui OAuth aplikasi) tindakan sumber
Lampiran ini memberikan informasi tentang (melalui OAuth aplikasi) GitHub tindakan di. CodePipeline
catatan
Meskipun kami tidak merekomendasikan penggunaan tindakan GitHub (melalui OAuth aplikasi), saluran pipa yang ada dengan tindakan GitHub (melalui OAuth aplikasi) akan terus berfungsi tanpa dampak apa pun. Untuk pipeline dengan tindakan GitHub (melalui OAuth aplikasi), CodePipeline gunakan token OAuth berbasis untuk terhubung ke GitHub repositori Anda. Sebaliknya, GitHub tindakan (melalui GitHub Aplikasi) menggunakan sumber daya koneksi untuk mengaitkan sumber AWS daya ke GitHub repositori Anda. Sumber daya koneksi menggunakan token berbasis aplikasi untuk terhubung. Untuk informasi selengkapnya tentang memperbarui pipeline Anda ke GitHub tindakan yang disarankan yang menggunakan koneksi, lihatPerbarui tindakan sumber GitHub (melalui OAuth aplikasi) ke tindakan sumber GitHub (melalui GitHub Aplikasi). Untuk informasi selengkapnya tentang GitHub akses OAuth berbasis yang berbeda dengan GitHub akses berbasis aplikasi, lihat. https://docs.github.com/en/developers/apps/differences-between-github-apps-and-oauth-apps
Untuk berintegrasi dengan GitHub, CodePipeline gunakan GitHub OAuth aplikasi untuk pipeline Anda. CodePipelinemenggunakan webhook untuk mengelola deteksi perubahan untuk pipeline Anda dengan tindakan sumber GitHub (melalui OAuth aplikasi).
catatan
Saat mengonfigurasi tindakan sumber GitHub (melalui GitHub Aplikasi) AWS CloudFormation, Anda tidak menyertakan informasi GitHub token apa pun atau menambahkan sumber daya webhook. Anda mengonfigurasi sumber daya koneksi seperti yang ditunjukkan AWS::CodeStarConnections::Connectiondalam Panduan AWS CloudFormation Pengguna.
Referensi ini berisi bagian berikut untuk tindakan GitHub (melalui OAuth aplikasi):
-
Untuk informasi tentang cara menambahkan aksi sumber GitHub (melalui OAuth aplikasi) dan webhook ke pipeline, lihatMenambahkan tindakan sumber GitHub (melalui OAuth aplikasi).
-
Untuk informasi tentang parameter konfigurasi dan contoh cuplikan YAML/JSON untuk tindakan sumber GitHub (melalui OAuth aplikasi), lihat. GitHub (melalui OAuth aplikasi) referensi tindakan sumber
penting
Saat membuat CodePipeline webhook, jangan gunakan kredensialnya sendiri atau gunakan kembali token rahasia yang sama di beberapa webhook. Untuk keamanan optimal, buat token rahasia unik untuk setiap webhook yang Anda buat. Token rahasia adalah string arbitrer yang Anda berikan, yang GitHub digunakan untuk menghitung dan menandatangani muatan webhook yang dikirim ke CodePipeline, untuk melindungi integritas dan keaslian muatan webhook. Menggunakan kredensi Anda sendiri atau menggunakan kembali token yang sama di beberapa webhook dapat menyebabkan kerentanan keamanan.
catatan
Jika token rahasia diberikan, itu akan dihapus dalam tanggapan.
Topik
Menambahkan tindakan sumber GitHub (melalui OAuth aplikasi)
Anda menambahkan GitHub (melalui OAuth aplikasi) tindakan sumber ke CodePipeline oleh:
-
Menggunakan CodePipeline konsol Create pipeline wizard (Buat pipeline khusus (konsol)) atau Edit halaman tindakan untuk memilih opsi GitHubpenyedia. Konsol membuat webhook yang memulai pipeline Anda saat sumbernya berubah.
-
Menggunakan CLI untuk menambahkan konfigurasi tindakan untuk
GitHub
tindakan dan membuat sumber daya tambahan sebagai berikut:-
Menggunakan
GitHub
contoh konfigurasi tindakan GitHub (melalui OAuth aplikasi) referensi tindakan sumber untuk membuat tindakan seperti yang ditunjukkan padaBuat pipeline (CLI). -
Menonaktifkan pemeriksaan berkala dan membuat deteksi perubahan secara manual, karena metode deteksi perubahan default memulai pipeline dengan melakukan polling pada sumbernya. Anda memigrasikan pipeline polling Anda ke webhooks untuk tindakan GitHub (melalui OAuth aplikasi).
-
GitHub (melalui OAuth aplikasi) referensi tindakan sumber
catatan
Meskipun kami tidak merekomendasikan penggunaan tindakan GitHub (melalui OAuth aplikasi), saluran pipa yang ada dengan tindakan GitHub (melalui OAuth aplikasi) akan terus berfungsi tanpa dampak apa pun. Untuk pipeline dengan aksi sumber GitHub GitHub (melalui OAuth aplikasi), CodePipeline gunakan token OAuth berbasis untuk terhubung ke GitHub repositori Anda. Sebaliknya, GitHub tindakan baru (melalui GitHub Aplikasi) menggunakan sumber daya koneksi untuk mengaitkan sumber AWS daya ke GitHub repositori Anda. Sumber daya koneksi menggunakan token berbasis aplikasi untuk terhubung. Untuk informasi selengkapnya tentang memperbarui pipeline Anda ke GitHub tindakan yang disarankan yang menggunakan koneksi, lihatPerbarui tindakan sumber GitHub (melalui OAuth aplikasi) ke tindakan sumber GitHub (melalui GitHub Aplikasi).
Memicu pipeline saat komit baru dibuat pada GitHub repositori dan cabang yang dikonfigurasi.
Untuk berintegrasi GitHub, CodePipeline gunakan OAuth aplikasi atau token akses pribadi untuk pipeline Anda. Jika Anda menggunakan konsol untuk membuat atau mengedit pipeline, CodePipeline buat GitHub webhook yang memulai pipeline saat terjadi perubahan di repositori.
Anda harus sudah membuat GitHub akun dan repositori sebelum menghubungkan pipeline melalui tindakan. GitHub
Jika Anda ingin membatasi akses CodePipeline ke repositori, buat GitHub akun dan berikan akses akun hanya ke repositori yang ingin Anda integrasikan. CodePipeline Gunakan akun tersebut saat Anda mengonfigurasi CodePipeline untuk menggunakan GitHub repositori untuk tahapan sumber di pipeline.
Untuk informasi selengkapnya, lihat dokumentasi GitHub pengembang
Topik
Tipe tindakan
-
Kategori:
Source
-
Pemilik:
ThirdParty
-
Penyedia:
GitHub
-
Versi:
1
Parameter konfigurasi
- Pemilik
-
Wajib: Ya
Nama GitHub pengguna atau organisasi yang memiliki GitHub repositori.
- Repo
-
Wajib: Ya
Nama repositori tempat perubahan sumber akan dideteksi.
- Cabang
-
Wajib: Ya
Nama cabang tempat perubahan sumber harus dideteksi.
- OAuthToken
-
Wajib: Ya
Merupakan token GitHub otentikasi yang memungkinkan CodePipeline untuk melakukan operasi pada GitHub repositori Anda. Entri selalu ditampilkan sebagai topeng dari empat tanda bintang. Ini merupakan salah satu dari nilai-nilai berikut:
-
Saat Anda menggunakan konsol untuk membuat pipeline, CodePipeline gunakan OAuth token untuk mendaftarkan GitHub koneksi.
-
Ketika Anda menggunakan AWS CLI untuk membuat pipeline, Anda dapat meneruskan token akses GitHub pribadi Anda di bidang ini. Ganti tanda bintang (****) dengan token akses pribadi Anda yang disalin dari. GitHub Saat Anda menjalankan
get-pipeline
untuk melihat konfigurasi tindakan, topeng empat tanda bintang ditampilkan untuk nilai ini. -
Saat Anda menggunakan AWS CloudFormation template untuk membuat pipeline, Anda harus terlebih dahulu menyimpan token sebagai rahasia AWS Secrets Manager. Anda menyertakan nilai untuk bidang ini sebagai referensi dinamis ke rahasia yang disimpan di Secrets Manager, seperti
{{resolve:secretsmanager:MyGitHubSecret:SecretString:token}}
.
Untuk informasi selengkapnya tentang GitHub cakupan, lihat Referensi API GitHub Pengembang
di GitHub situs web. -
- PollForSourceChanges
-
Wajib: Tidak
PollForSourceChanges
mengontrol apakah CodePipeline polling GitHub repositori untuk perubahan sumber. Kami menyarankan Anda menggunakan webhooks untuk mendeteksi perubahan sumber sebagai gantinya. Untuk informasi selengkapnya tentang mengonfigurasi webhook, lihat atau. Migrasikan jalur pemungutan suara ke tindakan sumber webhook (GitHub (melalui OAuth aplikasi)) (CLI) Perbarui saluran pipa untuk acara push (GitHub (melalui OAuth aplikasi) tindakan sumber) (AWS CloudFormation templat)penting
Jika Anda bermaksud mengonfigurasi webhook, Anda harus mengatur
PollForSourceChanges
false
untuk menghindari eksekusi pipeline duplikat.Nilai yang valid untuk parameter ini:
-
True
: Jika disetel, CodePipeline polling repositori Anda untuk perubahan sumber.catatan
Jika Anda menghilangkan
PollForSourceChanges
, CodePipeline default untuk polling repositori Anda untuk perubahan sumber. Perilaku ini sama seperti jikaPollForSourceChanges
diatur ketrue
. -
False
: Jika disetel, CodePipeline tidak melakukan polling repositori Anda untuk perubahan sumber. Gunakan pengaturan ini jika Anda bermaksud mengonfigurasi webhook untuk mendeteksi perubahan sumber.
-
Artefak masukan
-
Jumlah artefak:
0
-
Deskripsi: Artefak masukan tidak berlaku untuk jenis tindakan ini.
Artefak keluaran
-
Jumlah artefak:
1
-
Deskripsi: Artefak keluaran dari tindakan ini adalah file ZIP yang berisi konten repositori dan cabang yang dikonfigurasi pada komit yang ditentukan sebagai revisi sumber untuk eksekusi pipeline. Artefak yang dihasilkan dari repositori adalah artefak keluaran untuk tindakan tersebut. GitHub ID komit kode sumber ditampilkan CodePipeline sebagai revisi sumber untuk eksekusi pipeline yang dipicu.
Variabel keluaran
Ketika dikonfigurasi, tindakan ini menghasilkan variabel yang dapat direferensikan oleh konfigurasi tindakan 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-variabel tersebut tersedia untuk konfigurasi tindakan hilir.
Untuk informasi lebih lanjut tentang variabel di CodePipeline, lihatReferensi variabel.
- CommitId
-
ID GitHub komit yang memicu eksekusi pipeline. Komit IDs adalah SHA penuh dari komit.
- CommitMessage
-
Pesan deskripsi, jika ada, terkait dengan komit yang memicu eksekusi pipeline.
- CommitUrl
-
Alamat URL untuk komit yang memicu pipeline.
- RepositoryName
-
Nama GitHub repositori tempat komit yang memicu pipeline dibuat.
- BranchName
-
Nama cabang untuk GitHub repositori tempat perubahan sumber dilakukan.
- AuthorDate
-
Tanggal ketika komit ditulis, dalam format stempel waktu.
- CommitterDate
-
Tanggal ketika komit dilakukan, dalam format stempel waktu.
Deklarasi tindakan (GitHubcontoh)
Menghubungkan ke GitHub (OAuth)
Pertama kali Anda menggunakan konsol untuk menambahkan GitHub repositori ke pipeline, Anda diminta untuk mengotorisasi CodePipeline akses ke repositori Anda. Token membutuhkan GitHub cakupan berikut:
-
Ruang
repo
lingkup, yang digunakan untuk kontrol penuh untuk membaca dan menarik artefak dari repositori publik dan swasta ke dalam pipa. -
Ruang
admin:repo_hook
lingkup, yang digunakan untuk kontrol penuh kait repositori.
Ketika Anda menggunakan CLI atau AWS CloudFormation template, Anda harus memberikan nilai untuk token akses pribadi yang telah Anda buat. GitHub
Lihat juga
Sumber daya terkait berikut dapat membantu Anda saat Anda bekerja dengan tindakan ini.
-
Referensi sumber daya untuk Panduan AWS CloudFormation Pengguna AWS::CodePipeline::Webhook — Ini termasuk definisi bidang, contoh, dan cuplikan untuk sumber daya di. AWS CloudFormation
-
Referensi sumber daya untuk Panduan AWS CloudFormation Pengguna AWS::CodeStar::GitHubRepository — Ini termasuk definisi bidang, contoh, dan cuplikan untuk sumber daya di. AWS CloudFormation
-
Tutorial: Membuat pipeline yang membangun dan menguji aplikasi Android Anda AWS Device Farm— Tutorial ini menyediakan contoh file build spec dan contoh aplikasi untuk membuat pipeline dengan GitHub sumber. Ini membangun dan menguji aplikasi Android dengan CodeBuild dan AWS Device Farm.