6da2a71050
CI / build (push) Successful in 1m44s
Run 2 built clean (311 tests, BUILD SUCCESS, Maven 3.6.3 on Java 25.0.4 — JAVA_HOME from setup-java correctly beat the JRE apt pulled in) but the job still went red on the artifact step: GHESNotSupportedError: @actions/artifact v2.0.0+, upload-artifact@v4+ and download-artifact@v4+ are not currently supported on GHES. Gitea Actions presents as GHES, so v4 artifact upload cannot work here. The artifact was unretrievable regardless, so replace it with a failure-only step that cats the failing surefire .txt reports into the job log, where they are readable. Guarded with 'exit 0' so the dump itself can never mask the real failure.
56 lines
2.3 KiB
YAML
56 lines
2.3 KiB
YAML
name: CI
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
pull_request:
|
|
branches: [main]
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
# The wiki submodule is docs only and is not needed to build — leave it unfetched so CI
|
|
# does not depend on the wiki repo being reachable.
|
|
- uses: actions/checkout@v4
|
|
|
|
# The runner image ships an older default-jdk; bridged sets maven.compiler.release=25, so
|
|
# provision the JDK explicitly rather than apt-installing whatever "default" means today.
|
|
- name: Set up JDK 25
|
|
uses: actions/setup-java@v4
|
|
with:
|
|
distribution: temurin
|
|
java-version: '25'
|
|
cache: maven
|
|
|
|
# setup-java provisions the JDK only — it does NOT install Maven, and the runner image has
|
|
# no mvn on PATH (a bare `mvn` exits 127). Install it separately. apt pulls a default JRE as
|
|
# a dependency; JAVA_HOME from setup-java still wins, which the version check below proves.
|
|
- name: Install Maven
|
|
run: |
|
|
apt-get update && apt-get install -y --no-install-recommends maven
|
|
mvn -version
|
|
|
|
- name: Build and test
|
|
working-directory: bridged
|
|
# This IS the mock-socket surface CB-503 asks for: the pom's `default-excludes` profile
|
|
# already sets excludedGroups=contract, so the @Tag("contract") tests — which need a live
|
|
# herdr socket and a RabbitMQ container — are excluded without any flag here. Everything
|
|
# that runs does so against the fake UDS herdr and fake ccs/claude stubs.
|
|
run: mvn -B clean install
|
|
|
|
# Deliberately NOT actions/upload-artifact: this Gitea instance presents as GHES, and
|
|
# @actions/artifact v2+ (i.e. upload-artifact@v4) refuses to run there —
|
|
# "GHESNotSupportedError ... not currently supported on GHES", which red-Xes an otherwise
|
|
# green build. Since the artifact could not be retrieved anyway, dump the failing tests into
|
|
# the log instead, where they are actually readable.
|
|
- name: Failing test output
|
|
if: failure()
|
|
working-directory: bridged
|
|
run: |
|
|
for f in target/surefire-reports/*.txt; do
|
|
[ -f "$f" ] || continue
|
|
grep -qE "Failures: [1-9]|Errors: [1-9]" "$f" && { echo "===== $f ====="; cat "$f"; }
|
|
done
|
|
exit 0
|