Mengidentifikasi komponen GitHub Actions
Di sini, Anda akan mempelajari tentang komponen dasar file alur kerja GitHub Actions.
Komponen GitHub Actions
Ada beberapa komponen yang bekerja sama untuk menjalankan tugas atau pekerjaan dalam alur kerja GitHub Actions. Singkatnya, peristiwa memicu alur kerja, yang berisi pekerjaan. Pekerjaan ini kemudian menggunakan langkah-langkah untuk menentukan tindakan mana yang akan berjalan dalam alur kerja. Untuk lebih melihat bagaimana komponen-komponen ini bekerja sama, mari kita lihat sekilas masing-masing komponen.
Alur kerja
Alur kerja adalah proses otomatis yang Anda tambahkan ke repositori Anda. Alur kerja harus memiliki setidaknya satu pekerjaan, dan peristiwa yang berbeda dapat memicunya. Anda dapat menggunakannya untuk membangun, menguji, mengemas, merilis, atau menyebarkan proyek repositori Anda di GitHub.
Pekerjaan
Pekerjaan ini adalah komponen utama pertama dalam alur kerja. Pekerjaan adalah bagian dari alur kerja yang akan dikaitkan dengan runner. Runner dapat dihosting GitHub atau menjadi host mandiri, dan pekerjaan dapat dijalankan di mesin atau di dalam kontainer. Anda akan menentukan runner dengan atribut runs-on:
. Di sini, Anda memberi tahu alur kerja untuk menjalankan pekerjaan ini di ubuntu-latest
. Kita akan membahas lebih banyak tentang runner di pelajaran berikutnya.
Langkah-langkah
Langkah adalah tugas individual yang dapat menjalankan perintah dalam pekerjaan. Dalam contoh sebelumnya, langkah ini menggunakan tindakan actions/checkout@v2
untuk memeriksa repositori. Yang menarik adalah nilai uses: ./action-a
nya. Ini adalah jalur ke tindakan kontainer yang akan Anda buat dalam file action.yml
.
Tindakan
Tindakan di dalam alur kerja Anda adalah perintah mandiri yang dijalankan. Perintah mandiri ini dapat mereferensikan tindakan GitHub seperti menggunakan tindakan kustom Anda sendiri, atau tindakan komunitas seperti yang kami gunakan dalam contoh sebelumnya, actions/checkout@v2
. Anda juga dapat menjalankan perintah seperti run: npm install -g bats
untuk menjalankan perintah pada runner.