Rumah > Artikel > hujung hadapan web > Membuat saluran paip CI untuk Explainer.js
Minggu ini saya membuat saluran paip CI untuk Explainer.js saya. Memandangkan saya mempunyai skrip berbeza yang disediakan sejak beberapa minggu lalu, ia agak mudah.
Tetapan pertama untuk menyediakan saluran paip CI ialah menambahkan fail YML dalam direktori .github/workflows. Saya menggunakan versi lalai templat CI node.js daripada GitHub tetapi dengan beberapa perubahan. Mula-mula saya membuat draf PR dengan pilihan lalai. Kemudian saya menarik dahan itu dan membuat beberapa pelarasan. Saya menukar nama, memecahkan kerja bina kepada tiga kerja berasingan. Bina untuk memasang nod dan kemudian lint-and-format dan akhirnya menguji untuk menjalankan ujian. Saya juga menggunakan kata kunci keperluan untuk melangkau kerja seterusnya jadi jika yang sebelumnya gagal, ia akan melangkau yang seterusnya. Jadi, jika penetapan nod gagal ia tidak akan menjalankan lint-and-format dan jika lint-and-format gagal ia tidak akan menjalankan ujian. Yang berlaku beberapa kali kerana index.test.js saya tidak disediakan dengan betul jadi saya terpaksa membuat pembetulan kecil dengan menghantar kunci-api-uji melalui argv untuk dijalankan. Ia berjalan lancar secara tempatan kerana saya telah menyediakan .toml dan .env. Menyediakan lint-and-format agak mudah kerana saya menjalankan skrip apabila saya cuba membuat komitmen secara tempatan supaya ia memformatkan fail saya secara automatik. Saya membuat perubahan pada fail YML lalai mengikut keperluan projek saya. Dan Ia berfungsi dengan baik! Lihatlah.
Saya mengusahakan DocBot. Walaupun projek itu dalam JS, projek ini menggunakan rangka kerja ujian berbeza yang dipanggil vitest yang serasi dengan jest. Satu perkara yang saya perhatikan dengan serta-merta betapa pantasnya ia dibandingkan dengan hanya gurauan. Dan output terminal sangat digilap. Menjadikan usaha dalam isu ini agak menyeronokkan. Saya bekerja untuk menjadikan file.test.js test suite OS agnostik. Saya menjalankannya dalam terma WSL saya yang berjalan dengan baik tetapi ia tidak berjalan dalam cmd.exe. Saya segera perasan sekarang struktur laluan yang dijangkakan adalah berbeza. Sesuatu yang saya temui apabila saya selesai menulis ujian saya dalam explainer.js minggu lepas. Saya menggunakan WSL secara lalai tetapi saya ingat tidak semua orang memilikinya jadi saya menjalankannya dalam cmd.exe dan saya mempunyai isu yang sama untuk ujian yang saya tulis dalam FilePathResolver.test.js jadi saya terpaksa membetulkannya. Jadi, mudah untuk terlepas pandang menjalankan terminal dalam os yang berbeza apabila menggunakan terminal vscode tetapan lalai. Jadi selepas beberapa percubaan dan kesilapan saya membetulkannya dan membuat PR saya.
Atas ialah kandungan terperinci Membuat saluran paip CI untuk Explainer.js. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!