open-vault/command/agent
Clint 245935447b
Vault Agent Template (#7652)
* Vault Agent Template: parse templates  (#7540)

* add template config parsing, but it's wrong b/c it's not using mapstructure

* parsing consul templates in agent config

* add additional test to configuration parsing, to cover basics

* another test fixture, rework simple test into table

* refactor into table test

* rename test

* remove flattenKeys and add other test fixture

* Update command/agent/config/config.go

Co-Authored-By: Jim Kalafut <jkalafut@hashicorp.com>

* return the decode error instead of swallowing it

* Update command/agent/config/config_test.go

Co-Authored-By: Jim Kalafut <jkalafut@hashicorp.com>

* go mod tidy

* change error checking style

* Add agent template doc

* TemplateServer: render secrets with Consul Template (#7621)

* add template config parsing, but it's wrong b/c it's not using mapstructure

* parsing consul templates in agent config

* add additional test to configuration parsing, to cover basics

* another test fixture, rework simple test into table

* refactor into table test

* rename test

* remove flattenKeys and add other test fixture

* add template package

* WIP: add runner

* fix panic, actually copy templates, etc

* rework how the config.Vault is created and enable reading from the environment

* this was supposed to be a part of the prior commit

* move/add methods to testhelpers for converting some values to pointers

* use new methods in testhelpers

* add an unblock channel to block agent until a template has been rendered

* add note

* unblock if there are no templates

* cleanups

* go mod tidy

* remove dead code

* simple test to starT

* add simple, empty templates test

* Update package doc, error logs, and add missing close() on channel

* update code comment to be clear what I'm referring to

* have template.NewServer return a (<- chan) type, even though it's a normal chan, as a better practice to enforce reading only

* Update command/agent.go

Co-Authored-By: Jim Kalafut <jkalafut@hashicorp.com>

* update with test

* Add README and doc.go to the command/agent directory (#7503)

* Add README and doc.go to the command/agent directory

* Add link to website

* address feedback for agent.go

* updated with feedback from Calvin

* Rework template.Server to export the unblock channel, and remove it from the NewServer function

* apply feedback from Nick

* fix/restructure rendering test

* Add pointerutil package for converting types to their pointers

* Remove pointer helper methods; use sdk/helper/pointerutil instead

* update newRunnerConfig to use pointerutil and empty strings

* only wait for unblock if template server is initialized

* drain the token channel in this test

* conditionally send on channel
2019-10-18 16:21:46 -05:00
..
agentint Move renewer to internal package so tests don't barf 2019-09-09 16:09:53 -04:00
auth Vault Agent Template (#7652) 2019-10-18 16:21:46 -05:00
cache Fix Agent handling of gzipped responses (#7470) 2019-09-18 14:24:41 -07:00
config Vault Agent Template (#7652) 2019-10-18 16:21:46 -05:00
sink Allow setting file mode on vault agent sink file (#7275) 2019-08-21 20:41:55 -07:00
template Vault Agent Template (#7652) 2019-10-18 16:21:46 -05:00
alicloud_end_to_end_test.go Switch to go modules (#6585) 2019-04-13 03:44:06 -04:00
approle_end_to_end_test.go Increase the ttl for the tests to pass 2019-05-08 12:10:48 -04:00
aws_end_to_end_test.go Switch to go modules (#6585) 2019-04-13 03:44:06 -04:00
cache_end_to_end_test.go Switch to go modules (#6585) 2019-04-13 03:44:06 -04:00
cert_with_name_end_to_end_test.go Fix gofmt (#6764) 2019-05-20 15:15:05 -07:00
cert_with_no_name_end_to_end_test.go Fix gofmt (#6764) 2019-05-20 15:15:05 -07:00
cf_end_to_end_test.go rename pcf to cf maintaining backwards compat (#7346) 2019-08-26 09:55:08 -07:00
doc.go Vault Agent Template (#7652) 2019-10-18 16:21:46 -05:00
jwt_end_to_end_test.go Switch to go modules (#6585) 2019-04-13 03:44:06 -04:00
README.md Vault Agent Template (#7652) 2019-10-18 16:21:46 -05:00
testing.go Create sdk/ and api/ submodules (#6583) 2019-04-12 17:54:35 -04:00

Vault Agent

Vault Agent is a client daemon that provides Auth-Auth, Caching, and Template features.

Vault Agent provides a number of different helper features, specifically addressing the following challenges:

  • Automatic authentication
  • Secure delivery/storage of tokens
  • Lifecycle management of these tokens (renewal & re-authentication)

See the usage documentation on the Vault website here: