build
successactions/checkout@v4 <1s
successFlutter ${{ env.FLUTTER_VERSION }} 1m20s
set -euo pipefail
url="https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_${FLUTTER_VERSION}-stable.tar.xz"
curl -fsSL -o /tmp/flutter.tar.xz "$url"
echo "${FLUTTER_SHA256} /tmp/flutter.tar.xz" | sha256sum -c -
# Into HOME rather than /opt: flutter writes its own cache and
# version stamp inside its directory on the first command, so a
# root-owned copy fails as whatever user the job runs as.
mkdir -p "$HOME/flutter"
tar -xJf /tmp/flutter.tar.xz -C "$HOME/flutter" --strip-components=1
echo "$HOME/flutter/bin" >> "$GITHUB_PATH"
# The tarball is an unpacked git checkout, and flutter refuses to
# report its own version out of a repository it thinks belongs to
# somebody else. `tools/toolchain.sh` does this too.
git config --global --add safe.directory "$HOME/flutter"
successsudo apt-get update -qq && sudo apt-get install -y -qq libssl3 1s
sudo apt-get update -qq && sudo apt-get install -y -qq libssl3
successactions/download-artifact@v4 <1s
successThe layout suite 13s
cd flutter && flutter pub get && flutter test test/nim_layout_test.dart
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.