News for hackers. Stuff that matters.
Re:Travis CI's new pricing plan threw a wrench in my open so... by qppo on Friday November 06, 2020 @12:09AM (#25005086)
Once you start caring about cross-platform, incremental, distributed builds with a bunch of people committing to a monorepo those advanced features start becoming attractive. Shell scripts handle the 'run this build/test task' but not 'pull these artifacts from another set of tasks, run this task to produce a bunch more artifacts, cache them for later.'

In these scenarios the lines between build system, package manager, and task runner all become pretty blurred. Haven't found an all in one solution that I would call "portable" yet.

Re:Travis CI's new pricing plan threw a wrench in my open so... by emptysea on Friday November 06, 2020 @12:22AM (#25005146)
Sounds like your describing what I like to call a fancy build system

Something like Bazel[0], Buck[1] Pants[2], etc. One of their main features is robust caching of build artifacts, which is helpful for larger projects. But they require some major investment compared to your typical `scripts/build.sh`.

[0]: https://bazel.build [1]: https://buck.build [2]: https://www.pantsbuild.org

Re:Travis CI's new pricing plan threw a wrench in my open so... by brabel on Friday November 06, 2020 @01:41AM (#25005514)
Gradle can also do everything imaginable, we've managed to get rid of basically all our horrible bash scripts and wrote most build stuff using Gradle API and using a proper programming language (put actual code in Gradle's buildSrc/, only configure it in build.gradle, and you've got a extremely powerful build).
Re:Travis CI's new pricing plan threw a wrench in my open so... by hinkley on Friday November 06, 2020 @11:17AM (#25008719)
Shebangs are also your friend, if your primary language can be used that way.

The cons of that solution are that there’s a tendency to make them ornate, and the trap of circular dependencies. Reusing an internal library in your build scripts, you have it building itself which can get out of hand quickly.

Re:Travis CI's new pricing plan threw a wrench in my open so... by moonbug on Friday November 06, 2020 @04:42AM (#25006379)
sweet summer child.
Re:Travis CI's new pricing plan threw a wrench in my open so... by qppo on Friday November 06, 2020 @01:04AM (#25005328)
I have a lot of ideas (or rather, one idea) about how to fix my CI problems and "fancy build system" is pretty apt. Bazel is the closest thing I've seen to what I want.