check / check (push) Successful in 1m48s
Deriving keys from passphrases with scrypt, slow on purpose, took most of the test time under -race. secret.ScryptWorkFactor, when not zero, replaces age's work factor when a passphrase encrypts; the tests of internal/secret, internal/vault and internal/cli set it to 1 in TestMain, and the program never sets it. TestRemovalAsksWithoutHoldingLock and TestFailedCommandReleasesLock time the in-memory lock all tests share, so they no longer run in parallel. TestConcurrentAddsKeepEveryVersion and TestGetCommandOutputsToStdout time nothing and now do. The script/cibuild comment no longer says tests are skipped without its memlock ulimit. Model: opus-5-5
21 lines
715 B
Bash
Executable File
21 lines
715 B
Bash
Executable File
#!/bin/sh
|
|
# script/cibuild: run the CI build. The Dockerfile runs script/check
|
|
# (via make check), so a successful build implies all checks pass.
|
|
# The Gitea workflow runs this on push. The memlock ulimit lifts the limit
|
|
# on memory the tests lock (memguard mlocks secrets); they also pass under
|
|
# the lower limit of a plain `docker build .`.
|
|
# A cached build checks nothing: a new CHECK_EPOCH on every run makes the
|
|
# Dockerfile's check steps run again on an unchanged tree, while its base
|
|
# images and module downloads stay cached.
|
|
set -eu
|
|
|
|
ROOT="$(cd "$(dirname "$0")/.." && pwd -P)"
|
|
|
|
main() {
|
|
cd "$ROOT"
|
|
docker build --ulimit memlock=-1:-1 \
|
|
--build-arg CHECK_EPOCH="$(date +%s)" .
|
|
}
|
|
|
|
main "$@"
|