40 lines
1.4 KiB
Markdown
40 lines
1.4 KiB
Markdown
# bitwarden-wrapper
|
|
|
|
<a href="https://pypi.org/project/bitwarden-wrapper/">
|
|
<img alt="PyPI - Version" src="https://img.shields.io/pypi/v/bitwarden-wrapper?logo=pypi">
|
|
</a>
|
|
|
|
An extremely simple Bitwarden CLI wrapper. Originally developed for [smol-k8s-lab](https://smol-k8s-lab.open.engineering), but extracted so it can be used elsewhere.
|
|
|
|
## Usage
|
|
|
|
Here's the basic usage:
|
|
|
|
```python
|
|
# initialize the object
|
|
bw = BwCLI(my_passsword, my_client_id, my_client_secret)
|
|
|
|
# unlock the vault
|
|
bw.unlock()
|
|
|
|
# generate a random password
|
|
random_password = bw.generate()
|
|
# create a login item in the vault
|
|
bw.create_login(name="test mctest",
|
|
item_url="coolhosting4dogs.tech",
|
|
user="admin",
|
|
password=random_password)
|
|
|
|
# lock the vault
|
|
bw.lock()
|
|
```
|
|
|
|
If you pass in `tui=True` to the `BwCLI` object, we'll also display a TUI for when a duplicate item exists to allow the user to select what they'd like to do.
|
|
|
|
You can also specify `duplicate_strategy="edit"` to edit existing items. The values for `duplicate_strategy` can be: "edit", "ask", "duplicate", "no_action", but it always defaults to "ask".
|
|
|
|
## Warnings
|
|
|
|
1. If you set your logging library to log level DEBUG, we may print sensitive info when creating and deleting vault items. This is intensional *for debugging purposes only*.
|
|
|
|
2. The TUI may throw issues when run inside an event loop. In which case, wecan always fall back to using rich instead.
|