https://pantsbuild.org/ logo
#general
Title
# general
f

freezing-lamp-12123

07/02/2022, 6:54 AM
👋 — hello, new to pants build — pretty excited about a tool that may just deliver on the promise of bazel tooling without all the awkwardness of starlark and WORKSPACE woes 😆 … i was surprised to not find any general/core handling of external repositories though — is that uncommon with pants? something for vendoring third party code via either remote archives, or git repositories, without having to resort to a custom plugin to provide something to get started?
👋 4
b

bitter-ability-32190

07/02/2022, 11:45 AM
Surprisingly it's just not something that's come up that often for us yet. The closest thing you'll get is on Pants 2.13 you can have assets (files/resources) be declared as an http URL. Pants is pluggable, open to contributions, and primed and ready for such a feature. So all it takes is a good use-case and a willing volunteer 😉
🚀 1
Although, there might also be in-ecosystem support. For instance in Python the lockfile support VCS and URI requirements
h

happy-kitchen-89482

07/02/2022, 12:08 PM
Hi @freezing-lamp-12123, which language(s) are you working with? As @bitter-ability-32190 mentioned, this is well-supported for Python via standard mechanisms, but I'm less familiar with the JVM side of things.
I suspect this would require some work, but not a frightening amount...
f

freezing-lamp-12123

07/02/2022, 2:33 PM
well, mostly it was wrt to building internal tools — i’m trying to wrap my head around a bunch of concepts, and the “pants way” if one exists it’s always been painful to bootstrap projects locally which depend on binaries built/pulled from private/internal sources
i’m trying to understand subsystems — which i think makes sense for plumbing through “tool specific” config, such as specifically scoped tokens for access management
in most cases we basically want to pull a given github release asset for a specific version, but still allow for programatically updating all sources, when there are new releases for instance
b

bitter-ability-32190

07/02/2022, 2:51 PM
If you're pulling a specific binary release from GitHub you'll likely find success in our upcoming http feature I mentioned. We haven't modeled multi-platform, though. The more specific you can be with your use case (a detailed GitHub issue is great) the better the community can model features for you ☺️
f

freezing-lamp-12123

07/02/2022, 6:35 PM
does the upcoming http feature also provide a mechanism for auth? if so that would probably enough for our use case — but i’d be happy to describe more in detail for our use case
b

bitter-ability-32190

07/02/2022, 6:48 PM
I don't think it would. And I don't even think env vars would work 😞
f

freezing-lamp-12123

07/02/2022, 6:59 PM
then i have a problem 😂
b

bitter-ability-32190

07/02/2022, 7:01 PM
File that detailed issue, and that'll immortalize the request 👍
f

freezing-lamp-12123

07/02/2022, 7:02 PM
neato — do you just want on github?
i’ll likely get to it early next week though 😃
b

bitter-ability-32190

07/02/2022, 7:04 PM
Yes please! Also you should be able to accomplish this in a plugin, albeit we don't want users to HAVE to write plugins. Our plugin API isn't stable (so we can move fast) and has a learning curve.
That being said we're happy to help you on your in-repo plugin if this is a deal breaker
f

freezing-lamp-12123

07/02/2022, 7:19 PM
i don’t think it would be — but a documented solution/example could perhaps help many others getting started as well
alrighty, issue filed — let me know if more details is desired 😃
🙏 2
b

busy-vase-39202

07/05/2022, 5:36 PM
Thank you!
3 Views