From 66d508be0a8aeb799be8c4f540e8f90c8b28f898 Mon Sep 17 00:00:00 2001 From: "James R. Perkins" Date: Mon, 30 Sep 2024 12:18:17 -0700 Subject: [PATCH] Add a CI job for testing upstream WildFly SNAPSHOTs Signed-off-by: James R. Perkins --- .github/workflows/wildfly-build.yml | 76 +++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 .github/workflows/wildfly-build.yml diff --git a/.github/workflows/wildfly-build.yml b/.github/workflows/wildfly-build.yml new file mode 100644 index 00000000..32444101 --- /dev/null +++ b/.github/workflows/wildfly-build.yml @@ -0,0 +1,76 @@ +# This workflow is for a nightly run against WildFly upstream + +name: WildFly Test Build + +on: + push: + branches: + - 'main' + paths: + - '.github/workflows/wildfly-build.yml' + - 'core/**' + - 'plugin/**' + - 'tests/**' + - '**/pom.xml' + pull_request: + branches: + - '**' + paths: + - '.github/workflows/wildfly-build.yml' + - 'core/**' + - 'plugin/**' + - 'tests/**' + - '**/pom.xml' + schedule: + - cron: '0 0 * * *' # Every day at 00:00 UTC + +# Only run the latest job and cancel previous ones +concurrency: + group: '${{ github.ref || github.run_id }}' + cancel-in-progress: true + +jobs: + wildfly-build: + uses: wildfly/wildfly/.github/workflows/shared-wildfly-build.yml@main + with: + wildfly-branch: "main" + wildfly-repo: "wildfly/wildfly" + + wildfly-maven-plugin-build: + runs-on: ${{ matrix.os }} + needs: wildfly-build + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest, windows-latest] + java: ['17', '21'] + + steps: + - uses: actions/checkout@v4 + - uses: actions/download-artifact@v4 + with: + name: wildfly-maven-repository + path: . + - name: Extract Maven Repo + shell: bash + run: tar -xzf wildfly-maven-repository.tar.gz -C ~ + - name: Set up JDK ${{ matrix.java }} + uses: actions/setup-java@v4 + with: + java-version: ${{ matrix.java }} + distribution: 'temurin' + cache: 'maven' + - name: Build with Maven Java ${{ matrix.java }} + run: mvn clean install '-Dorg.jboss.logmanager.nocolor=true' '-Dserver.version=${{needs.wildfly-build.outputs.wildfly-version}}' + - name: Upload surefire reports + uses: actions/upload-artifact@v4 + if: failure() + with: + name: surefire-reports-${{ matrix.os }}-${{ matrix.java }} + path: '**/surefire-reports/*' + - name: Upload server logs + uses: actions/upload-artifact@v4 + if: failure() + with: + name: server-logs-${{ matrix.os }}-${{ matrix.java }} + path: '**/*.log'