DEV Community 👩‍💻👨‍💻

Christopher Konopka
Christopher Konopka

Posted on • Updated on

Configuring environmental variables for Go with ~/.bash_profile

Before sharing a project that uses credentials, it is important to show a user how to save their credentials within the bash_profile. The reasoning for this is security, and it makes variables globally accessible within the architecture. The example is specifically for OSX and Linux.

Open the ~/.bash_profile using your favorite text editor using Terminal.

nano ~/.bash_profile
Enter fullscreen mode Exit fullscreen mode

Create a new variable and export it. Save and exit.

export API_KEY="KEY"
export API_SECRET="SECRET"
Enter fullscreen mode Exit fullscreen mode

Reload the variables using source.

source ~/.bash_profile
Enter fullscreen mode Exit fullscreen mode

Create a new Go program and name it main.js. Add the fmt and os libraries.

package main

import(
  "fmt"
  "os"
)

func main(){
    // ... code here
}
Enter fullscreen mode Exit fullscreen mode

Use the os library's Getenv function to retrieve the environmental variable and print them out.

APIkey := os.Getenv("API_KEY")
APIsecret := os.Getenv("API_SECRET")
Enter fullscreen mode Exit fullscreen mode

Print out the APIkey and APIsecret using fmt.

fmt.Println(APIkey, APIsecret)
Enter fullscreen mode Exit fullscreen mode

Top comments (1)

Collapse
 
arham_abiyan profile image
Arham Awal Abiyan • Edited on

Hello, I think you made a mistake about the file name here

Create a new Go program and name it main.js. Add the fmt and os libraries.

it should be main.go

very helpful post btw, thanks

DEV

Thank you.

 
Thanks for visiting DEV, we’ve worked really hard to cultivate this great community and would love to have you join us. If you’d like to create an account, you can sign up here.