Running tasks with devbox
Task runner is a piece of software that introduces a standard way of defining, discovering and executing tasks for a given project. Task runners that instruct compilers and linkers on how to build a project are called build systems. Task runners that execute on a remote machine are usually called CI/CD regardless of whether they use containers or not.
Modern language toolchains come with integrated build systems, which remove the neccesity of bringing your own in the form of a task runner. This allows using simpler task runners that don't duplicate features already provided by the standard language tooling.
Devbox can also be used as a task runner, which is very convenient since it also describes a development environment. Instead of manually entering development environment with devbox shell and running a command, the same can be achieved with just devbox run <command>, where <command> can be one of the following:
- Ad hoc shell script, such as
go build - Named script defined in devbox.json