Tutorial: Mengelola lingkungan dev dan prod dengan Rayfin CLI

Dalam tutorial ini, Anda menyiapkan siklus hidup dua ruang kerja untuk aplikasi Fabric hanya dengan menggunakan Rayfin CLI. Anda menyebarkan perubahan fitur ke ruang kerja pengembangan, memvalidasinya, lalu mempromosikan proyek yang sama ke ruang kerja produksi. Alur kerja ini menggunakan langkah-langkah promosi manual, sehingga Anda tetap mengontrol kapan dan bagaimana perubahan mencapai produksi.

Dalam tutorial ini, Anda akan belajar cara:

  • Buat ruang kerja dev dan prod Fabric untuk proyek yang sama.
  • Terapkan perubahan fitur ke ruang kerja pengembangan.
  • Beralih di antara penerapan dengan menggunakan Rayfin CLI.
  • Promosikan proyek yang divalidasi ke ruang kerja prod.

Prasyarat

  • Akun Fabric
  • Node.js diinstal secara lokal.
  • Rayfin CLI tersedia melalui npx rayfin. Untuk detailnya, lihat referensi Rayfin CLI.

Gambaran umum alur penyebaran

  1. Mulai di komputer lokal Anda dan buat Aplikasi Fabric.
  2. Bangun fitur untuk aplikasi.
  3. Uji secara lokal, lalu sebarkan ke ruang kerja pengembangan menggunakan npx rayfin up -workspace <dev-workspace>.
  4. Ketika perubahan kode diuji dengan baik, sebarkan kembali langsung ke ruang kerja Produksi menggunakan npx rayfin up switch -workspace <prod-workspace>. switch memungkinkan Anda beralih antar lingkungan ke lingkungan penyebaran.

Cuplikan layar memperlihatkan alur penyebaran untuk lingkungan pengembangan dan produksi.

Langkah 1: Membuat ruang kerja dev dan prod di Fabric

Buat dua ruang kerja secara manual di portal Fabric:

  1. Di portal Fabric, buat ruang kerja bernama my-app-dev. Catat ID ruang kerjanya.
  2. Buat ruang kerja kedua bernama my-app-prod. Catat ID ruang kerjanya.

Langkah 2: Masuk ke Fabric

Masuk dengan akun Entra ID Anda agar CLI dapat menerapkan ke tenant Anda:

npx rayfin login

Untuk menargetkan penyewa tertentu, berikan --tenant:

npx rayfin login --tenant <tenant id>

Verifikasi akun yang digunakan untuk masuk kapan saja:

npx rayfin login status

Langkah 3: Buat proyek secara lokal

Buat aplikasi Fabric baru dari templat. Jalankan perintah ini sekali untuk proyek:

npm create @microsoft/rayfin@latest my-app --workspace my-app-dev
cd my-app

Jika Anda menambahkan Rayfin ke proyek yang sudah ada, jalankan npx rayfin init sebagai gantinya.

Langkah 4: Menyebarkan ke ruang kerja dev

Dari akar proyek Anda, sebarkan aplikasi ke my-app-dev:

npx rayfin up --workspace my-app-dev

CLI membuat item aplikasi Fabric di ruang kerja dev, menerapkan skema database Anda, dan mengunggah konten statis jika hosting statis diaktifkan. Penyebaran dicatat di rayfin/.env, dan ruang kerja dev menjadi penyebaran aktif untuk panggilan berikutnya npx rayfin up .

Untuk mempratinjau penyebaran tanpa menerapkan perubahan, jalankan:

npx rayfin up --dry-run --verbose

Langkah 5: Kembangkan dan lakukan iterasi pada ruang kerja pengembangan

Gunakan ruang kerja dev sebagai target saat Anda membuat fitur:

  1. Jalankan server dev frontend secara lokal:

    npm run dev
    
  2. Edit kode, model data, atau rayfin/rayfin.yml.

  3. Terapkan perubahan khusus skema saat diperlukan:

    npx rayfin up db apply
    
  4. Deploy ulang seluruh aplikasi ke dev:

    npx rayfin up
    

Ulangi perulangan ini sampai fitur siap untuk promosi.

Langkah 6: Promosikan proyek ke ruang kerja prod

Saat Anda siap untuk merilis, sebarkan proyek yang sama ke my-app-prod:

npx rayfin up --workspace my-app-prod

CLI membuat item aplikasi Fabric terpisah di ruang kerja prod dan mencatat penyebaran kedua. Prod menjadi penyebaran aktif baru, dan rayfin/.env ditulis ulang untuk mengarahkannya.

Langkah 7: Beralih antara deployment dev dan prod

Gunakan npx rayfin up switch untuk beralih antara dua deployment yang tercatat tanpa mengetik ulang ID ruang kerja.

Daftarkan penerapan yang tercatat untuk proyek:

npx rayfin up list

Pilih penyebaran untuk beralih ke:

npx rayfin up switch --list

Beralih kembali ke dev untuk melanjutkan pengembangan fitur:

npx rayfin up switch my-app-dev

Beralih ke prod untuk perbaikan atau validasi:

npx rayfin up switch my-app-prod

Setelah beralih, perintah biasa npx rayfin up menargetkan ruang kerja yang baru aktif.

Langkah 8: Memvalidasi penyebaran prod

Setelah menerapkan ke prod, pastikan deployment berjalan dengan baik:

npx rayfin up status

Buka URL hosting yang dicetak oleh CLI dan verifikasi bahwa aplikasi berulah seperti yang diharapkan. Jika Anda menemukan masalah:

  1. Beralih kembali ke dev:

    npx rayfin up switch my-app-dev
    
  2. Reproduksi dan perbaiki masalah tersebut di workspace dev.

  3. Deploy ulang ke dev, lakukan validasi, lalu beralih ke prod dan jalankan npx rayfin up untuk merilis perbaikannya.

  • Pertahankan kode sumber Anda dalam kontrol versi. Perlakukan rayfin/.env sebagai penunjuk lokal untuk penyebaran aktif, bukan sebagai sumber kebenaran.
  • Gunakan cabang fitur untuk pekerjaan yang masih dikerjakan, dan gabungkan ke cabang utama Anda hanya setelah deployment di lingkungan dev telah divalidasi.
  • Sisakan npx rayfin up --force untuk situasi ketika CLI secara eksplisit merekomendasikannya. Hindari menjalankannya secara rutin terhadap prod.
  • Gunakan --dry-run sebelum penyebaran prod apa pun untuk mempratinjau tindakan yang dilakukan CLI.
  • Konfirmasikan pengaturan autentikasi di rayfin.yml sebelum mempromosikan ke produksi. Hanya autentikasi berperantara Fabric (Entra SSO) yang didukung untuk aplikasi yang diterapkan. Untuk detail selengkapnya, lihat Menyebarkan aplikasi Fabric ke Fabric.