CI/CD¶
Overview¶
Tomcat Monitoring akan menggunakan pipeline terpisah untuk Continuous Integration dan Continuous Deployment. CI memvalidasi source, configuration, automation, dan container candidate. CD memilih artifact yang telah lolos CI, kemudian menjalankan provisioning melalui Ansible dan memverifikasi hasilnya.
Pipeline belum diimplementasikan. Halaman ini mendefinisikan target flow dan boundary agar build, provisioning, deployment, dan validation tidak bercampur. Seluruh target validation diturunkan dari interface pada Deployment Topology, bukan dari detail internal masing-masing tool.
Repository Responsibilities¶
| Repository | Current Responsibility | Status |
|---|---|---|
tomcat |
Menyediakan reusable Apache Tomcat 9.0 container image dan runtime scripts | Available |
tomcat-jmx-exporter |
Menyediakan derived Tomcat image dengan embedded JMX Exporter | Initial source published; CI not implemented |
tomcat-monitoring |
Menyediakan monitoring configuration, thin declarative Ansible orchestration, dan Stack CD Release Hub | Available & Verified Live (TN-015 / TN-016) |
tmctl |
Menyediakan unified cross-platform operator CLI berbasis Go untuk orkestrasi Socket API (Linux & Windows) beserta CI pipeline multi-OS | Available & Verified Live (TN-012 / TN-015 / TN-016) |
tm-agent |
Menyediakan unified cross-platform event collector daemon berbasis Go untuk socket streaming (Linux & Windows) beserta CI pipeline multi-OS | Available & Verified Live (TN-013 / TN-015 / TN-016) |
devops-handbook |
Menyimpan current-state documentation dan engineering history | Available |
Current Status¶
Siklus otomatisasi CI/CD, kompilasi silang biner multi-OS, pengarsipan artefak dengan SHA-256 fingerprint hashing, serta orkestrasi Stack CD Hub telah selesai dieksekusi dan diverifikasi 100% secara live pada Jenkins Controller (http://localhost:8080):
- Component CI Pipelines: Beroperasi otomatis di tomcat-diagnostic-service (TN-004), tomcat-diagnostic-event-collector (TN-005), tmctl (TN-015 & TN-016), dan tm-agent (TN-015 & TN-016).
- Stack CD Hub: Beroperasi otomatis di tomcat-monitoring (TN-006, TN-015, & TN-016).
- Ansible Fleet Provisioning: Menyediakan armada multi-node secara idempoten (TN-009).
- Plug-and-Play Enterprise Container Registry: Mendukung migrasi nir-modifikasi kode ke Harbor / Nexus (TN-010).
- Cross-Platform Engine API & Go Tooling: Perancangan orkestrasi multi-OS via Container Engine Socket API dan kakas Go tmctl/tm-agent (TM-ADR-0027, TN-011), implementasi biner tunggal tmctl lintas OS (TN-012), implementasi agen daemon tm-agent pengumpul event socket API (TN-013), refaktorisasi Ansible roles menjadi thin declarative orchestrator berbasis tmctl dengan OS Fact Branching (TN-014), implementasi pipeline CI/CD produksi biner multi-OS (TN-015), serta eksekusi dan pembuktian live verifikasi multi-OS pada Jenkins Controller & dedicated build agent builder-01 (TN-016).