Source code for tcex.tcex_vault

# -*- coding: utf-8 -*-
""" TcEx Framework Value Module """
import os

import hvac


[docs]class TcExVault(object): """Add Value functionality to TcEx Framework""" def __init__(self, url=None, token=None, cert=None): """Initialize the Class properties. Args: url (string): The URL to the value server. token (string): The value token. cert (string): The value cert. """ token = token or os.environ.get('VAULT_TOKEN') url = url or 'http://localhost:8200' self._client = hvac.Client(url=url, token=token, cert=cert)
[docs] def create(self, key, value, lease='1h'): """Create key/value pair in Vault. Args: key (string): The data key. value (string): The data value. lease (string): The least time. """ return self._client.write(key, value, lease=lease)
[docs] def read(self, key): """Read data from Vault for the provided key. Args: key (string): The data key. """ return self._client.read(key)
[docs] def delete(self, key): """Delete data from Vault for the provided key. Args: key (string): The data key. """ return self._client.delete(key)