Lewati ke konten utama

Validation Checks

Validation Checks

Direkomendasikan

Pahami setiap validation step yang dijalankan sebelum workflow Custy dimulai.

Commandcusty validate

Category

Validate

Quick Command

custy validate

validationworkflowgitconfiguration

Ringkasan​

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

Pastikan current directory merupakan Git repository yang valid sebelum melanjutkan.

Repository Configuration

Pastikan repository configuration seperti remote dan version file tersedia.

Project Resources

Pastikan template files dan supporting resources yang diperlukan tersedia.

Repository State

Pastikan repository berada dalam kondisi yang sesuai untuk commit workflow.

Urutan Validation

Custy menjalankan validation dalam urutan berikut.

StepValidation
1Git repository
2Git remote
3Version file
4Commit message template
5Tag message template
6Staged changes
7Commit validation provider preflight
8Commit message template availability
9Tag 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.