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:
- Execute arbitrary shell commands on hundreds of remote machines simultaneously using Ansible Runner.
- Pass runtime options such as inventory file, remote command string, dry-run mode, or playbook execution.
- Leverage existing SSH trust relationships without additional setup.
- Provide a clean, intuitive CLI interface with --help for ease of use.
- 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):
- Add pretty output formatting (success/failure summary per host).
- Implement basic logging of executed commands and results.
- Introduce safety checks for risky commands (shutdown, rm -rf, etc.).
- 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:
- Python especially around CLI dev (argparse, click, rich)
- Knowledge of Ansible /Ansible Runner
- Experience with large-scale cloud infrastructure
- Linux system administration & remote execution patterns
- (Optional) UX for command-line tools (help formatting, ergonomics)
- (Optional) Packaging skills (pip packaging)
No Hackers yet
Looking for hackers with the skills:
Nothing? Add some keywords!
This project is part of:
Hack Week 25
Comments
Be the first to comment!
Similar Projects
This project is one of its kind!