Description

By the end of Hack Week, the target will be to deliver a minimal functional version 1 (MVP) of a custom command-line tool named mgr-ansible-ssh that allows operators to:

  1. Execute arbitrary shell commands on hundreds of remote machines simultaneously using Ansible Runner.
  2. Pass runtime options such as inventory file, remote command string, dry-run mode, or playbook execution.
  3. Leverage existing SSH trust relationships without additional setup.
  4. Provide a clean, intuitive CLI interface with --help for ease of use.
  5. Establish a foundation that can later be extended with advanced features such as logging, grouping, interactive shell mode, safe-command checks, and parallel execution tuning.

The MVP should enable day-to-day operations to efficiently target hundreds of machines with a single, consistent interface.

Goals

Primary Goals (MVP):

Build a functional CLI tool (mgr-ansible-ssh) capable of executing shell commands on multiple remote hosts using Ansible Runner. Test the tool across a large distributed environment (100+ machines) to validate its performance and reliability. The tool should also support multiple runtime flags, such as:

[usage: mgr-ansible-ssh [-h] -i INVENTORY [-r RUN] [--dry-run] [--playbook PLAYBOOK]

Remote command execution wrapper using Ansible Runner.

optional arguments:

-h, --help                   Show this help message and exit.
-i INVENTORY, --inventory    INVENTORY (Path to inventory file)
-r RUN, --run RUN            Shell command to run on remote hosts
-d, --dry-run                Run in Ansible check mode (dry-run)
-p, --playbook PLAYBOOK      Run an Ansible playbook instead of shell command

Secondary/Stretched Goals (if time permits):

  1. Add pretty output formatting (success/failure summary per host).
  2. Implement basic logging of executed commands and results.
  3. Introduce safety checks for risky commands (shutdown, rm -rf, etc.).
  4. Package the tool so it can be installed with pip or stored internally.

Resources

Collaboration is welcome from anyone interested in CLI tooling, automation, or distributed systems. Skills that would be particularly valuable include:

  1. Python especially around CLI dev (argparse, click, rich)
  2. Knowledge of Ansible /Ansible Runner
  3. Experience with large-scale cloud infrastructure
  4. Linux system administration & remote execution patterns
  5. (Optional) UX for command-line tools (help formatting, ergonomics)
  6. (Optional) Packaging skills (pip packaging)

Looking for hackers with the skills:

Nothing? Add some keywords!

This project is part of:

Hack Week 25

Activity

  • 28 minutes ago: deve5h removed keyword ansible from this project.
  • 28 minutes ago: deve5h added keyword "ansible" to this project.
  • 36 minutes ago: deve5h originated this project.

  • Comments

    Be the first to comment!

    Similar Projects

    This project is one of its kind!