https://github.com/videsk/doppler-go-sdk
Doppler SDK for Go
https://github.com/videsk/doppler-go-sdk
Last synced: about 2 months ago
JSON representation
Doppler SDK for Go
- Host: GitHub
- URL: https://github.com/videsk/doppler-go-sdk
- Owner: videsk
- Created: 2024-04-09T08:30:09.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-04-09T16:52:48.000Z (about 2 years ago)
- Last Synced: 2025-01-10T23:18:20.233Z (over 1 year ago)
- Language: Go
- Size: 7.81 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Doppler Go SDK
To start using this SDK, just:
## 1. Install the package
```bash
go get github.com/videsk/doppler-go-sdk
```
## 2. Import the package
Using the method `GetSecrets` you will retrieve all secrets in once.
```go
package main
import (
"log"
"github.com/videsk/doppler-go-sdk"
)
func main() {
dopplerClient, err := doppler.NewDoppler("projectName", "secretKey", "environment")
if err != nil {
log.Fatalf("Error with Doppler instance: %v", err)
}
dopplerClient.SetHTTPClient(http.DefaultClient)
secrets, err := dopplerClient.GetSecrets()
if err != nil {
log.Fatalf("Error getting the secrets: %v", err)
}
for key, value := range secrets {
log.Printf("Error getting: %s, Value: %s\n", key, value)
}
// The rest of the code ...
}
```
## 3. Get specific secret by name
Using the method `GetOne` you will retrieve one secret in once, but calling `getSecrets`. Which is not efficient if you need get more than one at the same time.
```go
package main
import (
"log"
"github.com/videsk/doppler-go-sdk"
)
func main() {
dopplerClient, err := doppler.NewDoppler("projectName", "secretKey", "environment")
if err != nil {
log.Fatalf("Error with Doppler instance: %v", err)
}
dopplerClient.SetHTTPClient(http.DefaultClient)
secretName := "my_secret_name"
secretValue, err := dopplerClient.GetOne(secretName)
if err != nil {
log.Fatalf("Error getting the secret %s: %v", secretName, err)
}
log.Printf("The secret value is '%s': %s\n", secretName, secretValue)
// The rest of the code ...
}
```
## Efficient single value
In case you want retrieve multiples values you can just:
```go
secrets, err := dopplerClient.GetSecrets()
if err != nil {
log.Fatalf("Error getting the secrets: %v", err)
}
mySecret1 := secrets["my_secret_name"]
mySecret2 := secrets["my_super_secret"]
```