Peta dunia

 

EN: Read in English

Dunia C4: Perisai Pipeline · Cabaran bos

Cari lubang

Anda akan belajar: cari dan baiki 5 lubang keselamatan dalam workflow yang nampak sebenar, kemudian buktikan ia masih berfungsi.

Teks BM belum disemak oleh penutur asli.

Disemak dengan GitHub Actions 2026-10 pada 31 Okt 2026

Masalahnya

Ketik setiap titik pada garis masa.

Mei salin workflow “PR helper” dari sebuah blog. Ia jalan hijau setiap hari. Sebelum ia jaga repo kedai awam anda, cari dan baiki 5 lubangnya.

Cuba

Bilik 1: tekan setiap lubang. Setiap satu tunjuk serangan dan pembaikannya.

Tekan setiap baris yang berisiko. Setiap satu tunjuk serangan dan pembetulannya.

Fail workflow .github/workflows/pr-helper.yml

Teka

Fail lama itu jalan hijau setiap hari. Adakah ia selamat?

Pilih satu jawapan.

Cuba

Bilik 2: bina PR helper yang selamat. Setiap umpan ialah salah satu lubang.

Tekan blok untuk tambah. Susun ikut urutan.

Blok

Workflow anda

Tekan satu blok di atas untuk mula.

Fail workflow .github/workflows/

name: PR helper

Apa yang berjalan

Belum ada apa untuk dijalankan.

Cuba

Bilik 3: Mei tambah langkah yang label PR “tested”. Merah! Beri job itu kunci yang ia perlukan sahaja. Kemudian buktikan ia hijau.

Tali sawat merah. Betulkan baris kuning, kemudian run semula.

Apa yang berlaku di GitHub

Fail workflow .github/workflows/pr-helper.yml

name: PR helper
on:
pull_request:
permissions:
contents: read
jobs:
check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
with:
persist-credentials: false
- run: npm ci && npm test
- run: gh pr edit "$PR" --add-label tested
env:
GH_TOKEN: ${{ github.token }}
PR: ${{ github.event.pull_request.number }}

Kuning: baris 4–5. Anda boleh ubah baris ini.

Pilih satu pembetulan

Tali sawat

Pull request · feature → main

Semak

Semakan terakhir. Dah dibaiki, atau masih lubang? Leret setiap baris.

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

1 / 5on: pull_request
on: pull_request

Anda berjaya!

Kini anda boleh cari dan baiki lubang dalam mana-mana workflow.

Nak tahu lebih (pilihan)

Latihan sebenar (pilihan): jalankan actionlint pada workflow anda sendiri. Kemudian buru lima lubang itu sendiri: pencetus, permissions:, runs-on:, setiap uses: dan setiap run:. Baiki satu lubang bagi setiap pull request, supaya setiap perubahan mudah disemak.