Validation Checks
Validation Checks
Pahami setiap validation step yang dijalankan sebelum workflow Custy dimulai.
custy validateCategory
Quick Command
custy validateRingkasanâ
Command validate menjalankan serangkaian validation checks yang independen. Setiap check memastikan satu prerequisite yang diperlukan oleh workflow Custy berikutnya.
Jika suatu validation step gagal, eksekusi langsung berhenti dan Custy melaporkan penyebab serta tindakan yang disarankan untuk menyelesaikannya.
Kategori Validation
Yang Diperiksa Custy
Git Repository
Repository Configuration
Project Resources
Repository State
Urutan Validation
Custy menjalankan validation dalam urutan berikut.
| Step | Validation |
|---|---|
| 1 | Git repository |
| 2 | Git remote |
| 3 | Version file |
| 4 | Commit message template |
| 5 | Tag message template |
| 6 | Staged changes |
| 7 | Commit validation provider preflight |
| 8 | Commit message template availability |
| 9 | Tag message template availability |
Urutan ini memastikan environment checks yang ringan diselesaikan sebelum workflow-specific validation dimulai.
Repository Validation
Git Repositoryâ
Custy terlebih dahulu memastikan current directory termasuk dalam Git repository. Jika Git belum diinisialisasi, validation berhenti karena workflow commands berikutnya bergantung pada operasi Git.
Git Remoteâ
Custy memastikan remote yang dikonfigurasi tersedia. Nama remote diperoleh dari
project configuration, bukan di-hard-code. Proyek dapat menggunakan origin,
upstream, backup, atau custom remote lain sesuai configuration.
Project Resource Validation
Version Fileâ
Custy memastikan version file yang dikonfigurasi tersedia. Lokasinya bergantung
pada project configuration, misalnya __version__.py atau file khusus proyek
lainnya.
Commit Message Templateâ
Custy memastikan commit message template yang dikonfigurasi tersedia. Template
ini biasanya dibuat dengan custy init atau
custy init --mode templates.
Tag Message Templateâ
Custy juga memeriksa tag message template yang dikonfigurasi sebelum workflow yang memerlukan annotated tag atau generated tag message.
Repository State Validation
Staged Changesâ
Sebelum commit-oriented workflow dimulai, Custy memastikan file sudah di-stage. Bergantung pada options dan project configuration, Custy dapat:
- menerima staged files yang sudah ada,
- melakukan stage terhadap modified files secara otomatis,
- mengizinkan staging kosong jika diminta secara eksplisit, atau
- menghentikan validation dan menjelaskan cara menyelesaikan masalah.
Check ini membantu mencegah empty commit yang tidak disengaja.
Commit Validation Provider
Custy menentukan tool.custy.commit.validation secara terpisah dari version
strategy. Auto mode menggunakan Custy validator kecuali Commitizen
configuration dan cz sama-sama tersedia. Explicit atau strict Commitizen mode
gagal lebih awal ketika integration tidak tersedia atau invalid. Final message
validation berjalan setelah editor step pada commit-producing profiles.
Lihat provider behavior matrix.
Hubungan dengan Workflow
custy validate menjalankan checks ini secara langsung.
custy run juga menjalankan validation stage yang sama secara otomatis sebelum
melanjutkan ke workflow pipeline berikutnya.
Dalam development sehari-hari, pengguna yang terutama memakai workflow commands biasanya tidak perlu menjalankan validation secara terpisah.