Late last year we released Panamax Remote Agent deployments, which allow you to deploy Panamax templates to your orchestrator of choice. This was followed by automated endpoint creation, which provisions the Agent on many cloud providers from within Panamax itself.

An Agent generates a unique token that can be used for deployments by anyone you trust, but until now that required your collaborators to install Panamax and its dependencies. Today we are announcing pmxcli, a stand-alone command-line utility for interacting with a remote agent. It offers the basic remote deployment features of Panamax in a smaller download free from all dependencies.


If you already have Panamax, updating your installation will automatically give you pmxcli. If you haven't installed Panamax, you can find the instructions here.

If you'd like pmxcli stand-alone, 64-bit binaries for OSX and Linux are available for direct download. Remember that you'll need to give yourself execute permissions after the file is downloaded, and you'll need to place it somewhere in your PATH (we'd suggest /usr/local/bin) if you'd like to run it from anywhere.


Before you can do anything with pmxcli, you'll need a Remote Agent. The simplest way is still to install Panamax and let it do the work for you. Please note that if you have a Remote Agent from before Agent Installer release 0.1.3, you can still use the pmxcli, but you should read the "SSL Warnings" section of the README.

Once that is finished, there are two resources that can be managed in pmxcli: remotes and deployments. Remotes are the Panamax Agents you have installed, and deployments are the applications that are currently deployed on any one of those agents. You can get an exhaustive list of commands and help by running pmxcli with no arguments, but here are the basics to get you started.

First, you should add a remote. Remotes must be created in the Panamax web interface, and their tokens can now be downloaded as files in the latest release of Panamax:

Download Token

You'll reference that file in your add command:

% pmxcli remote add demo /path/to/tokenfile.txt
Successfully added! 'demo' is your active remote.

% pmxcli remote list
*       demo

Your first remote is automatically made active. The active remote will be the one whose deployments you'll be interacting with when you run any pmxcli deployment commands.

You can deploy any Panamax template, both existing ones you've downloaded from the public templates repository, or those you create yourself:

% pmxcli deployment create wordpress.pmx
Template successfully deployed as '1'

% pmxcli deployment describe 1
ID              1
Name            Wordpress with MySQL
Redeployable    true

ID              STATE
db.service      load_state: loaded; active_state: activating; sub_state: start-pre
wp.service      load_state: loaded; active_state: activating; sub_state: start-pre

Run pmxcli deployment help for a list of commands to interact with deployments.

If you're developing your own Panamax Adapter or troubleshooting unexpected behavior, pmxcli includes a --debug global flag that will log all requests and responses from the Remote Agent.

Try It Out

If you already have Panamax, update your installation and give pmxcli a try! Or, if you were wary of installing Panamax locally, pmxcli just might be your gateway to take advantage of Panamax's application template and remote agent features.