Minggu ini, saya menyelidiki untuk menyediakan saluran paip Integrasi Berterusan (CI) menggunakan Tindakan GitHub sambil mengembangkan set ujian unit saya untuk projek saya, VShell. Proses ini telah meningkatkan pemahaman saya tentang prinsip CI, ujian automatik dan alatan yang membantu pembangun memastikan penghantaran kod yang boleh dipercayai.
Integrasi Berterusan ialah amalan pembangunan di mana perubahan kod diuji secara automatik dan disepadukan ke dalam repositori kongsi dengan kerap. Dengan memanfaatkan saluran paip CI, pembangun boleh mengesan dan menangani isu awal dalam kitaran pembangunan, meningkatkan kualiti kod dan mengurangkan risiko penyepaduan. Saluran paip CI/CD membolehkan kami membina, menguji dan menggunakan aplikasi secara automatik, mempercepatkan pembangunan dan meningkatkan kebolehpercayaan.
Terdapat banyak alatan CI yang tersedia—Jenkins, CircleCI, TravisCI dan GitLab CI, antara lain—tetapi untuk minggu ini, saya memfokuskan pada Tindakan GitHub untuk melaksanakan CI/CD bagi aplikasi saya. Tindakan GitHub menawarkan persediaan bersepadu dan mudah secara langsung dalam GitHub, menjadikannya pilihan yang bagus untuk projek saya.
Mengkonfigurasi Tindakan GitHub untuk Projek Saya Untuk menyediakan saluran paip CI, saya menavigasi ke tab Tindakan pada repositori GitHub saya dan memilih templat Node.js, kerana aplikasi saya berasaskan JavaScript dan berjalan pada Node.js. Ini menghasilkan fail konfigurasi .yml yang mentakrifkan gelagat saluran paip CI.
Memahami Konfigurasi YAML Bagi mereka yang baru menggunakan CI, fail .yml mungkin kelihatan menakutkan. Berikut ialah pecahan cara ia berfungsi:
Mencetuskan Saluran Paip: Saluran paip ditetapkan untuk dijalankan apabila permintaan tolak atau tarik dibuat ke cawangan utama, menggunakan kata kunci on untuk mentakrifkan pencetus ini.
Menentukan Pekerjaan: Konfigurasi termasuk siri kerja yang dilaksanakan apabila saluran paip CI dicetuskan. Kerja ini menentukan persekitaran binaan OS Ubuntu, menguji merentas versi Node.js yang berbeza dan mengandungi langkah untuk menyediakan dan melaksanakan persekitaran masa jalan. Akhirnya, ujian dijalankan secara automatik untuk mengesahkan kod.
Konfigurasi Pembolehubah Persekitaran Semasa persediaan saluran paip awal saya, saya menghadapi ralat yang berkaitan dengan GROQ_API_KEY, yang penting untuk ujian tertentu dan ditakrifkan dalam fail .env tempatan saya. Walaupun ujian berjalan lancar secara setempat, GitHub Actions tidak dapat mengakses pembolehubah, menyebabkan larian gagal.
Penyelesaian: Menyediakan Rahsia GitHub Untuk menangani perkara ini, saya mengkonfigurasi pembolehubah rahsia untuk kunci API dalam tetapan repositori GitHub saya. Berikut ialah ringkasan ringkas pembetulan:
Atas ialah kandungan terperinci Melaksanakan Talian Paip CI untuk VShell dengan Tindakan GitHub. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!