Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Deklarasi tindakan
Tingkat tindakan pipeline memiliki struktur dasar yang mencakup parameter dan sintaks berikut. Untuk informasi selengkapnya, lihat ActionDeclaration objek di Panduan CodePipeline API.
Contoh berikut menunjukkan tingkat tindakan dari struktur pipeline di JSON dan YAML.
Untuk daftar configuration detail contoh yang sesuai dengan jenis penyedia, lihatParameter konfigurasi yang valid untuk setiap jenis penyedia.
Struktur tindakan memiliki persyaratan sebagai berikut:
-
Semua nama tindakan dalam tahap harus unik.
-
Tindakan sumber diperlukan untuk setiap pipeline.
-
Tindakan sumber yang tidak menggunakan koneksi dapat dikonfigurasi untuk deteksi perubahan atau untuk mematikan deteksi perubahan. Lihat Metode Deteksi Perubahan.
-
Ini berlaku untuk semua tindakan, apakah mereka berada dalam tahap yang sama atau pada tahap berikutnya, tetapi artefak input tidak harus menjadi tindakan berikutnya dalam urutan yang ketat dari tindakan yang menyediakan artefak keluaran. Tindakan secara paralel dapat mendeklarasikan bundel artefak keluaran yang berbeda, yang, pada gilirannya, dikonsumsi oleh tindakan berikut yang berbeda.
-
Saat menggunakan bucket Amazon S3 sebagai lokasi penerapan, Anda juga menentukan kunci objek. Kunci objek dapat berupa nama file (objek) atau kombinasi awalan (jalur folder) dan nama file. Anda dapat menggunakan variabel untuk menentukan nama lokasi yang ingin digunakan pipeline. Tindakan penerapan Amazon S3 mendukung penggunaan variabel berikut di kunci objek Amazon S3.
Menggunakan variabel di Amazon S3 Variabel Contoh input konsol Output datetime js-aplikasi/ {datetime} .zip Stempel waktu UTC dalam format ini: < YYYY >-< MM >- DD > _< HH >-< MM > -< SS > Contoh:
js- application/2019 -01-10_07-39-57.zip
new js-aplikasi/ {uuid} .zip UUID adalah pengenal unik global yang dijamin berbeda dari pengenal lainnya. UUID dalam format ini (semua digit dalam format heksadesimal): < 8-digit >-< 4-digit >- 4-digit >-< 4-digit >-< 12-digit > Contoh:
js- application/54a60075 -b96a-4bf3-9013-db3a9 EXAMPLE.zip
name
Nama aksinya.
region
Untuk tindakan di mana penyedia adalah Layanan AWS Wilayah AWS sumber daya.
Cross-Region tindakan menggunakan Region bidang untuk menentukan Wilayah AWS tempat tindakan akan dibuat. Sumber AWS daya yang dibuat untuk tindakan ini harus dibuat di Wilayah yang sama yang disediakan di region lapangan. Anda tidak dapat membuat tindakan lintas wilayah untuk jenis tindakan berikut:
-
Tindakan sumber
-
Tindakan oleh penyedia pihak ketiga
-
Tindakan oleh penyedia khusus
Pelajari
ARN dari peran layanan IAM yang melakukan tindakan yang dinyatakan. Ini diasumsikan melalui roLearn yang ditentukan pada tingkat pipeline.
namespace
Tindakan dapat dikonfigurasi dengan variabel. Anda menggunakan namespace bidang untuk mengatur namespace dan informasi variabel untuk variabel eksekusi. Untuk informasi referensi tentang variabel eksekusi dan variabel keluaran tindakan, lihatReferensi variabel.
catatan
Untuk Amazon ECR, Amazon S3, atau CodeCommit sumber, Anda juga dapat membuat penggantian sumber menggunakan entri transformasi input untuk menggunakan revisionValue in EventBridge untuk peristiwa pipeline Anda, di mana revisionValue ini berasal dari variabel peristiwa sumber untuk kunci objek, komit, atau ID gambar Anda. Untuk informasi selengkapnya, lihat langkah opsional untuk entri transformasi input yang disertakan dalam prosedur di bawah Tindakan dan sumber EventBridge daya sumber Amazon ECRMenghubungkan ke tindakan sumber Amazon S3 dengan sumber diaktifkan untuk acara,, atauCodeCommit Tindakan sumber dan EventBridge.
aksi TypeId
ID tipe tindakan diidentifikasi sebagai kombinasi dari empat bidang berikut.
kategori
Jenis tindakan, atau langkah, dalam pipeline, seperti tindakan sumber. Setiap jenis tindakan memiliki serangkaian penyedia tindakan yang valid tertentu. Untuk daftar penyedia yang valid berdasarkan jenis tindakan, lihatReferensi struktur aksi.
Ini adalah actionTypeId kategori yang valid (tipe tindakan) untuk CodePipeline:
-
Source -
Build -
Approval -
Deploy -
Test -
Invoke -
Compute
owner
Untuk semua jenis tindakan yang saat ini didukung, satu-satunya string pemilik yang valid adalahAWS,ThirdParty, atauCustom. Untuk string pemilik yang valid untuk tindakan tertentu, lihatReferensi struktur aksi.
Untuk informasi lebih lanjut, lihat Referensi API CodePipeline .
versi
Versi aksinya.
penyedia
Penyedia tindakan, seperti CodeBuild.
-
Jenis penyedia yang valid untuk kategori tindakan bergantung pada kategori. Misalnya, untuk kategori tindakan sumber, jenis penyedia yang valid adalah
S3,CodeStarSourceConnection,CodeCommit, atauAmazon ECR. Contoh ini menunjukkan struktur untuk tindakan sumber denganS3penyedia:"actionTypeId": { "category": "Source", "owner": "AWS", "version": "1", "provider": "S3"},
InputArtifacts
Bidang ini berisi struktur artefak masukan, jika didukung untuk kategori tindakan. Artefak input dari suatu tindakan harus sama persis dengan artefak keluaran yang dinyatakan dalam tindakan sebelumnya. Misalnya, jika tindakan sebelumnya menyertakan deklarasi berikut:
"outputArtifacts": [ { "MyApp" } ],
dan tidak ada artefak keluaran lainnya, maka artefak input dari tindakan berikut harus:
"inputArtifacts": [ { "MyApp" } ],
Misalnya, tindakan sumber tidak dapat memiliki artefak input karena ini adalah tindakan pertama dalam pipeline. Namun, tindakan sumber akan selalu memiliki artefak keluaran yang diproses oleh tindakan berikut. Artefak keluaran untuk tindakan sumber adalah file aplikasi dari repositori sumber, di-zip dan disediakan melalui bucket artefak, yang diproses oleh tindakan berikut, seperti CodeBuild tindakan yang bertindak pada file aplikasi dengan perintah build.
Sebagai contoh tindakan yang tidak dapat memiliki artefak keluaran, tindakan penerapan tidak memiliki artefak keluaran karena tindakan ini umumnya merupakan tindakan terakhir dalam pipeline.
name
Nama artefak untuk artefak masukan tindakan.
KeluaranArtefak
Nama artefak keluaran harus unik dalam pipeline. Misalnya, pipeline dapat menyertakan satu tindakan yang memiliki artefak keluaran bernama "MyApp" dan tindakan lain yang memiliki artefak keluaran bernama. "MyBuiltApp" Namun, pipeline tidak dapat menyertakan dua tindakan yang keduanya memiliki artefak keluaran bernama"MyApp".
Bidang ini berisi struktur artefak keluaran, jika didukung untuk kategori tindakan. Artefak keluaran suatu tindakan harus sama persis dengan artefak keluaran yang dinyatakan dalam tindakan sebelumnya. Misalnya, jika tindakan sebelumnya menyertakan deklarasi berikut:
"outputArtifacts": [ { "MyApp" } ],
dan tidak ada artefak keluaran lainnya, maka artefak input dari tindakan berikut harus:
"inputArtifacts": [ { "MyApp" } ],
Misalnya, tindakan sumber tidak dapat memiliki artefak input karena ini adalah tindakan pertama dalam pipeline. Namun, tindakan sumber akan selalu memiliki artefak keluaran yang diproses oleh tindakan berikut. Artefak keluaran untuk tindakan sumber adalah file aplikasi dari repositori sumber, di-zip dan disediakan melalui bucket artefak, yang diproses oleh tindakan berikut, seperti CodeBuild tindakan yang bertindak pada file aplikasi dengan perintah build.
Sebagai contoh tindakan yang tidak dapat memiliki artefak keluaran, tindakan penerapan tidak memiliki artefak keluaran karena tindakan ini umumnya merupakan tindakan terakhir dalam pipeline.
name
Nama artefak untuk artefak keluaran tindakan.
konfigurasi (oleh penyedia tindakan)
Konfigurasi tindakan berisi detail dan parameter yang sesuai dengan jenis penyedia. Pada bagian di bawah ini, contoh parameter konfigurasi tindakan khusus untuk aksi sumber S3.
Konfigurasi tindakan dan batas input/output artefak dapat bervariasi menurut penyedia tindakan. Untuk daftar contoh konfigurasi tindakan berdasarkan penyedia tindakan, lihat Referensi struktur aksi dan tabel diParameter konfigurasi yang valid untuk setiap jenis penyedia. Tabel ini menyediakan tautan ke referensi tindakan untuk setiap jenis penyedia, yang mencantumkan parameter konfigurasi untuk setiap tindakan secara rinci. Untuk tabel dengan batas artefak input dan output untuk setiap penyedia tindakan, lihatArtefak input dan output yang valid untuk setiap jenis tindakan.
Pertimbangan berikut berlaku untuk bekerja dengan tindakan:
-
Tindakan sumber tidak memiliki artefak input, dan tindakan penerapan tidak memiliki artefak keluaran.
-
Untuk penyedia tindakan sumber yang tidak menggunakan koneksi, seperti S3, Anda harus menggunakan
PollForSourceChangesparameter untuk menentukan apakah Anda ingin pipeline Anda dimulai secara otomatis ketika perubahan terdeteksi. Lihat Pengaturan yang valid untuk PollForSourceChanges parameter. -
Untuk mengonfigurasi deteksi perubahan otomatis untuk memulai pipeline Anda, atau untuk menonaktifkan deteksi perubahan, lihatTindakan sumber dan metode deteksi perubahan.
-
Untuk mengonfigurasi pemicu dengan pemfilteran, gunakan tindakan sumber untuk koneksi, lalu lihatOtomatiskan saluran pipa awal menggunakan pemicu dan penyaringan.
-
Untuk variabel keluaran untuk setiap tindakan, lihatReferensi variabel.
catatan
Untuk Amazon ECR, Amazon S3, atau CodeCommit sumber, Anda juga dapat membuat penggantian sumber menggunakan entri transformasi input untuk menggunakan
revisionValuein EventBridge untuk peristiwa pipeline Anda, di manarevisionValueini berasal dari variabel peristiwa sumber untuk kunci objek, komit, atau ID gambar Anda. Untuk informasi selengkapnya, lihat langkah opsional untuk entri transformasi input yang disertakan dalam prosedur di bawah Tindakan dan sumber EventBridge daya sumber Amazon ECRMenghubungkan ke tindakan sumber Amazon S3 dengan sumber diaktifkan untuk acara,, atauCodeCommit Tindakan sumber dan EventBridge.penting
Pipeline yang tidak aktif selama lebih dari 30 hari akan menonaktifkan polling untuk pipeline. Untuk informasi selengkapnya, lihat polling DisabledAt dalam referensi struktur pipa. Untuk langkah-langkah untuk memigrasikan pipeline Anda dari polling ke deteksi perubahan berbasis peristiwa, lihat Metode Deteksi Perubahan.
catatan
T CodeCommit indakan sumber dan S3 memerlukan sumber daya deteksi perubahan yang dikonfigurasi ( EventBridge aturan) atau menggunakan opsi untuk mensurvei repositori untuk perubahan sumber. Untuk pipeline dengan tindakan sumber Bitbucket GitHub,, atau GitHub Enterprise Server, Anda tidak perlu mengatur webhook atau default untuk polling. Tindakan koneksi mengelola deteksi perubahan untuk Anda.
Jalankan Pesanan
Bilangan bulat positif yang menunjukkan urutan menjalankan tindakan dalam tahap. Tindakan paralel dalam tahap ditampilkan memiliki bilangan bulat yang sama. Misalnya, dua tindakan dengan urutan run dua akan berjalan secara paralel setelah tindakan pertama dalam tahap berjalan.
runOrderNilai default untuk suatu tindakan adalah 1. Nilai harus berupa bilangan bulat positif (bilangan alami). Anda tidak dapat menggunakan pecahan, desimal, angka negatif, atau nol. Untuk menentukan urutan tindakan seri, gunakan angka terkecil untuk tindakan pertama dan angka yang lebih besar untuk masing-masing tindakan lainnya secara berurutan. Untuk menentukan tindakan paralel, gunakan bilangan bulat yang sama untuk setiap tindakan yang ingin Anda jalankan secara paralel. Di konsol, Anda dapat menentukan urutan serial untuk tindakan dengan memilih Tambahkan grup tindakan pada tingkat di tahap tempat Anda ingin menjalankannya, atau Anda dapat menentukan urutan paralel dengan memilih Tam bah tindakan. Kelompok tindakan mengacu pada urutan menjalankan satu atau lebih tindakan pada tingkat yang sama.
Misalnya, jika Anda ingin tiga tindakan dijalankan secara berurutan dalam tahap, Anda akan memberikan tindakan pertama runOrder nilai 1, tindakan kedua runOrder nilai 2, dan yang ketiga runOrder nilai 3. Namun, jika Anda ingin tindakan kedua dan ketiga berjalan secara paralel, Anda akan memberikan tindakan pertama runOrder nilai 1 dan tindakan kedua dan ketiga runOrder nilai 2.
catatan
Penomoran tindakan serial tidak harus dalam urutan yang ketat. Misalnya, jika Anda memiliki tiga tindakan dalam urutan dan memutuskan untuk menghapus tindakan kedua, Anda tidak perlu menomori ulang runOrder nilai tindakan ketiga. Karena runOrder nilai tindakan itu (3) lebih tinggi dari runOrder nilai tindakan pertama (1), tindakan ini berjalan secara berurutan setelah tindakan pertama di tahap.