245935447b
* 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
51 lines
780 B
HCL
51 lines
780 B
HCL
pid_file = "./pidfile"
|
|
|
|
auto_auth {
|
|
method {
|
|
type = "aws"
|
|
namespace = "/my-namespace"
|
|
|
|
config = {
|
|
role = "foobar"
|
|
}
|
|
}
|
|
|
|
sink {
|
|
type = "file"
|
|
|
|
config = {
|
|
path = "/tmp/file-foo"
|
|
}
|
|
|
|
aad = "foobar"
|
|
dh_type = "curve25519"
|
|
dh_path = "/tmp/file-foo-dhpath"
|
|
}
|
|
}
|
|
|
|
template {
|
|
source = "/path/on/disk/to/template.ctmpl"
|
|
destination = "/path/on/disk/where/template/will/render.txt"
|
|
|
|
create_dest_dirs = true
|
|
|
|
command = "restart service foo"
|
|
|
|
error_on_missing_key = false
|
|
perms = 0600
|
|
}
|
|
|
|
template {
|
|
source = "/path/on/disk/to/template2.ctmpl"
|
|
destination = "/path/on/disk/where/template/will/render2.txt"
|
|
|
|
perms = 0755
|
|
|
|
backup = true
|
|
|
|
wait {
|
|
min = "2s"
|
|
max = "10s"
|
|
}
|
|
}
|