charm-vault/src/templates/vault.hcl.j2

50 lines
1.2 KiB
Django/Jinja

{%- if api_addr %}
api_addr = "{{ api_addr }}"
{%- endif %}
{%- if cluster_addr %}
cluster_addr = "{{ cluster_addr }}"
{%- endif %}
{%- if disable_mlock %}
disable_mlock = true
{%- endif %}
{%- if storage_name == 'psql' %}
storage "postgresql" {
connection_url = "{{ psql_db_conn.uri }}"
}
{% elif storage_name == 'mysql' %}
storage "mysql" {
username = "{{ mysql_db_relation.username() }}"
password = "{{ mysql_db_relation.password() }}"
database = "{{ mysql_db_relation.database() }}"
address = "{{ mysql_db_relation.db_host() }}:3306"
}
{%- endif %}
{%- if etcd_conn %}
ha_storage "etcd" {
ha_enabled = "true"
address = "{{ etcd_conn }}"
tls_ca_file = "{{ etcd_tls_ca_file }}"
tls_cert_file = "{{ etcd_tls_cert_file }}"
tls_key_file = "{{ etcd_tls_key_file }}"
# Use v2 api due to https://github.com/hashicorp/vault/issues/4961
etcd_api = "v2"
}
{%- endif %}
listener "tcp" {
address = "0.0.0.0:8200"
{%- if ssl_available %}
tls_cert_file = "/var/snap/vault/common/vault.crt"
tls_key_file = "/var/snap/vault/common/vault.key"
{%- else %}
tls_disable = 1
{%- endif %}
}
# Localhost only listener for charm access to vault.
listener "tcp" {
address = "127.0.0.1:8220"
tls_disable = 1
}