You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@axis.apache.org by ro...@apache.org on 2026/04/13 18:58:41 UTC
(axis-axis2-java-rampart) 09/10: RAMPART-454 Align GitHub Actions CI with axis2-java-core
This is an automated email from the ASF dual-hosted git repository.
robertlazarski pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/axis-axis2-java-rampart.git
commit 2f9f8a599253a21c0b53548131e5f4ff13bdae08
Author: Robert Lazarski <ro...@gmail.com>
AuthorDate: Mon Apr 13 06:17:19 2026 -1000
RAMPART-454 Align GitHub Actions CI with axis2-java-core
Adopt the same three-job layout that axis2-java-core uses (build / site /
deploy) and bring the runner/action versions in line:
- Build matrix: Java 17, 21, 25 (was 17, 19), matching the JDK set that
the 2.0.0 release is supported on. Each matrix entry runs
-Dmaven.compiler.release=${{ matrix.java }} so the class file target
actually tracks the JDK under test, not just the baseline.
- runs-on: ubuntu-24.04 (was 22.04).
- Actions: checkout@v6, cache@v5, setup-java@v5.
- Java distribution: temurin (was zulu); centralised via
DEFAULT_JAVA_DISTRIBUTION env var.
- Add BASE_JAVA_VERSION=17 env var for the non-matrix jobs.
New Site job: runs mvn package site-deploy on JDK 17 so that site
regressions (e.g. the javadoc / apidocs aggregator classpath) are caught
in CI instead of on release day.
New Deploy job: gated on push-to-master for the apache/axis-axis2-java-
rampart repository only, needs both build and site to be green, and
pushes SNAPSHOTs to apache.snapshots.https using the NEXUS_USER /
NEXUS_PW secrets (same mechanism as axis2-java-core).
Every job ends by deleting -SNAPSHOT entries from the local Maven cache
so they aren't inadvertently reused between runs when the cache key
matches but the dependency tree has moved underneath.
---
.github/workflows/ci.yml | 73 ++++++++++++++++++++++++++++++++++++++++++------
1 file changed, 65 insertions(+), 8 deletions(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 0de17a78..338a5c97 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -22,20 +22,21 @@ on:
env:
MAVEN_OPTS: -Dmaven.wagon.httpconnectionManager.ttlSeconds=25 -Dmaven.wagon.http.retryHandler.count=3
-
+ BASE_JAVA_VERSION: 17
+ DEFAULT_JAVA_DISTRIBUTION: 'temurin'
jobs:
build:
strategy:
fail-fast: false
matrix:
- java: [ 17, 19 ]
+ java: [ 17, 21, 25 ]
name: "Java ${{ matrix.java }}"
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
steps:
- name: Checkout
- uses: actions/checkout@v4
+ uses: actions/checkout@v6
- name: Cache Maven Repository
- uses: actions/cache@v4
+ uses: actions/cache@v5
with:
path: ~/.m2/repository
key: maven-java-${{ matrix.java }}-${{ hashFiles('**/pom.xml') }}
@@ -43,11 +44,67 @@ jobs:
maven-java-${{ matrix.java }}-
maven-
- name: Set up Java
- uses: actions/setup-java@v4
+ uses: actions/setup-java@v5
with:
- distribution: 'zulu'
java-version: ${{ matrix.java }}
+ distribution: ${{ env.DEFAULT_JAVA_DISTRIBUTION }}
+ - name: Build
+ run: mvn -B -e -Papache-release -Dgpg.skip=true -Dmaven.compiler.release=${{ matrix.java }} verify
+ - name: Remove Snapshots
+ run: find ~/.m2/repository -name '*-SNAPSHOT' -a -type d -print0 | xargs -0 rm -rf
+ site:
+ name: Site
+ runs-on: ubuntu-24.04
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v6
+ - name: Cache Maven Repository
+ uses: actions/cache@v5
+ with:
+ path: ~/.m2/repository
+ key: maven-site-${{ hashFiles('**/pom.xml') }}
+ restore-keys: |
+ maven-site-
+ maven-
+ - name: Set up Java
+ uses: actions/setup-java@v5
+ with:
+ java-version: ${{ env.BASE_JAVA_VERSION }}
+ distribution: ${{ env.DEFAULT_JAVA_DISTRIBUTION }}
- name: Build
- run: mvn -B -e -Papache-release -Dgpg.skip=true verify
+ run: mvn -B -e -Dmaven.test.skip=true -Dmaven.compiler.release=${{ env.BASE_JAVA_VERSION }} package site-deploy
+ - name: Remove Snapshots
+ run: find ~/.m2/repository -name '*-SNAPSHOT' -a -type d -print0 | xargs -0 rm -rf
+ deploy:
+ if: github.event_name == 'push' && github.ref == 'refs/heads/master' && github.repository == 'apache/axis-axis2-java-rampart'
+ name: Deploy
+ runs-on: ubuntu-24.04
+ needs:
+ - build
+ - site
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v6
+ - name: Cache Maven Repository
+ uses: actions/cache@v5
+ with:
+ path: ~/.m2/repository
+ key: maven-deploy-${{ hashFiles('**/pom.xml') }}
+ restore-keys: |
+ maven-deploy-
+ maven-
+ - name: Set up Java
+ uses: actions/setup-java@v5
+ with:
+ java-version: ${{ env.BASE_JAVA_VERSION }}
+ distribution: ${{ env.DEFAULT_JAVA_DISTRIBUTION }}
+ server-id: apache.snapshots.https
+ server-username: NEXUS_USER
+ server-password: NEXUS_PW
+ - name: Deploy
+ run: mvn -B -e -Papache-release -Dgpg.skip=true -Dmaven.test.skip=true -Dmaven.compiler.release=${{ env.BASE_JAVA_VERSION }} deploy
+ env:
+ NEXUS_USER: ${{ secrets.NEXUS_USER }}
+ NEXUS_PW: ${{ secrets.NEXUS_PW }}
- name: Remove Snapshots
run: find ~/.m2/repository -name '*-SNAPSHOT' -a -type d -print0 | xargs -0 rm -rf