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:
You'll reference that file in your
% pmxcli remote add demo /path/to/tokenfile.txt Successfully added! 'demo' is your active remote. % pmxcli remote list ACTIVE NAME ENDPOINT * demo https://192.168.1.1:3001
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 SERVICES 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
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.