Skip to main content

Menerapkan Environment Variable

Bagi yang belum tahu, environment variables adalah pasangan key-value pada tingkat sistem secara keseluruhan, yang dapat diakses oleh proses yang berjalan di sistem. Environment variables sering digunakan untuk membuat aplikasi yang sama dengan perilaku yang berbeda pada lingkungan deploy yang terpisah, seperti local, develop, staging atau production.

Untuk yang familiar dengan laravel, variable ini disimpan pada file .env.

Untuk yang familiar dengan springboot, variable ini disimpan pada file application.properties.

Pada Golang, untuk membuat atau mengakses environment variables, bisa dengan 2 cara yaitu dengan bantuan external package atau tanpa bantuan external package. Pada tulisan ini, akan dijelaskan dengan bantun external package.

Package yang digunakan adalah GoDotEnv.

Silahkan buat project Go kemudian pada terminal, silahkan tambahkan package ini dengan command berikut :

go get github.com/joho/godotenv

Selanjutnya, pada project, silahkan buat file .env seperti berikut ini :

# .env file

SITE_TITLE=Test Site

Lalu pada file example.go bisa mengakses variable .env tadi, dengan code berikut :

package main

import (
"fmt"
"github.com/joho/godotenv"
"log"
"os"
)

func main() {
// default will be call .env,
//if different filename, use godotenv.Load(".filenameenv")
err := godotenv.Load()

if err != nil {
log.Fatalf("Error loading .env file")
}

siteTitle := os.Getenv("SITE_TITLE")
fmt.Printf("ini SITE_TITLE dari env : %s", siteTitle)

....
}

Lalu jalankan project Go anda, jika berhasil, maka log aplikasi anda akan menampilkan sebagai berikut :

picture 1

Referensi :

Different ways to use environment variables in Golang