RC
successSet up job
successCheckout <1s
successSet up Go 19s
go env
successgo test 4s
go test ./... -count=1
successCompute RC version <1s
set -euo pipefail
if [ ! -f VERSION ]; then
echo "::error::VERSION file is missing at the repository root"
exit 1
fi
base="$(tr -d ' \t\r\n' < VERSION)"
if ! printf '%s' "${base}" | grep -Eq '^[0-9]+\.[0-9]+\.[0-9]+$'; then
echo "::error::VERSION must contain a bare MAJOR.MINOR.PATCH version (got '${base}')"
exit 1
fi
version="${base}-rc.${{ github.run_number }}"
{
echo "base=${base}"
echo "version=${version}"
echo "tag=v${version}"
} >> "$GITHUB_OUTPUT"
echo "RC version: ${version}"
successBuild distribution 5s
bash scripts/build-dist.sh "${{ steps.version.outputs.version }}"successRelease notes <1s
set -euo pipefail
{
echo "Automated release candidate for the upcoming **v${BASE_VERSION}**."
echo
echo "- Commit: \`${GITHUB_SHA}\`"
echo "- Build: run #${GITHUB_RUN_NUMBER} of \`${WORKFLOW}\`"
echo "- Version stamp: \`${RC_VERSION}\` (\`rickub version\`)"
echo
echo "> This is a prerelease built automatically from \`main\`."
echo "> It is not a supported release — use it for testing only."
echo
echo '## Checksums'
echo
echo '```'
cat dist/SHA256SUMS
echo '```'
} > "${RUNNER_TEMP}/rc-notes.md"
echo "path=${RUNNER_TEMP}/rc-notes.md" >> "$GITHUB_OUTPUT"
successUpload build artifacts 6s
successPublish prerelease 3s
Post Set up Go
No test reports for this run.
Tell a job where its test runner writes its report and this tab fills in: how many tests passed, failed and were skipped, a bar of the result at a glance, then every failure first — with the assertion that failed and the output around it — over a per-suite list of cases and their durations. No scrolling a log for the word FAIL.
It is one reports: key on the job — a job key, not a step, so the report is collected whatever the job concluded. JUnit XML and go test -json are both understood, and most runners already emit one of them. reports: is a rickub extension and works only in .rickub/workflows/; in .github/workflows/ it is a parse error on purpose, because those files are also meant to run on github.com.