Local Development Setup - Lumina-Enterprise-Solutions/prism-auth-service GitHub Wiki

🚀 Local Development Setup

Panduan ini akan membantu Anda menyiapkan dan menjalankan prism-auth-service di mesin lokal Anda untuk pengembangan dan pengujian.

Penting: Layanan ini adalah bagian dari monorepo dan dirancang untuk dijalankan bersama layanan lain menggunakan Docker Compose dari direktori root.

✅ Prasyarat

Sebelum memulai, pastikan Anda telah menginstal perangkat lunak berikut:

  1. Docker & Docker Compose: Untuk menjalankan layanan dan dependensinya (Postgres, Redis, dll.) dalam kontainer.
  2. Go: Versi 1.24 atau lebih tinggi, untuk menjalankan tes dan linter.
  3. make: Untuk menggunakan perintah shortcut yang telah disediakan.

🏃 Menjalankan Seluruh Ekosistem

Cara termudah dan paling direkomendasikan untuk menjalankan prism-auth-service adalah dengan menjalankan seluruh platform dari direktori root monorepo.

  1. Buka terminal di direktori root lumina-enterprise-solutions.
  2. Jalankan perintah berikut:
    make up
    
    Perintah ini akan melakukan hal berikut:
    • Membangun image Docker untuk semua layanan, termasuk prism-auth-service.
    • Menjalankan semua kontainer yang didefinisikan di docker-compose.yml, seperti database, Redis, Vault, dan semua microservices.
    • Secara otomatis menangani jaringan dan dependensi antar layanan.

🛠️ Perintah Makefile Lokal

Saat berada di dalam direktori services/prism-auth-service, Anda dapat menggunakan Makefile lokal untuk tugas-tugas spesifik layanan:

Perintah Deskripsi
make build Membangun (atau membangun ulang) image Docker khusus untuk layanan ini.
make test Menjalankan unit tests (-short). Tes ini cepat dan tidak memerlukan dependensi eksternal seperti database.
make test-integration Menjalankan semua tes, termasuk integration test yang memerlukan koneksi ke database dan Redis yang sedang berjalan.
make lint Menjalankan linter golangci-lint untuk memeriksa kualitas kode.
make tidy Membersihkan dan merapikan file go.mod dan go.sum.

Contoh Penggunaan

Menjalankan unit tests:

# Dari dalam direktori /services/prism-auth-service
make test

Menjalankan integration tests (pastikan make up sudah berjalan dari root):

# Dari dalam direktori /services/prism-auth-service
make test-integration

Kembali ke Halaman Utama