You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
![]() Co-authored-by: Mathias Fredriksson <mafredri@gmail.com> |
1 year ago | |
---|---|---|
.. | ||
README.md | 1 year ago | |
main.tf | 1 year ago | |
run.sh | 1 year ago |
README.md
display_name | description | icon | maintainer_github | verified | tags | ||||
---|---|---|---|---|---|---|---|---|---|
Hashicorp Vault Integration (GitHub) | Authenticates with Vault using GitHub | ../.icons/vault.svg | coder | true |
|
Hashicorp Vault Integration (GitHub)
This module lets you authenticate with Hashicorp Vault in your Coder workspaces using external auth for GitHub.
module "vault" {
source = "https://registry.coder.com/modules/vault-github"
agent_id = coder_agent.example.id
vault_addr = "https://vault.example.com"
}
# A workaround until we have https://github.com/coder/terraform-provider-coder/issues/170
resource "coder_agent" "example" {
...
env = {
VAULT_ADDR = "https://vault.example.com"
}
...
}
Then you can use the Vault CLI in your workspaces to fetch secrets from Vault:
vault kv get -mount=secret my-secret
or using the Vault API:
curl -H "X-Vault-Token: ${VAULT_TOKEN}" -X GET "${VAULT_ADDR}/v1/secret/data/my-secret"
Configuration
To configure the Vault module, you must set up a Vault GitHub auth method. See the Vault documentation for more information.
Examples
Configure Vault integration with a different Coder GitHub external auth ID (i.e., not the default github
)
module "vault" {
source = "https://registry.coder.com/modules/vault"
agent_id = coder_agent.example.id
vault_addr = "https://vault.example.com"
coder_github_auth_id = "my-github-auth-id"
}
Configure Vault integration with a different Coder GitHub external auth ID and a different Vault GitHub auth path
module "vault" {
source = "https://registry.coder.com/modules/vault"
agent_id = coder_agent.example.id
vault_addr = "https://vault.example.com"
coder_github_auth_id = "my-github-auth-id"
vault_github_auth_path = "my-github-auth-path"
}
Configure Vault integration and install a specific version of the Vault CLI
module "vault" {
source = "https://registry.coder.com/modules/vault"
agent_id = coder_agent.example.id
vault_addr = "https://vault.example.com"
vault_cli_version = "1.15.0"
}