import click import logging from utils.keyvault.secrets import SecretsClient logger = logging.getLogger(__name__) #loggers = [logging.getLogger(name) for name in logging.root.manager.loggerDict] #print(loggers) @click.group() @click.option('--keyvault', required=True, help="Specify the keyvault to operate on") @click.pass_context def secrets(ctx, keyvault): ctx.ensure_object(dict) ctx.obj['keyvault'] = keyvault @click.command('create') @click.option('--key', 'key', required=True, help="Key for the secret to create") @click.option('--value', 'value', required=True, prompt=True, hide_input=True, confirmation_prompt=True, help="Value for the secret to create") @click.pass_context def create_secret(ctx, key, value): """Creates a secret in the specified KeyVault""" keyvault = SecretsClient(vault_url=ctx.obj['keyvault']) keyvault.set_secret(key, value) @click.command('list') @click.pass_context def list_secrets(ctx): """Lists the secrets in the specified KeyVault""" keyvault = SecretsClient(vault_url=ctx.obj['keyvault']) click.echo(keyvault.list_secrets()) secrets.add_command(create_secret) secrets.add_command(list_secrets)