A simple SSH configuration deployment tool for the command-line.

  • By Dyntek Services Inc.
  • Last update: Jun 18, 2022
  • Comments: 3


A simple SSH configuration deployment tool for the command-line.


GoConfigure can be run at the command-line with goconfigure. Running goconfigure without any arguments will launch an interactive session where target devices and commands can be entered manually. Interactive mode does not support configuration templating.

Optional arguments include -i inventory_filename and -t template_filename. The template should be defined in a plain-text document and the inventory filename should be defined in a YAML formatted document according to the following schema;

  hostname: s1.yourdomain.com
  username: username
  password: password
  hostname: s2.yourdomain.com
  username: username
  password: password

Note that data is an optional field. The fields defined in data will be available to the template during rendering. Fields required by the template must be defined in data. Field names should be uppercase to be accessible from within the template.




  • 1

    Key-Based Authentication

    Key-based authentication via the -k flag has been added.

    • Key-based authentication supports PEM encoded key files
    • using key-based authentication removes the requirement for passwords in CSVs
  • 2

    deployments struct

    Deployments have been moved to their own struct. At the same time, a patch has been made to CSV usage. The original v0.2.0 release incorrectly supports CSVs.

  • 3

    Feature csv

    CSV functionality has been added. Support for default_username and default_password has been added to the Inventory definition. The inventory schema had to be redone in order to optimally implement CSV functionality.