aboutsummaryrefslogtreecommitdiff
path: root/echo/vault.go
diff options
context:
space:
mode:
Diffstat (limited to 'echo/vault.go')
-rw-r--r--echo/vault.go27
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 @@
1package echo
2
3import (
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
11func 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}