Awesome Go

grapes

CategorySoftware Packages
SubcategoryDevOps Tools
Stars0

Lightweight tool designed to distribute commands over ssh with ease

About grapes

grapes Go Report Card Build Status Build status GoDoc

grapes is lightweight tool designed to distribute commands over ssh with ease.

Update (25/04/2019)

Handshake validation is now in place in order to fix CVE-2017-3204, The validation will use the built-in fingerprint list ~/.ssh/known_hosts as default.

In order to add your ssh server fingerprint to known_hosts run the following:

$ ssh-keyscan -H YOURHOST.COM >> ~/.ssh/known_hosts

Run with docker

docker run -v ~/.grapes.yml:/root/.grapes.yml -v ~/.ssh/id_rsa:/root/.ssh/id_rsa -it docker.pkg.github.com/yaronsumel/grapes/grapes:0.3.0

Installation

Run (golang v1.10+ required):

$ export GO111MODULE=on; go get -u github.com/yaronsumel/grapes

Usage

Example:

$ grapes -c config.yml -i ~/.ssh/id_rsa -s prod -cmd whats_up --async
  • use the --help flag for full usage output.

Config

config structure (YAML):

version: 1
servers:
 prod :
     - name : "prod server #1"
       host : "prod.example.com:22"
       user : "ubuntu"
 staging :
     - name : "staging server #1"
       host : "staging.example.com:22"
       user : "ubuntu"
     - name : "staging server #2"
       host : "staging.example.com:23"
       user : "ubuntu"
commands:
 whats_up :
     - "ls -al /tmp"
     - "date"
 date :
     - "date"
Written and Maintained by @YaronSumel

Frequently Asked Questions

What is grapes?

grapes is a Software Packages library for the Go programming language. Lightweight tool designed to distribute commands over ssh with ease

How do I install grapes?

Install grapes with the Go module system using `go get yaronsumel/grapes`. Check the repository for the current installation instructions.

What category does grapes belong to?

grapes is listed under Software Packages, specifically DevOps Tools.

← Back to DevOps Tools