-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.go
42 lines (32 loc) · 906 Bytes
/
main.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package main
import (
"log"
"github.com/WisdomEnigma/vault-keygen/vault"
"github.com/hashicorp/vault/api"
)
const VAULT_PATH = "secret/data/enigma_secret"
func main() {
client, err := api.NewClient(&api.Config{Address: "http://127.0.0.1:8200"})
if err != nil {
log.Fatalln("Client instance failed:", err.Error())
return
}
client.SetToken("")
_vault := vault.NewClient(client)
service := map[string]interface{}{
"data": map[string]interface{}{
"hello": "world"},
}
data, err := _vault.SaveKeygen(vault.Keygen{Vault_path: VAULT_PATH, Vault_record: service})
if err != nil {
log.Fatalln("Write keygen failed:", err)
return
}
log.Println("Write keygen succeeded:", data)
secret, err := _vault.GetKeygen(vault.Keygen{Vault_path: VAULT_PATH})
if err != nil {
log.Fatalln("Get keygen failed:", err)
return
}
log.Println("Get keygen succeeded:", secret.Data["data"])
}