OpsWork Swiss Knife.
Project description
OpsWork
To use opswork, follow the following steps:
Create a python virtual environment or use system wide environment
$ python3 -m venv venv
$ source venv/bin/activate
Install opswork package with pip.
$ pip install opswork
Get opswork command line help
$ opswork --help
Init the config file and the sqlite database
$ opswork config init
To edit configs
$ opswork config init
Add a recipe
$ opswork recipe add <recipe_name> -p <recipe_relative_path>
# Some examples
$ opswork recipe add clivern/ping -p recipe/ping -f
$ opswork recipe add clivern/nginx -p recipe/nginx -f
$ opswork recipe add clivern/motd -p recipe/motd -f
$ opswork recipe add clivern/cmd -p recipe/cmd -f
# From remote git
$ opswork recipe add clivern/dotfiles/update -p git@github.com:clivern/dotfiles.git -s brew/update -t dotfiles -f
To list recipes
$ opswork recipe list
# Get recipes as a JSON
$ opswork recipe list -o json | jq .
To get a recipe
$ opswork recipe get <recipe_name>
To delete a recipe
$ opswork recipe delete <recipe_name>
Add a host
$ opswork host add <host_name> -i <host_ip> -p <ssh_port> -u <ssh_username> -s <ssh_key_path>
# Add a remote host
$ opswork host add example.com -i 127.0.0.1 -p 22 -u root -s /Users/root/.ssh/id_rsa.pem
# Add the localhost
$ opswork host add localhost -i localhost -c local
To list hosts
$ opswork host list
# Get hosts as a JSON
$ opswork host list -o json | jq .
To get a host
$ opswork host get <host_name>
To SSH into a host
$ opswork host ssh <host_name>
To delete a host
$ opswork host delete <host_name>
Run a recipe towards a host
$ opswork recipe run <recipe_name> -h <host_name> -v key=value
# Some examples
$ opswork recipe run clivern/nginx -h example.com
$ opswork recipe run clivern/ping -h localhost
To generate a random password
$ opswork random password 8
To add a secret
$ opswork secret add <secret/name> <secret_value> -t <tag>
$ opswork secret add clivern/cloud_provider/api_key xxxx-xxxx-xxxx-xxxx -t cloud_provider
To list secrets
$ opswork secret list -o json
To get a secret
$ opswork secret get <secret_name>
# For example
$ opswork secret get clivern/cloud_provider/api_key
To delete a secret
$ opswork secret delete <secret_name>
# For example
$ opswork secret delete clivern/cloud_provider/api_key
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
opswork-0.8.23.tar.gz
(22.0 kB
view details)
Built Distribution
opswork-0.8.23-py3-none-any.whl
(32.1 kB
view details)
File details
Details for the file opswork-0.8.23.tar.gz
.
File metadata
- Download URL: opswork-0.8.23.tar.gz
- Upload date:
- Size: 22.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
acf45988dc7f8559d09ba2162a3dd58442d73d2b75a03666b23eff49661595c3
|
|
MD5 |
5f0b015b7cd12d53e6561e0de7fdebfb
|
|
BLAKE2b-256 |
ea7f9e5e9060ceb3caa5b7b407a25f22aee3b3153558c53b656bb6c829672870
|
File details
Details for the file opswork-0.8.23-py3-none-any.whl
.
File metadata
- Download URL: opswork-0.8.23-py3-none-any.whl
- Upload date:
- Size: 32.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
4137b49d0a389e8c1385916ac4e2170b51d52beeafff497aee5cac73d9b46c78
|
|
MD5 |
59b1185db3269ba925987748a69c1c3e
|
|
BLAKE2b-256 |
70557e10f1387d611d18ca5cebb317e0259236f668431f937f582746a1ae89c3
|