Skip to main content

Easy remote command execution

Project description

Easily run commands on collections of hosts

Install

  • Clone the repository

  • Run python setup.py install or python setup.py develop in a virtualenv

Getting Started

Tues expects a command to execute, followed by the name of a hostname provider and its arguments.

Execute on all hosts in file hostnames.

echo "localhost" > hostnames
tues "ls" file hostnames

Providers

Foreman

Execute on all hosts matching a certain foreman expression.

export FOREMAN_URL="https://user:password@foreman.domain/"
tues "ls" fm "class = my::class"

Nagios (via livestatus)

Execute on all hosts with a given service pattern not in state OK

export NAGIOS_HOST="nagios"
export NAGIOS_LIVESTATUS_SOCKET="/var/lib/nagios3/rw/livestatus"
tues -u root "puppet agent run --test" nagios puppet_status

The values of the environment variables above are the defaults, you do not need to specify them if they match your setup.

Custom Providers

New providers may be added by putting a new executable with a name like “tues-provider-” on your PATH. A provider is expected to return a newline seperated list of hosts.

If the provider returns with an error, the output is considered to be an error message and/or it’s help output. If ‘–help’ is passed through to the provider the output is displayed no matter what exit code is used.

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

tues-1.0.4.tar.gz (5.1 kB view hashes)

Uploaded Source

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