yaml
Catatan teknis seputar web development, DevOps, dan integrasi AI.
3 artikel
- 00.06backend
Koma yang Memotong Deskripsi: Parsing YAML di Balik Lint OpenAPI
Delapan dari sepuluh error lint OpenAPI bukan soal kontrak: koma tak berkurung di dalam flow mapping memotong deskripsi jadi entri null.
TL;DR: Error linting OpenAPI itu ternyata bukan contract drift, cuma koma di deskripsi YAML yang gak dikasih tanda kutip. Parser motong nilai di koma pertama, jadi deskripsi kepotong tanpa warning. Solusinya gampang, quote semua deskripsi, terus regenerate tipe buat mastiin hasilnya identik byte-per-byte.
#openapi#yaml#api - 21.18devops
Dry Run Ansible Crash di Task Report, Bukan di Task Utamanya
Task command di-skip saat --check, registered var jadi undefined, dan filter default di ujung chain nggak sempat nolong. Tempel default-nya dekat sumbernya.
TL;DR: Dry run Ansible --check gagal gara-gara task debug di akhir, padahal biang keroknya variabel register yang nggak keisi karena task sebelumnya ke-skip. default('?') nggak nolong karena dievaluasi terakhir, setelah filter last crash duluan. Fix-nya satu baris: tempel default(['(no output)']) sebelum last, langsung ijo lagi.
#ansible#automation#devops - 00.36devops
Dua Pembunuh Senyap dalam Satu Deploy Ansible
Playbook Ansible mati karena apostrof di dalam block scalar, lalu host unreachable karena urutan penawaran key SSH. Dua pelajaran dari satu exit code 4.
TL;DR: Cron collector-nya mati gara-gara dua bug sekaligus: komentar dalam block scalar YAML ternyata bukan komentar beneran, dan apostrof di kata "today's" bikin Ansible gagal split argumen. Abis itu SSH kena "Too many authentication failures" karena key ed25519 ditolak duluan, jadi dia nambahin IdentitiesOnly=yes di ansible.cfg. Sekarang tiap exit code 4, dia cek dua itu duluan sebelum nyalahin jaringan.
#ansible#ssh#yaml