Hello, I'm a Python developer for <Westell>, and I...
# welcome
n
Hello, I'm a Python developer for Westell, and I primarily develop small IoT-ish applications that monitor small, unmanned sites for large infrastructure companies (e.g. Verizon Wireless cell tower sites). We are refactoring our code base from a monolithic approach into more of a monorepo/microservices structure. It looks like Pants will definitely be a great tool to -- at the very least -- help with linting/checking and testing. We do have a very unique build process for our packages because they need to run on our custom embedded platform, and there are very specific requirements. I will be investigating the Plugin API to see if we can create something that will allow us to build packages "our way", but it certainly looks like the tools are there. A couple notes on our specifics -- our packages are bundled using opkg, and some will include web apps created using Node.js.
👍 2
👋 3
b
Terrific! @wide-midnight-78598's plugins tutorial may be helpful as you explore that. https://sureshjoshi.com/development/first-pants-plugin
h
Welcome! Definitely feel free to ask questions in #plugins 🙂 we're happy to help
w
Hey @nice-analyst-28258 - I'd be super interested in your
opkg
stuff, as I use that in some of my embedded stuff. That'd be neat Also, I'm very slowly plugging away at open sourcing my nodejs plugin code (right now the github one just runs formatting) - https://github.com/sureshjoshi/pants-plugins/tree/main/pants-plugins/experimental/nodejs - my internal one just does a basic build and dockerize via shell scripts and some custom hacked/hardcoded plugins. Josh is also doing similar for the web side
Are you starting from yocto/buildroot and trying to integrate pants into that? Or post-distro installation, and then running it?
n
Hey @wide-midnight-78598, there's two separate pieces. first, one of our products is a physical box that runs a customized linux OS. (here's the product page) there are then separate "application packages" that provide monitoring functionality, and these can be installed as needed based on what they want to monitor at the sites where they install the box. the app packages are just python/nodejs files bundled up using opkg. we'd be using pants on 'basic' Ubuntu/Kubuntu developer machines to create the packages, which are just the python/nodejs files .
hopefully that at least somewhat answers what you were asking
w
Yep! I think there is some experimental-ish support for creating debian packages which might be a start, if you want to see how to opkg (https://github.com/pantsbuild/pants/tree/main/src/python/pants/backend/debian)? And then a nodejs compiler plugin.
n
I will definitely check that out, thanks!
👍 1