diff --git a/CHANGELOG.md b/CHANGELOG.md index f7c708f..5cb2c1f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +## Unreleased + +CHANGES: + +* Static function code can now reliably read secrets written to disk, because extension registration now occurs after writing files. [[GH-61](https://github.com/hashicorp/vault-lambda-extension/pull/61)] + ## 0.6.0 (March 14, 2022) CHANGES: diff --git a/main.go b/main.go index e9053a8..56d5c85 100644 --- a/main.go +++ b/main.go @@ -46,12 +46,6 @@ func realMain(logger hclog.Logger) error { ctx, cancel := context.WithCancel(context.Background()) defer cancel() - extensionClient := extension.NewClient(os.Getenv("AWS_LAMBDA_RUNTIME_API")) - _, err := extensionClient.Register(ctx, extensionName) - if err != nil { - return err - } - var wg sync.WaitGroup srv, err := runExtension(ctx, logger, &wg) if err != nil { @@ -78,6 +72,12 @@ func realMain(logger hclog.Logger) error { } }() + extensionClient := extension.NewClient(os.Getenv("AWS_LAMBDA_RUNTIME_API")) + _, err = extensionClient.Register(ctx, extensionName) + if err != nil { + return err + } + processEvents(ctx, logger, extensionClient) // Once processEvents returns, signal that it's time to shutdown.