196ac55493
This work aims to make Linux builds faster to make https://github.com/ooni/probe/issues/2249 more convenient. Since those builds runs inside Docker, the problem to solve here is to save/restore the Go caches notwithstanding Docker. Because Docker runs as root, we need to modify the build a bit to run as a normal user. Otherwise, we will not be able to save the Go cache using actions/cache@v3. (Other approaches such as using `sudo` are possible but running the build as an unprivileged user actually looks cleaner, so I chose to do that.) While there, add a `.editorconfig`.
17 lines
450 B
Bash
Executable File
17 lines
450 B
Bash
Executable File
#!/bin/sh
|
|
set -euxo pipefail
|
|
# Some of the following exports are redundant but are however
|
|
# useful because they provide explicit logging
|
|
export CGO_ENABLED=1
|
|
export GOARM=$GOARM
|
|
export GOCACHE=$GOCACHE
|
|
export GOMODCACHE=$GOMODCACHE
|
|
export GOOS=$GOOS
|
|
export GOARCH=$GOARCH
|
|
for PACKAGE in $@; do
|
|
PRODUCT=$(basename $PACKAGE)
|
|
go build -o ./CLI/$PRODUCT-$GOOS-$OONIARCH \
|
|
-ldflags='-s -w -extldflags "-static"' \
|
|
$GOLANG_EXTRA_FLAGS $PACKAGE
|
|
done
|