Saya sedang membangun aplikasi baris perintah Ruby dengan karakteristik berikut:
- Ini menggunakan kerangka kerja GLI.
- Aplikasi ini menggunakan variabel
ENV['HOME']
untuk jalur ke direktori home pengguna. - File konfigurasi disimpan di bawah direktori home pengguna.
- Aplikasi ini akan diterapkan ke produksi sebagai Permata.
- Pengembangan dilakukan pada mesin yang sama yang menggunakan aplikasi dalam produksi.
- Kombinasi Mentimun, RSpec dan menjalankan aplikasi melalui
bundle exec bin/app_name
digunakan untuk menguji skrip dalam pengembangan.
Aplikasi ini memanipulasi file. Tujuan saya adalah memastikan instance pengembangan hanya beroperasi pada lingkungan pengembangan/pengujiannya sendiri. Saya yakin pendekatan yang baik adalah dengan mengganti ENV['HOME']
saat skrip dijalankan untuk pengembangan.
Apakah ada cara untuk mengganti variabel ENV['HOME']
sehingga, bagaimanapun caranya, setiap kali skrip dijalankan di direktori pengembangannya, skrip tidak menggunakan jalur ENV['HOME']
yang sebenarnya?