r/ohmyzsh

▲ 29 r/ohmyzsh+3 crossposts

[Tool] I built an Oh My Zsh plugin to manage multiple OpenStack clouds, auto-venv, and fuzzy-find SSH / VNC consoles

If you work with more than one OpenStack cloud/project day to day, you know the drill: source ~/clouds/prod-openrc.sh, remember which venv has the right client version, openstack server list, ssh into whatever floating IP you copy-pasted from the output... I got tired of it and wrote a Zsh plugin to automate the parts I do 20x a day.

What it does:

- openv [cloud] — pick a cloud from clouds.yaml via fzf (with a live preview card showing auth URL / project / region, no secrets shown), activates the matching Python venv, and exports OS_CLOUD

- ops-ssh [user] [-i keyfile] [--insecure] — fuzzy-pick a server and SSH straight into its floating IP (prioritizes public IPs over private ones automatically); --insecure skips host-key checks, handy since floating IPs get recycled between instances constantly

- ops-console — fuzzy-pick a server and pop its Horizon VNC console URL open in your browser

- opcheck — quick openstack token issue sanity check so you find out your token expired before you're 3 commands deep into something

- opwho / opls — status of what's active / table of everything in clouds.yaml

- ophelp (or openv --help) — cheatsheet of everything below, printed in your terminal

- ~25 short aliases for the commands I run constantly (ops, opnet, opvol, opsec, opfl, oplb, etc. — full list in the README)

It's a normal Oh My Zsh plugin, MIT licensed, no telemetry, no dependencies beyond python3 + PyYAML + fzf (the plugin checks for these on load and warns if something's missing).▎

Install:

git clone https://github.com/whoami96/openstack-zsh-plugin.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/openstack

# add "openstack" to plugins=(...) in ~/.zshrc, then reload

Repo: https://github.com/whoami96/openstack-zsh-plugin

It's a fairly small, personal-scale tool — built it for my own workflow managing a handful of clouds — but figured it might save someone else the same repetitive typing. Happy to hear feedback or take PRs if it's missing something obvious for your workflow.

u/__Who_Am_I_____ — 11 days ago