wfa(1) -- manage workfrom devices
SYNOPSIS
wfa [-a|--show-all] [list]
wfa [-D|--dry-run] [shell] @<device-tag>
wfa [-D|--dry-run] [run] @<device-tag> <remote-command ...>
wfa identify <device-id> @<device-tag> <name>
wfa screen @<device-tag>
wfa heartbeats @<device-tag>
wfa console
DESCRIPTION
wfa
is a tool for listing and connecting to workfrom devices via SSH.
It is operated using sub-commands, but for simple use cases the sub-command is assumed.
COMMANDS
list
Display a list of registered devices.
Each device has a tag assigned for use in issuing commands.
This command is assumed if you provide no arguments.
Use -a
to list untagged devices.
shell
Open an interactive shell on the remote device, specified by the device tag. This command is assumed if you provide a device tag without additional arguments.
run
Issue a command on a device and display the output. This command is assumed if you provide a device tag with an additional command argument.
identify
Set a device tag and name, given the device ID. Devices must be tagged in order to be maintained with wfa.
screen
Open a screen window to a shell on the remote device, specified by the device tag. Useful if you're running screen and want titled windows for each device.
heartbeats
List the last 100 or so device heartbeats, specified by the device tag.
console
Open an interactive Ruby prompt with a ready API handle. It's useful for experimentation or exploring the API.
USAGE
Note that you must be logged in to the tunnel server (as yourself) to use the SSH tunneling features. No authentication is performed, you must have SSH auth already configured to use it.
To see a list of devices:
wfa
To open a shell on a device:
wfa @ovation
To run a command on a device:
wfa @ovation cat /etc/hostname
To run these commands from your own machine, prepend
ssh -A <login>@staging.workfrom.co
and they'll work more or less the same way.
(-A
enables agent forwarding, which you need to access the devices themselves.)
ADVANCED
Installation notes
To install the gem you need to install some library dependencies. For example, this works on Debian:
sudo apt-get install ruby-dev libcurl4-openssl-dev
Distribution
Currently wfa is distributed via Zack's dropbox. The URL is:
https://dl.dropboxusercontent.com/u/16760254/wfa-latest.gem
To release a new version, Zack just builds the gem and copies to his dropbox public folder.
FILES
~/.wfa.json
Saved settings for wfa
, including login credentials and backend URL.