Hey all, I just wanted to write a quick appreciati...
# general
w
Hey all, I just wanted to write a quick appreciation message for a) Pants itself, and b) all the plugin help I've received here on Slack. I just finished re-writing the entire build/deployment process for a multi-year legacy project using Pants + some custom plugins, and I was able to gut a slapdash set of bash scripts, Dockerfiles, build containers, and who knows what else - in favour of a handful of BUILD files of like 15 lines of code each. I handed over the project today and this is essentially how it went: Me - "Okay, so to deploy, we have to generate the protobufs, cythonize our core libs, embed the protobufs and core libs in some of our sub-repos, Dockerize the API gateway and microservices, package our system services, and then deploy all of that to our server and then run e2e testing." Client - "Alright, this sounds painful, how do we do it?" Me - "`./pants deploy :myproject`" [drops keyboard and walks away]
🎤 7
👖 9
❤️ 2
🙌 2
🎉 9
b
What a mic drop. Haha.
P.S. Would it be okay to add this, in whole or in part, to the Testimonials page? It is glorious.
👍 1
w
Yep! Feel free - anything I say is fair game 🙂
h
Can you expense that broken keyboard? 🤣
b
It came with the cape. This story definitely has a cape in it. 🦸
c
Dramatic 😛 haha.
f
😄 well done @wide-midnight-78598! So you’ve written a new goal
deploy
? Feel free to share more about the goal and what else you had to develop in Pants to support your client’s workflows. And how much you’ve got OOTB from Pants, I’d love to learn more!
w
Yep, I'm working on getting a proper Ansible role in place (https://github.com/sureshjoshi/pants-plugins/tree/4-prototype-ansible-plugin). That source code is out of date from what I use internally, as my internal plugin is dedicated to my specific process and not very generalized yet, so when I get a free day or two, I'm going to port the rest over and make it available on that repo. Otherwise, I used the standard Python, Docker plugins - I started out using the experimental shell plugins which were fine and already fixed a lot for me, but then decided I wanted something more specific. So, I wrote a barebones Ansible plugin (playbook runner, basically), Cythonizer (which I'm trying to port over to mypyc - https://github.com/sureshjoshi/pants-plugins/blob/main/pants-plugins/experimental/mypyc/README.md ), and then a simple NPM/Nodejs plugin to compile my front-end website. Again, it'll show up on that repo when I de-personalize it (https://github.com/sureshjoshi/pants-plugins/issues/5) I think that's about it 🙂
💯 3