omnivore

command module
v0.1.0-alpha Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 27, 2022 License: GPL-3.0 Imports: 1 Imported by: 0

README

NOTE: Currently in development...

Designed by dgim-studio / Freepik Logo designed by dgim-studio

Omnivore is an interactive distributed SSH tool. Designed to quickly identify output anomalies and inconsistencies in large environments.

This program was developed alongside https://github.com/discoriver/massh, and is tightly integrated with it. It's my hope that Omnivore not only serves as a useful tool, but also as a demonstration of how one might utilise Massh elegantly to provide powerful programs that require advanced SSH output processing.

Upcoming features

  • Generally more interactive ability from within the program itself. Running new commands on the same host set, changing public key used, viewing output for individual hosts in their own views etc.
  • Ability for scripts to be executed.
  • Ability to retry failed hosts a configurable number of times.
  • Better SSH key handling.

Demos

Demo 1 - Small number of hosts, grouped output

demo-1

Demo 2 - Larger number of hosts, some failing, no grouping.

demo-1

Known Issues

  • If using iTerm2 on MacOS, you will need to edit your profile, and under the Terminal heading, uncheck the option Save lines to scrollback in alternate screen mode. Leaving this option checked will cause major trauma to your scroll buffer when resizing the terminal window when Omnivore is running.
  • Output does not maintain order.

Acknowledgements

  • Dee, for enriching my life for a time.
  • Tim for putting his trust in me to do good work.
  • Adam & Bryan for helping me see the value.
  • Alysha for always propping up my ego.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
internal
config
Package Config provides functionality to read user-required fields, and build a Massh config from which to generate a StreamCycle
Package Config provides functionality to read user-required fields, and build a Massh config from which to generate a StreamCycle
log
ossh
Package ossh provides functionality for the SSH behaviours required by omnivore.
Package ossh provides functionality for the SSH behaviours required by omnivore.
path
Package path provides file path utilities.
Package path provides file path utilities.
store
Package store provides data storage for omnivore output.
Package store provides data storage for omnivore output.
test
Package test contains relevant test parameters.
Package test contains relevant test parameters.
ui
pkg
group
Package group provides a method for taking an identifier and value pair, comparing them with other pairs, and then grouping identical values.
Package group provides a method for taking an identifier and value pair, comparing them with other pairs, and then grouping identical values.
shell
Package Shell is a collection of shell utilities
Package Shell is a collection of shell utilities

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL