I've found <https://github.com/sureshjoshi/pants-p...
# plugins
f
I've found https://github.com/sureshjoshi/pants-plugins/blob/main/pants-plugins/experimental/ansible/README.md googling for "pants ansible". I'd like to try this out, but is there a recommended way to grab something like this? I was thinking of just subtree merging it in to my local repo. The third-party plugin instructions rely on installing via PyPI, so that may not be appropriate for all use cases (especially ones where I might want to help with development while using it on my own)
Paging @wide-midnight-78598 at your convenience since you wrote this plugin, plus I figure you might have some experience with this
b
FYI your second link is to this thread. (Very recursive)
😁 1
w
Stillll in progress. Both Daniel and I stopped work on it for some other stuff, and I was just recently trying to get it back working on 2.17. What I'm using right now is adhoc tools, actually
f
Thanks SJ, I figured ad-hoc would make the most sense now that we have it. I'll look deeper at what you have and take from it what I can. Main things I was looking at: • how to integrate
ansible-galaxy
in such a way as to be
pants export
-able • How to include a uploading a generated pex as part of an anslible play I can see how adhoc would support the latter, but the for the former, I'm kinda letting Pants manage my ansible deps, which I'm not super familiar with
w
Pinging @careful-address-89803 as he did most of the non-trivial Ansible setup and stuff.
f
My intention was also to ask a sort of procedural question on this. Like "how can we collaborate?" I don't need all those plugins, but I would like to look at helping with the ansible one, but I'd probably want it in-repo to iterate on it quickly. Do you intend to keep developing out of that repo?
w
I would looooove any amount of help there. My intention would be similar to what I just did with the scie-plugin (https://github.com/sureshjoshi/pants-plugins/blob/main/pants-plugins/experimental/scie/BUILD), which would be to publish it to pypi for consumption. Reason to not mainline scie-plugin is because it will eventually be handled by pex directly, so this scie-plugin is a temporary patch. Or, given what ansible is and does, and how insanely useful it could be (akin to terraform/helm), push it to Pants main - which was the original intention with a lot of those plugins. I just find it significantly faster to iterate outside of the pants repo 🤷 I have some CC and Swift work I need to pick back up this summer as well, now that I have a better grasp of how they would all tie in
c
When I was working on it, I created example resources in the examples/ansible/helloansible dir. Meant I could synthesise whatever resources I needed and iterate without having to deal with dev on the Corporate repo on the corptop. Building a plugin for something as loose and "helpful" as Ansible is a lot. Figuring out dependency inferrence and how to usefully model all the different Ansible types were the main issues. I think I have a better handle on what would work well with Pants after working on other Pants things for a bit.
f
I mean running things with ansible seems like a good model for
adhoc_tool
, I think I was just trying to figure out ansible dependencies and config files in this context, to use Pants to cache that and then feed that back to ansible in its chroot. At any rate, I'll play around with this when I get some time. I think I can subtree merge it into my repo and then subtree merge it back to a fork of your repo and make a PR from there