The missing OpsWorks CLI, run commands across stacks (and across regions), check your instances, apps, deployments, ELBs, with a smart filtering system.
npm install -g opsworks
opsworks <command> [args]
The OpsWorks CLI has multiple commands, similar to
brew. When you run
opsworks with no arguments, you get an interactive prompt.
GUI / Prompt
For simple tasks, just use
opsworks without a command and you'll get an interactive prompt.
opsworks needs to access the AWS API using your credentials. Just like the AWS SDK or CLI, it will look for credentials in two places :
- From the shared credentials file (
- From environment variables
To use the credentials file, create a
~/.aws/credentials file based on the template below :
[default] aws_access_key_id=your_access_key aws_secret_access_key=your_secret_key
|stacks||list OpsWorks stacks|
|deployments||list OpsWorks deployments|
|elbs||list Elastic Load Balancers|
|setup||run setup recipes|
|configure||run configure recipes|
|deploy||deploy specified app|
|recipes||run specified recipes|
Shared options for these commands
-fSpecify filter (see below)
-uUpdate cookbooks before running the command
-yDo not ask for confirmation
Note: by default, when you do not specify
-y, the CLI will display a summary of what commands it will run and on which layer of which stacks as a precaution.
opsworks command accepts filters. There are three built-in filters :
|layer||The Shortname of the layer|
|stack||The Name of the stack|
|region||The stack's region|
The format is
You can use wildcards, or even use regexes.
For example the command bellow would match all stacks whose name contain
wordpress, and only include their database layer.
opsworks instances -f 'stack:*wordpress*,layer:database'
Using regexes to check ELBs of two wordpress stacks at once :
opsworks instances -f 'stack:(prod|staging)-wordpress'
Additionally, if you use custom JSON on your stacks or layers, you can use arbitrary filters. For example, if your custom JSON has an env variable, this would work :
opsworks instances -f 'env:production'
Please feel free to open an issue if you find a bug or to request a feature. Please make sure to include all relevant logs.
Copyright © Plivo Inc.
All code is licensed under the MIT License. See
LICENSE.md file for details.