diff options
author | Mike Crute <mike@crute.us> | 2022-05-21 19:31:25 -0700 |
---|---|---|
committer | Mike Crute <mike@crute.us> | 2022-05-21 19:33:34 -0700 |
commit | 43ea770a0f42d650864ec313a26cf0f1a3824f1c (patch) | |
tree | 5c9a83012e57979aea6ef3965d8e475b770fa735 | |
parent | eab7fb853464db00bc605f905d64655331cb4eb0 (diff) | |
download | golib-43ea770a0f42d650864ec313a26cf0f1a3824f1c.tar.bz2 golib-43ea770a0f42d650864ec313a26cf0f1a3824f1c.tar.xz golib-43ea770a0f42d650864ec313a26cf0f1a3824f1c.zip |
echo: add Vault client builder
-rw-r--r-- | echo/vault.go | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/echo/vault.go b/echo/vault.go new file mode 100644 index 0000000..40096fe --- /dev/null +++ b/echo/vault.go | |||
@@ -0,0 +1,27 @@ | |||
1 | package echo | ||
2 | |||
3 | import ( | ||
4 | "context" | ||
5 | |||
6 | "code.crute.us/mcrute/golib/service" | ||
7 | "code.crute.us/mcrute/golib/vault" | ||
8 | "github.com/labstack/echo/v4" | ||
9 | ) | ||
10 | |||
11 | func MakeVaultClient(ctx context.Context, runner *service.AppRunner, log echo.Logger) (vault.VaultClient, error) { | ||
12 | certRenewal := make(chan *vault.Renewal, 10) | ||
13 | |||
14 | c, err := vault.NewClientEnv(certRenewal) | ||
15 | if err != nil { | ||
16 | return nil, err | ||
17 | } | ||
18 | |||
19 | runner.AddJob(vault.MakeRenewalLogger(certRenewal, log)) | ||
20 | runner.AddJobRunNow(c.Run) | ||
21 | |||
22 | if err = c.LoginApproleEnv(ctx); err != nil { | ||
23 | return nil, err | ||
24 | } | ||
25 | |||
26 | return c, nil | ||
27 | } | ||