Pluggable credentials storage and management for click CLI applications.
Uses ~/.netrc
file method which is used by popular CLI applications like Heroku CLI, AWS CLIs, etc.
Requires python version >=3.6
.
$ pip install click-creds
Here's an example cli.py
file.
#!/usr/bin/env python3
import click
import click_creds
@click.group(context_settings=dict(help_option_names=["-h", "--help"]))
@click_creds.use_netrcstore(
name="myawesomeapp",
mapping={"login": "username", "password": "api_key", "account": "url"},
)
def cli():
pass
# Register "config" group
cli.add_command(click_creds.config_group)
# Entrypoint
if __name__ == "__main__":
cli()
Now, if we execute ./cli.py config
,
$ ./cli.py config
Usage: cli.py config [OPTIONS] COMMAND [ARGS]...
Set or view config variables
Options:
-h, --help Show this message and exit.
Commands:
get Echo config variables
set Update config variables
Please see the example_project
.
All releases should be listed in the releases tab on GitHub.
See CHANGELOG for a more detailed listing.
This project is published with the BSD License. See https://choosealicense.com/licenses/bsd/ for more information about what this means.