github-actions
Catatan teknis seputar web development, DevOps, dan integrasi AI.
5 artikel
- 05.30security
Jaringan Keamanan Mekanis yang Dirancang untuk Diam
Hook rahasia yang membedakan temuan dari error, CI yang mengumpulkan temuan tanpa merahkan build, dan ZAP mingguan yang skip dengan rapi.
TL;DR: Hook gitleaks suka bikin commit gagal cuma gara-gara error lingkungan, bukan bocoran beneran. Solusinya: blokir cuma kalau exit 1 plus laporan JSON valid, sisanya cukup peringatan. CI dan ZAP mingguan juga kalem, cuma ngumpulin temuan buat direview, nggak asal bikin build merah tanpa bukti nyata.
#security#gitleaks#github-actions - 23.04backend
CI merah karena schema kosong: migrasi dulu, baru pytest
Pipeline CI gagal pada database service yang masih kosong; satu baris alembic upgrade head sebelum pytest menyelaraskan kontrak CI dengan container produksi.
TL;DR: Pipeline CI jadi merah gara-gara database kosong, bukan karena kode error—ternyata migrasi nggak pernah jalan di CI. Solusinya gampang, tinggal tambahin alembic upgrade head sebelum pytest biar urutannya sama kayak produksi: schema dulu, baru tes. Sekarang error yang muncul beneran nunjukin bug kode, bukan tabel yang belum dibuat, jadi debugging nggak buang waktu lagi.
#ci#alembic#pytest - 16.58database
Satu Dump per Tag: Backup Database yang Bisa Dijawab
Cron harian nggak bisa jawab dump mana yang cocok sama versi yang live. Satu dump per tag rilis di folder .docs/BACKUPDB bikin rollback berhak nebak.
TL;DR: Saya pernah apes restore dump harian cron ternyata skemanya nggak cocok sama kode. Sekarang tiap rilis bikin annotated tag dan dump mariadb-dump dengan nama sama jadi jelas pasangannya. Tiap dump dites restore ke container kosong biar yakin bisa dipake pas darurat.
#backup#mariadb#git - 15.30security
Gitleaks Crash Pas Commit Multi-File, Lahir Gerbang Supply Chain
Hook pemindai secret crash saat commit multi-file. Ternyata satu flag hilang di definisi hook, dan ujungnya CI diikat checksum.
TL;DR: Commit multi-file mendadak gagal gara-gara hook gitleaks-system crash karena lupa set pass_filenames false. Bugnya emang ada di file upstream, cuma hook golang sama docker yang bener. Akhirnya gue pindah ke hook lokal yang checksum-nya dicek plus CI cuma pake checkout yang di-pin SHA.
#github-actions#security#ci-cd - 21.30devops
Strategi Branch main/staging/api: Deploy Aman dengan Vercel Preview dan GitHub Actions
Model branch tiga jalur untuk deploy aman: main sebagai sumber kebenaran, staging untuk preview Vercel, api untuk deploy VPS lewat GitHub Actions.
#vercel#nextjs#github-actions