Peta dunia

 

EN: Read in English

Dunia 7: Robot: Actions & CI/CD

Workflow boleh guna semula

Anda akan belajar: cara tulis workflow sekali dan panggil dari banyak repo.

Teks BM belum disemak oleh penutur asli.

Masalahnya

bash
ls */.github/workflows
blog/.github/workflows:
test.yml
diary/.github/workflows:
test.yml
shop/.github/workflows:
test.yml
Tiga folder projek, blog, diary dan shop. Setiap satu ada salinan test.yml sendiri.

Anda ada tiga laman. Setiap satu ada workflow ujian yang sama, 40 baris. Jumpa pepijat di dalamnya? Baiki tiga kali. Penatnya.

Tengok

Tulis resipi sekali, dalam satu repo kongsi. Workflow lain panggil resipi itu. Itulah reusable workflow (workflow boleh guna semula) (reusable workflow): Workflow yang workflow lain boleh panggil, dibuat dengan on: workflow_call. (workflow boleh guna semula). Trigger mana yang buat ia boleh dipanggil?

Pilih satu jawapan.

Tengok

Ketik baris yang panggil workflow kongsi itu.

0 daripada 1 dijumpai

Untuk memanggil, job tulis uses: dengan laluan fail itu. Ia duduk dalam job, bukan step. Job pemanggil tiada runs-on dan tiada steps.

Tengok

Hantar tetapan biasa dengan with:. Hantar kunci dengan secrets:. Susun setiap satu.

Seret kad ke dalam kotak. Atau ketik kad, kemudian ketik kotak.

      Semak

      Idea baik, atau perlu dibaiki? Leret setiap satu.

      Leret ke kanan untuk bagus, ke kiri untuk perlu baiki. Atau guna butang.

      1 / 4

      Satu workflow ujian kongsi untuk ketiga-tiga laman

      Satu workflow ujian kongsi untuk ketiga-tiga laman

      Semak

      Anda push ke repo diary. Susun apa yang berlaku.

      Langkah pertama di atas. Susun ikut turutan. Guna anak panah, atau seret.

      • ✓ atau ✗ muncul pada commit anda
      • Job test panggil shared/test.yml
      • Job kongsi berjalan dengan input anda
      • Workflow repo diary bermula

      Anda berjaya!

      Kini anda boleh kongsi satu workflow dengan banyak repo.

      Nak tahu lebih (pilihan)

      Composite action ialah sepupu yang lebih kecil. Ia himpunkan steps, dan anda guna sebagai satu step. Reusable workflow pula himpunkan job penuh. Failnya mesti duduk terus dalam .github/workflows/, bukan dalam subfolder. Dalam repo yang sama, panggil sebagai ./.github/workflows/test.yml.