FahamLah

Glosari CI/CD

Setiap perkataan CI/CD dalam kursus ini, dalam bahasa mudah.

agent
Jenkins dan Azure Pipelines panggil mesin pekerja sebagai agent. GitHub dan GitLab panggil runner.
alert fatigue (letih makluman) · alert fatigue
Terlalu banyak makluman sampai orang berhenti membacanya. Akhirnya amaran yang betul terlepas.
allow-list
Senarai pembekal yang diluluskan: hanya action dalam senarai boleh jalan dalam organisasi anda.
blue/green · blue/green deployment
Dua dapur penuh. Uji yang baharu, kemudian tukar papan tanda supaya semua ke sana. Tukar balik untuk undur.
Buildx
Mesin pembungkus: pembina Docker. Ia boleh simpan cache layer dan bina untuk banyak jenis CPU.
cache layer · layer cache
Lapisan kek lapis yang disimpan dari binaan lepas. Lapisan yang tak berubah diguna semula.
canary · canary release
Sedikit pengguna dapat versi baharu dulu, macam beberapa pelanggan rasa hidangan baharu. Okey? Hidang kepada lebih ramai.
CD
Versi yang lulus ujian dihantar secara automatik.
change fail rate
Peratus deployment yang perlu dibaiki segera sebaik sahaja keluar.
change lead time
Masa dari commit sehingga perubahan itu berjalan dalam production.
CI
Setiap perubahan diuji secara automatik.
Cloudflare Containers
Jalankan image container anda di Cloudflare, di belakang sebuah Worker. Perlukan pelan Workers Paid.
composite action
Rempah siap campur: beberapa langkah disimpan sebagai satu action. Ia jalan sebagai satu langkah dalam job.
concurrency
Run dalam kumpulan yang sama tunggu giliran, atau run yang lama dibatalkan.
continuous delivery
Setiap perubahan yang lulus sedia dihantar. Seseorang tekan butang untuk hantar.
continuous deployment
Setiap perubahan yang lulus terus sampai kepada pengguna, tanpa butang.
CVE
ID awam untuk lubang keselamatan yang diketahui, contohnya CVE-2099-0001. Setiap satu ada tahap bahaya.
deploy
Letak kod baharu pada server. Hidangan dah ada di kaunter, mungkin masih bertutup. Release ialah buka tudung itu.
deployment frequency
Berapa kerap anda deploy ke production: berapa kerap van keluar.
deployment rework rate
Peratus deployment yang tak dirancang: trip tambahan untuk baiki masalah dalam production.
end-to-end test
Uji seluruh aplikasi macam pengguna sebenar, dari mula hingga habis. Perlahan, tapi paling dekat dengan dunia sebenar.
environment secret
Secret yang hanya boleh dibaca oleh job yang menyebut environment itu. Kotak rempah berkunci milik setiap dapur.
expand dan contract · expand and contract
Ubah pangkalan data langkah demi langkah: tambah rak baharu, pindah stok, kemudian buang rak lama. Kod lama dan baharu terus berfungsi.
failed deployment recovery time
Berapa lama untuk pulih bila satu deployment gagal dan perlu dibaiki segera.
flaky test
Ujian yang kadang lulus, kadang gagal, pada kod yang sama.
GHCR
GitHub Container Registry (ghcr.io): peti sejuk kedai milik GitHub untuk image.
image multi-arch · multi-arch image
Satu nama image dengan satu pek untuk setiap jenis CPU, contohnya amd64 dan arm64.
integration test
Uji beberapa bahagian yang bekerja bersama, macam rasa kuah.
least privilege
Beri setiap pekerja kunci untuk stesennya sahaja. Tiada lebih.
linter
Robot penyemak. Ia cari kesilapan dan tabiat berisiko dalam fail sebelum fail itu dijalankan.
maklum balas pantas · fast feedback
Tahu tentang masalah dalam beberapa saat atau minit, semasa anda masih ingat perubahan itu.
masking
Hitamkan secret dalam buku log: GitHub tunjuk *** dan bukan teks secret yang tepat.
metrik DORA · DORA metrics
Lima nombor daripada kajian DORA yang tunjuk sebaik mana pasukan menghantar perisian.
OIDC (OpenID Connect)
Runner tunjuk pas pelawat untuk satu job. Cloud semak pas itu dan pinjamkan kunci yang luput bila job tamat.
penapis laluan · path filter
paths atau paths-ignore: mulakan workflow hanya bila fail tertentu berubah.
penyemak wajib · required reviewer
Orang yang mesti lulus dulu sebelum job deploy ke environment, macam ketua chef tandatangan sebelum van bertolak.
persekitaran pratonton · preview environment
Salinan laman sementara untuk satu pull request, dengan pautan sendiri. Pinggan rasa, dibuang bila PR ditutup.
pipeline
Tali sawat automatik: bina, uji, hantar.
piramid ujian · testing pyramid
Banyak unit test pantas di bawah, sedikit integration test, dan beberapa end-to-end test perlahan di atas.
production
Kedai sebenar: tempat pengguna sebenar guna aplikasi anda.
promote
Pindahkan build yang sama, yang dah diuji, ke persekitaran seterusnya. Contohnya dari staging ke production.
provenance
Label "dibuat di sini" yang ditandatangani: repo, commit dan workflow mana yang bina image ini.
pull_request_target
Pencetus PR yang jalan dengan secret dan kunci tulis anda, walaupun untuk fork orang asing. Jangan jalankan kod mereka di situ.
QEMU
Penyesuai yang buat satu jenis CPU berlakon jadi jenis lain. Lebih perlahan, tapi berfungsi.
recreate
Hentikan versi lama, kemudian mulakan yang baharu. Macam tutup gerai untuk tukar menu: pelanggan kena tunggu.
release PR
Pull request yang robot kemas kini dengan nombor versi seterusnya dan changelog. Merge untuk lancarkan.
rollback
Kembali ke versi elok yang terakhir, macam hidang semula masakan semalam yang sedap.
rolling update
Tukar salinan satu demi satu, macam tukar tukang masak seorang demi seorang. Gerai tak pernah tutup.
runner
Mesin yang jalankan kerja dalam pipeline.
SBOM
Senarai bahan perisian: label ramuan. Ia senaraikan setiap pakej dan versi di dalamnya.
script injection
Slip pesanan dengan arahan tersembunyi: teks orang asing jadi arahan dalam skrip run: anda.
secret
Maklumat rahsia seperti token; jangan letak dalam kod.
self-hosted runner
Pekerja sendiri dalam bilik belakang anda: mesin anda yang ambil kerja. Ia tidak dipadam selepas setiap kerja.
service container
Container pembantu, contohnya pangkalan data ujian, yang hidup untuk satu job sahaja.
SLSA
Gred keselamatan makanan untuk binaan (sebut "salsa"): tahap yang tunjuk sejauh mana anda boleh percaya asal pakej.
smoke test
Rasa sekejap sejurus selepas deploy: halaman boleh dibuka, /health kata ok?
stage
Satu stesen pada tali sawat, contohnya lint, test, build, scan, publish atau deploy.
staging
Bilik rasa: salinan production untuk semak build sebelum pengguna sebenar nampak.
supply chain attack
Bahan beracun dari pembekal: penyerang ceroboh alat yang dipinjam oleh banyak pipeline.
tag image · image tag
Label pada pek, contohnya 1.2.0, main atau sha-3f9c2a7. Satu image boleh ada banyak tag.
unit test
Uji satu bahagian kecil sahaja, macam rasa satu bahan. Sangat pantas.
Workers static assets
Cloudflare simpan fail siap anda (HTML, CSS, gambar) pada server di seluruh dunia. Makanan siap bungkus di rak: tiada apa nak dimasak.