-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
7 changed files
with
276 additions
and
55 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,87 +1,151 @@ | ||
# Hydra-Env | ||
|
||
# Hydra Environment Manager | ||
Hydra-Env adalah alat baris perintah (command-line tool) untuk mengelola variabel lingkungan (environment variables) dan kunci (keys), serta memiliki kemampuan integrasi dengan MongoDB. Alat ini memungkinkan Anda dengan mudah membuat, mengelola, dan memuat variabel lingkungan dari berkas, menghasilkan dan menyimpan kunci dengan aman, serta berinteraksi dengan server MongoDB untuk penyimpanan data. | ||
|
||
Hydra Environment Manager adalah alat baris perintah yang memungkinkan Anda mengelola konfigurasi lingkungan secara aman menggunakan pasangan kunci-nilai yang dienkripsi. Alat ini memungkinkan Anda untuk membuat, mengubah, dan menghapus kunci sambil memastikan nilai-nilai dienkripsi, menjaga privasi data. | ||
## Instalasi | ||
|
||
## Fitur | ||
Untuk menginstal Hydra-Env, ikuti langkah-langkah berikut: | ||
|
||
- Menghasilkan dan mencetak kunci enkripsi yang aman. | ||
- Membuat, membaca, memperbarui, dan menghapus pasangan kunci-nilai dalam berkas lingkungan JSON. | ||
- Melakukan enkripsi dan dekripsi nilai untuk keamanan yang lebih baik. | ||
|
||
## Memulai | ||
1. Buat berkas biner eksekusi: | ||
|
||
1. Install aplikasi: | ||
|
||
```shell | ||
```bash | ||
go install github.com/refaldyrk/hydra-env@latest | ||
``` | ||
|
||
2. Jalankan aplikasi: | ||
|
||
```shell | ||
# Generate encryption key | ||
hydra-env --gen-key | ||
## Penggunaan | ||
|
||
# Create an environment file (if not set) | ||
hydra-env --env=mycustomenv.json | ||
Hydra-Env menyediakan serangkaian perintah untuk mengelola variabel lingkungan, kunci, dan berinteraksi dengan server MongoDB. Berikut adalah perintah-perintah yang tersedia: | ||
|
||
# Add a new key-value pair to the environment file | ||
hydra-env --env=mycustomenv.json --add-key="api_key|my_secret_key" | ||
### Menghasilkan dan Mencetak Kunci Baru | ||
|
||
# Retrieve the value of a key from the environment file | ||
hydra -env--env=mycustomenv.json --get-key=api_key | ||
Menghasilkan kunci baru dan mencetaknya ke konsol. | ||
|
||
# List all keys in the environment file | ||
hydra-env --env=mycustomenv.json --list-keys | ||
```bash | ||
hydra-env -gen-key | ||
``` | ||
|
||
# Load all keys in the environment file | ||
hydra-env --env=mycustomenv.json --load-env=example.env | ||
### Menambahkan Kunci Baru | ||
|
||
# Delete a key from the environment file | ||
hydra-env --env=mycustomenv.json --del-key=api_key | ||
``` | ||
Menambahkan kunci baru ke berkas lingkungan. | ||
|
||
## Penggunaan | ||
```bash | ||
hydra-env -env=path/ke/berkas/env -add-key=namaKunci|nilaiKunci | ||
``` | ||
|
||
- Untuk menghasilkan kunci enkripsi baru: | ||
### Mendapatkan Nilai Kunci | ||
|
||
```shell | ||
hydra-env --gen-key | ||
``` | ||
Mendapatkan nilai dari kunci tertentu dalam lingkungan. | ||
|
||
- Untuk menambahkan pasangan kunci-nilai baru ke berkas lingkungan: | ||
```bash | ||
hydra-env -env=path/ke/berkas/env -get-key=namaKunci | ||
``` | ||
|
||
```shell | ||
hydra-env --env=mycustomenv.json --add-key="api_key|my_secret_key" | ||
``` | ||
### Daftar Kunci | ||
|
||
- Untuk mendapatkan nilai dari kunci dalam berkas lingkungan: | ||
Menampilkan daftar semua kunci yang ada dalam berkas lingkungan. | ||
|
||
```shell | ||
hydra-env --env=mycustomenv.json --get-key=api_key | ||
``` | ||
```bash | ||
hydra-env -env=path/ke/berkas/env -list-keys | ||
``` | ||
|
||
- Untuk menampilkan daftar semua kunci dalam berkas lingkungan: | ||
### Menghapus Kunci | ||
|
||
```shell | ||
hydra-env --env=mycustomenv.json --list-keys | ||
``` | ||
Menghapus kunci tertentu dari lingkungan. | ||
|
||
- Untuk menambahkan daftar semua kunci dalam berkas lingkungan: | ||
```bash | ||
hydra-env -env=path/ke/berkas/env -del-key=namaKunci | ||
``` | ||
|
||
```shell | ||
hydra-env --env=mycustomenv.json --load-env=example.env | ||
``` | ||
### Memuat Lingkungan dari Berkas | ||
|
||
- Untuk menghapus kunci dari berkas lingkungan: | ||
Memuat variabel lingkungan dari berkas dan menambahkannya ke lingkungan. | ||
|
||
```shell | ||
hydra-env --env=mycustomenv.json --del-key=api_key | ||
``` | ||
```bash | ||
hydra-env -env=custom.json -load-env=path/ke/berkas/env | ||
``` | ||
|
||
### Perintah Server | ||
|
||
Berinteraksi dengan server MongoDB menggunakan perintah-perintah berikut: | ||
|
||
- Pengecekan koneksi server: | ||
|
||
```bash | ||
hydra-env -server=ping -env=path/ke/berkas/env | ||
``` | ||
|
||
- Menampilkan bantuan perintah server: | ||
|
||
```bash | ||
hydra-env -server=help | ||
``` | ||
|
||
## Konfigurasi | ||
|
||
Sebelum menggunakan Hydra-Env, pastikan Anda telah mengatur variabel lingkungan `HYDRA_MONGO_SERVER` untuk menentukan URL server MongoDB. | ||
|
||
```bash | ||
export HYDRA_MONGO_SERVER=mongodb://localhost:27017 | ||
``` | ||
|
||
## Contoh | ||
|
||
1. Menghasilkan dan mencetak kunci baru: | ||
|
||
```bash | ||
hydra-env -gen-key | ||
``` | ||
|
||
2. Menambahkan kunci baru: | ||
|
||
```bash | ||
hydra-env -env=contoh.json -add-key=KUNCI_API|nilai-kunci-api-anda | ||
``` | ||
|
||
3. Mendapatkan nilai kunci: | ||
|
||
```bash | ||
hydra-env -env=contoh.json -get-key=KUNCI_API | ||
``` | ||
|
||
4. Menampilkan daftar kunci: | ||
|
||
```bash | ||
hydra-env -env=contoh.json -list-keys | ||
``` | ||
|
||
5. Menghapus kunci: | ||
|
||
```bash | ||
hydra-env -env=contoh.json -del-key=KUNCI_API | ||
``` | ||
|
||
6. Memuat lingkungan dari berkas: | ||
|
||
```bash | ||
hydra-env -load-env=berkas_env.env | ||
``` | ||
|
||
7. Berinteraksi dengan server MongoDB - Pengecekan koneksi: | ||
|
||
```bash | ||
hydra-env -server=ping -env=contoh.json | ||
``` | ||
|
||
8. Berinteraksi dengan server MongoDB - Mengimpor kunci dan data lingkungan: | ||
|
||
```bash | ||
hydra-env -server=import -env=contoh.json -serverURL=mongodb://localhost:27017 | ||
``` | ||
|
||
9. Menampilkan bantuan perintah server: | ||
|
||
## Kontribusi | ||
```bash | ||
hydra-env -server=help | ||
``` | ||
|
||
Kontribusi sangat diterima! Jika Anda menemukan bug atau memiliki saran perbaikan, jangan ragu untuk membuka *issue* atau mengajukan *pull request*. | ||
## Kontak | ||
|
||
.... | ||
Untuk pertanyaan, silakan hubungi [Email](mailto:refaldy.rizky22@gmail.com). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
package model | ||
|
||
import "go.mongodb.org/mongo-driver/bson/primitive" | ||
|
||
type Key struct { | ||
ID primitive.ObjectID `bson:"_id"` | ||
KeyID string `bson:"key_id"` | ||
Key string `bson:"key"` | ||
Directory string `bson:"directory"` | ||
Filename string `bson:"filename"` | ||
} |
Oops, something went wrong.