st2 icon indicating copy to clipboard operation
st2 copied to clipboard

Have st2 pack install checkout git submodules when cloning a pack repo

Open jk464 opened this issue 3 years ago • 3 comments

When a Pack is installed on Stackstorm using pack install - stackstorm performs a clone on the Repo (Code) - however this results in any submodules present in the repo not being checked out and only being an empty directory.

It would be useful if the clone_repo function also checked out any submodules that are present in the repo, as it would be helpful to add dependencies maintained in seperate repos to the pack as a submodule, while still being maintained externally.

In my use case a series of ansible playbooks are maintained in a seperate repo and I would like to also make them available as a pack to st2, and as I see it the best way to do that is via git submodules.

jk464 avatar Nov 23 '22 12:11 jk464

Thanks for the feature request. It would be a helpful addition.

This sounds like a good first issue if someone is willing to contribute the enhancement.

arm4b avatar Nov 23 '22 12:11 arm4b

I know it is does not address the feature enhancement directly, but this function can be addressed with a workflow and rule that is triggered whenever the pack is loaded. The workflow task would look something like: image

Then add a rule to the pack that will run this workflow any time the pack is installed and/or expose the workflow as an alias and allow it to be run directly via Chat if the sub-module needs updating outside of the pack install.

jamesdreid avatar Nov 28 '22 18:11 jamesdreid

Hi I've open a PR that implements this - could someone review this PR? Thanks :)

jk464 avatar Jun 19 '23 15:06 jk464