Skip to main content

OpsWork Swiss Knife.

Project description

PyPI-Server Build Status

OpsWork

To use opswork, follow the following steps:

  1. Create a python virtual environment or use system wide environment

$ python3 -m venv venv
$ source venv/bin/activate
  1. Install opswork package with pip.

$ pip install opswork
  1. Get opswork command line help

$ opswork --help
  1. Init the config file and the sqlite database

$ opswork config init
  1. To edit configs

$ opswork config init
  1. 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
  1. To list recipes

$ opswork recipe list

# Get recipes as a JSON
$ opswork recipe list -o json | jq .
  1. To get a recipe

$ opswork recipe get <recipe_name>
  1. To delete a recipe

$ opswork recipe delete <recipe_name>
  1. 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
  1. To list hosts

$ opswork host list

# Get hosts as a JSON
$ opswork host list -o json | jq .
  1. To get a host

$ opswork host get <host_name>
  1. To SSH into a host

$ opswork host ssh <host_name>
  1. To delete a host

$ opswork host delete <host_name>
  1. 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
  1. To generate a random password

$ opswork random password 8
  1. 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
  1. To list secrets

$ opswork secret list -o json
  1. To get a secret

$ opswork secret get <secret_name>

# For example
$ opswork secret get clivern/cloud_provider/api_key
  1. To delete a secret

$ opswork secret delete <secret_name>

# For example
$ opswork secret delete clivern/cloud_provider/api_key

Project details


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.3.tar.gz (22.0 kB view hashes)

Uploaded Source

Built Distribution

opswork-0.8.3-py3-none-any.whl (32.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page