Integrate with existing Bolt Inventory
Closed this issue · 3 comments
MikaelSmith commented
Focus on interactive approach to interacting with Bolt targets rather than script-driven.
- Easier to read logs across a variety of systems.
- Pre-configured direct filesystem access.
- Copy files between systems.
Add a new plugin that reads an existing Bolt inventory and presents items in that inventory as a hierarchy you can navigate.
- Explore that inventory with Wash. Entries should include any information in the inventory as metadata.
- Hierarchy could have: organize by groups and subgroups. Nodes not in a group are in an implicit
all
group, but that encompasses everything, so we should probably have a special group name for these. - Implement SSHFS over that inventory.
Plan
- Add volume.FS core entry and ssh exec transport as external plugin features (#692)
- Release and document external plugin features (#693)
- Implement external plugin features in wash-ruby (puppetlabs-toy-chest/wash-ruby#27)
- Create Bolt plugin (puppetlabs-toy-chest/boltwash#1)
- Update Wash docs with reference to new boltwash external plugin
ekinanp commented
Could use signal
for other Bolt actions not captured by Wash primitives like run_script
, run_plan
, etc, though we'd need to extend signal
to support all of that.
MikaelSmith commented
I think that's a different facet of this, more aligned with #249.
MikaelSmith commented
Be careful not to pull in puppet as a dependency when loading Bolt as a library. Also, we can likely pre-compute the entire hierarchy the first time we run list
.