Some dockerRunArg values would fail, due to improper handling of quotes. This is sidestepped by parsing the arguments into an array using shlex, then passing that array's items as separate N arguments to run-on-arch.sh.
It also seems that the container names must be lower-case, so we ensure the slug() function returns a lower-case string. Some GitHub repositories will have upper-case letters.
Edit: I've also added an install input parameter, which runs as part of docker build. This allows dependency installation to be cached in a docker image layer that persists between builds.
Some
dockerRunArg
values would fail, due to improper handling of quotes. This is sidestepped by parsing the arguments into an array usingshlex
, then passing that array's items as separate N arguments torun-on-arch.sh
.It also seems that the container names must be lower-case, so we ensure the
slug()
function returns a lower-case string. Some GitHub repositories will have upper-case letters.Edit: I've also added an
install
input parameter, which runs as part ofdocker build
. This allows dependency installation to be cached in a docker image layer that persists between builds.