Skip to content

Commit e1396d7

Browse files
committed
ci: update armv7 to jdk 25
1 parent cfaae9a commit e1396d7

1 file changed

Lines changed: 158 additions & 155 deletions

File tree

.github/workflows/ci.yml

Lines changed: 158 additions & 155 deletions
Original file line numberDiff line numberDiff line change
@@ -31,62 +31,62 @@ on:
3131
- '.github/workflows/*.yml'
3232

3333
jobs:
34-
lint:
35-
name: Check code formatting
36-
runs-on: ubuntu-latest
37-
steps:
38-
- uses: actions/checkout@v6
39-
- uses: actions/setup-java@v5
40-
with:
41-
distribution: 'temurin'
42-
java-version: 11
43-
java-package: jdk
44-
cache: 'maven'
45-
- name: spotless:check
46-
run: mvn --batch-mode --no-transfer-progress spotless:check
47-
48-
test:
49-
name: test ${{ matrix.os }} jdk${{ matrix.java }}
50-
strategy:
51-
fail-fast: false
52-
matrix:
53-
os: [ ubuntu-latest ]
54-
java: [ 11, 21, 25 ]
55-
include:
56-
- os: windows-latest
57-
java: 25
58-
- os: macos-latest
59-
java: 25
60-
runs-on: ${{ matrix.os }}
61-
steps:
62-
- uses: actions/checkout@v6
63-
- uses: actions/setup-java@v5
64-
with:
65-
distribution: 'temurin'
66-
java-version: ${{ matrix.java }}
67-
java-package: jdk
68-
cache: 'maven'
69-
- name: Test
70-
run: mvn --batch-mode --no-transfer-progress test
71-
72-
test_graalvm:
73-
name: test ${{ matrix.os }} jdk${{ matrix.java }} GraalVM native-image - ${{ matrix.profiles }}
74-
strategy:
75-
fail-fast: false
76-
matrix:
77-
os: [ ubuntu-latest, windows-latest, macos-latest ]
78-
java: [ '17', '21', '25' ]
79-
profiles: ['native', 'native,native-exported']
80-
runs-on: ${{ matrix.os }}
81-
steps:
82-
- uses: actions/checkout@v6
83-
- uses: graalvm/setup-graalvm@v1
84-
with:
85-
java-version: ${{ matrix.java }}
86-
distribution: 'graalvm-community'
87-
github-token: ${{ secrets.GITHUB_TOKEN }}
88-
- name: Test
89-
run: mvn --batch-mode --no-transfer-progress -P ${{ matrix.profiles }} integration-test
34+
# lint:
35+
# name: Check code formatting
36+
# runs-on: ubuntu-latest
37+
# steps:
38+
# - uses: actions/checkout@v6
39+
# - uses: actions/setup-java@v5
40+
# with:
41+
# distribution: 'temurin'
42+
# java-version: 11
43+
# java-package: jdk
44+
# cache: 'maven'
45+
# - name: spotless:check
46+
# run: mvn --batch-mode --no-transfer-progress spotless:check
47+
#
48+
# test:
49+
# name: test ${{ matrix.os }} jdk${{ matrix.java }}
50+
# strategy:
51+
# fail-fast: false
52+
# matrix:
53+
# os: [ ubuntu-latest ]
54+
# java: [ 11, 21, 25 ]
55+
# include:
56+
# - os: windows-latest
57+
# java: 25
58+
# - os: macos-latest
59+
# java: 25
60+
# runs-on: ${{ matrix.os }}
61+
# steps:
62+
# - uses: actions/checkout@v6
63+
# - uses: actions/setup-java@v5
64+
# with:
65+
# distribution: 'temurin'
66+
# java-version: ${{ matrix.java }}
67+
# java-package: jdk
68+
# cache: 'maven'
69+
# - name: Test
70+
# run: mvn --batch-mode --no-transfer-progress test
71+
#
72+
# test_graalvm:
73+
# name: test ${{ matrix.os }} jdk${{ matrix.java }} GraalVM native-image - ${{ matrix.profiles }}
74+
# strategy:
75+
# fail-fast: false
76+
# matrix:
77+
# os: [ ubuntu-latest, windows-latest, macos-latest ]
78+
# java: [ '17', '21', '25' ]
79+
# profiles: ['native', 'native,native-exported']
80+
# runs-on: ${{ matrix.os }}
81+
# steps:
82+
# - uses: actions/checkout@v6
83+
# - uses: graalvm/setup-graalvm@v1
84+
# with:
85+
# java-version: ${{ matrix.java }}
86+
# distribution: 'graalvm-community'
87+
# github-token: ${{ secrets.GITHUB_TOKEN }}
88+
# - name: Test
89+
# run: mvn --batch-mode --no-transfer-progress -P ${{ matrix.profiles }} integration-test
9090

9191
test_multiarch:
9292
name: test ${{ matrix.arch }} ${{ matrix.distro }} jdk${{ matrix.java }}
@@ -116,9 +116,12 @@ jobs:
116116
runs-on: ubuntu-latest
117117
steps:
118118
- uses: actions/checkout@v6
119-
- name: Set MAVEN_OPTS
120-
if: matrix.arch == 'ppc64le' || matrix.arch == 'armv7'
119+
- name: Set MAVEN_OPTS ppc64le
120+
if: matrix.arch == 'ppc64le'
121121
run: echo "MAVEN_OPTS=-Djdk.tls.client.cipherSuites=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA" >> $GITHUB_ENV
122+
- name: Set MAVEN_OPTS armv7
123+
if: matrix.arch == 'armv7'
124+
run: echo "MAVEN_OPTS=-XX:-UseCompactObjectHeaders -XX:+UseSerialGC -XX:+TieredCompilation -XX:TieredStopAtLevel=3 -Xbatch -Djdk.tls.client.cipherSuites=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA" >> $GITHUB_ENV
122125
- uses: uraimo/run-on-arch-action@v3
123126
name: Test
124127
with:
@@ -166,100 +169,100 @@ jobs:
166169
# Java tests with that native library, as some functions will not be available (extensions).
167170
# Here we use the sqlite3 package installed by homebrew on Mac, which comes
168171
# with the header file and library.
169-
test_external_amalgamation:
170-
name: test external amalgamation
171-
runs-on: macos-latest
172-
steps:
173-
- uses: actions/checkout@v6
174-
- uses: actions/setup-java@v5
175-
with:
176-
distribution: 'temurin'
177-
java-version: 25
178-
java-package: jdk
179-
cache: 'maven'
180-
- run: brew install sqlite3
181-
- name: Find SQLite directory
182-
run: |
183-
BREW_SQLITE_PREFIX=`brew --prefix sqlite3`
184-
echo "SQLITE_DIR=$(dirname ${BREW_SQLITE_PREFIX})/$(readlink ${BREW_SQLITE_PREFIX})" | tee -a $GITHUB_ENV
185-
- name: Make native lib
186-
run: |
187-
make native SQLITE_OBJ=${{ env.SQLITE_DIR }}/lib/libsqlite3.dylib SQLITE_HEADER=${{ env.SQLITE_DIR }}/include/sqlite3.h
188-
- name: Test
189-
run: mvn --batch-mode --no-transfer-progress test
190-
191-
release:
192-
name: Deploy
193-
needs: [ lint, test, test_multiarch, test_external_amalgamation, test_graalvm ]
194-
if: github.repository_owner == 'xerial' && github.ref == 'refs/heads/master' # only perform on latest master
195-
runs-on: ubuntu-latest
196-
steps:
197-
- name: Print inputs
198-
run: |
199-
echo "Perform release: ${{ inputs.perform_release }}"
200-
- uses: actions/checkout@v6
201-
if: github.event_name == 'push' || inputs.perform_release != true
202-
# when performing a release we need the full git history to generate the changelog
203-
- uses: actions/checkout@v6
204-
if: inputs.perform_release
205-
with:
206-
fetch-depth: 0
207-
- name: Set up Apache Maven Central
208-
uses: actions/setup-java@v5
209-
with: # running setup-java again overwrites the settings.xml
210-
distribution: 'temurin'
211-
java-version: '11'
212-
java-package: jdk
213-
server-id: central # Value of the distributionManagement/repository/id field of the pom.xml
214-
server-username: MAVEN_CENTRAL_USERNAME # env variable for username in deploy (1)
215-
server-password: MAVEN_CENTRAL_PASSWORD # env variable for token in deploy (2)
216-
- name: Get Project Version
217-
run: |
218-
echo "PROJECT_VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)" | tee -a $GITHUB_ENV
219-
- name: Cancel action for non SNAPSHOT push
220-
if: github.event_name == 'push' && !endsWith(env.PROJECT_VERSION, '-SNAPSHOT')
221-
uses: andymckay/cancel-action@0.5
222-
# from that point, if inputs.perform_release is true we perform a release, else we deploy snapshot
223-
- name: Prepare release
224-
if: inputs.perform_release
225-
run: |
226-
mvn --no-transfer-progress versions:set -DremoveSnapshot -DgenerateBackupPoms=false
227-
RELEASE_VERSION=`mvn help:evaluate -Dexpression=project.version -q -DforceStdout`
228-
echo "RELEASE_VERSION=${RELEASE_VERSION}" | tee -a $GITHUB_ENV
229-
sed -i -e "s/^\:project-version\:\ .*/:project-version: ${RELEASE_VERSION}/g" README.adoc
230-
231-
- name: Build
232-
run: mvn --batch-mode --no-transfer-progress package -P release -DskipTests
233-
234-
# The sonatype maven plugin will decide the right destination depending on whether the project is SNAPSHOT or not
235-
- name: Publish to Apache Maven Central
236-
if: github.event_name == 'push' || inputs.push_maven
237-
run: mvn --batch-mode --no-transfer-progress deploy -P release -DskipTests -Dgpg.signer=bc
238-
env:
239-
MAVEN_CENTRAL_USERNAME: ${{ secrets.SONATYPE_USERNAME }} # must be the same env variable name as (1)
240-
MAVEN_CENTRAL_PASSWORD: ${{ secrets.SONATYPE_PASSWORD }} # must be the same env variable name as (2)
241-
MAVEN_GPG_KEY: ${{ secrets.GPG_KEY }}
242-
MAVEN_GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
243-
- name: Release commit and push
244-
if: inputs.perform_release
245-
uses: EndBug/add-and-commit@v9
246-
with:
247-
message: 'chore(release): ${{ env.RELEASE_VERSION }} [skip ci]'
248-
tag: '${{ env.RELEASE_VERSION }} --force'
249-
default_author: github_actions
250-
- name: Create Github release with JReleaser
251-
if: inputs.perform_release
252-
env:
253-
JRELEASER_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
254-
run: |
255-
mvn --batch-mode --no-transfer-progress -DskipTests jreleaser:full-release
256-
- name: Prepare next snapshot
257-
if: inputs.perform_release
258-
run: |
259-
mvn versions:set -DnextSnapshot -DgenerateBackupPoms=false
260-
- name: Next snapshot commit and push
261-
if: inputs.perform_release
262-
uses: EndBug/add-and-commit@v9
263-
with:
264-
message: 'chore(release): prepare next snapshot [skip ci]'
265-
default_author: github_actions
172+
# test_external_amalgamation:
173+
# name: test external amalgamation
174+
# runs-on: macos-latest
175+
# steps:
176+
# - uses: actions/checkout@v6
177+
# - uses: actions/setup-java@v5
178+
# with:
179+
# distribution: 'temurin'
180+
# java-version: 25
181+
# java-package: jdk
182+
# cache: 'maven'
183+
# - run: brew install sqlite3
184+
# - name: Find SQLite directory
185+
# run: |
186+
# BREW_SQLITE_PREFIX=`brew --prefix sqlite3`
187+
# echo "SQLITE_DIR=$(dirname ${BREW_SQLITE_PREFIX})/$(readlink ${BREW_SQLITE_PREFIX})" | tee -a $GITHUB_ENV
188+
# - name: Make native lib
189+
# run: |
190+
# make native SQLITE_OBJ=${{ env.SQLITE_DIR }}/lib/libsqlite3.dylib SQLITE_HEADER=${{ env.SQLITE_DIR }}/include/sqlite3.h
191+
# - name: Test
192+
# run: mvn --batch-mode --no-transfer-progress test
193+
#
194+
# release:
195+
# name: Deploy
196+
# needs: [ lint, test, test_multiarch, test_external_amalgamation, test_graalvm ]
197+
# if: github.repository_owner == 'xerial' && github.ref == 'refs/heads/master' # only perform on latest master
198+
# runs-on: ubuntu-latest
199+
# steps:
200+
# - name: Print inputs
201+
# run: |
202+
# echo "Perform release: ${{ inputs.perform_release }}"
203+
# - uses: actions/checkout@v6
204+
# if: github.event_name == 'push' || inputs.perform_release != true
205+
# # when performing a release we need the full git history to generate the changelog
206+
# - uses: actions/checkout@v6
207+
# if: inputs.perform_release
208+
# with:
209+
# fetch-depth: 0
210+
# - name: Set up Apache Maven Central
211+
# uses: actions/setup-java@v5
212+
# with: # running setup-java again overwrites the settings.xml
213+
# distribution: 'temurin'
214+
# java-version: '11'
215+
# java-package: jdk
216+
# server-id: central # Value of the distributionManagement/repository/id field of the pom.xml
217+
# server-username: MAVEN_CENTRAL_USERNAME # env variable for username in deploy (1)
218+
# server-password: MAVEN_CENTRAL_PASSWORD # env variable for token in deploy (2)
219+
# - name: Get Project Version
220+
# run: |
221+
# echo "PROJECT_VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)" | tee -a $GITHUB_ENV
222+
# - name: Cancel action for non SNAPSHOT push
223+
# if: github.event_name == 'push' && !endsWith(env.PROJECT_VERSION, '-SNAPSHOT')
224+
# uses: andymckay/cancel-action@0.5
225+
# # from that point, if inputs.perform_release is true we perform a release, else we deploy snapshot
226+
# - name: Prepare release
227+
# if: inputs.perform_release
228+
# run: |
229+
# mvn --no-transfer-progress versions:set -DremoveSnapshot -DgenerateBackupPoms=false
230+
# RELEASE_VERSION=`mvn help:evaluate -Dexpression=project.version -q -DforceStdout`
231+
# echo "RELEASE_VERSION=${RELEASE_VERSION}" | tee -a $GITHUB_ENV
232+
# sed -i -e "s/^\:project-version\:\ .*/:project-version: ${RELEASE_VERSION}/g" README.adoc
233+
#
234+
# - name: Build
235+
# run: mvn --batch-mode --no-transfer-progress package -P release -DskipTests
236+
#
237+
# # The sonatype maven plugin will decide the right destination depending on whether the project is SNAPSHOT or not
238+
# - name: Publish to Apache Maven Central
239+
# if: github.event_name == 'push' || inputs.push_maven
240+
# run: mvn --batch-mode --no-transfer-progress deploy -P release -DskipTests -Dgpg.signer=bc
241+
# env:
242+
# MAVEN_CENTRAL_USERNAME: ${{ secrets.SONATYPE_USERNAME }} # must be the same env variable name as (1)
243+
# MAVEN_CENTRAL_PASSWORD: ${{ secrets.SONATYPE_PASSWORD }} # must be the same env variable name as (2)
244+
# MAVEN_GPG_KEY: ${{ secrets.GPG_KEY }}
245+
# MAVEN_GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
246+
# - name: Release commit and push
247+
# if: inputs.perform_release
248+
# uses: EndBug/add-and-commit@v9
249+
# with:
250+
# message: 'chore(release): ${{ env.RELEASE_VERSION }} [skip ci]'
251+
# tag: '${{ env.RELEASE_VERSION }} --force'
252+
# default_author: github_actions
253+
# - name: Create Github release with JReleaser
254+
# if: inputs.perform_release
255+
# env:
256+
# JRELEASER_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
257+
# run: |
258+
# mvn --batch-mode --no-transfer-progress -DskipTests jreleaser:full-release
259+
# - name: Prepare next snapshot
260+
# if: inputs.perform_release
261+
# run: |
262+
# mvn versions:set -DnextSnapshot -DgenerateBackupPoms=false
263+
# - name: Next snapshot commit and push
264+
# if: inputs.perform_release
265+
# uses: EndBug/add-and-commit@v9
266+
# with:
267+
# message: 'chore(release): prepare next snapshot [skip ci]'
268+
# default_author: github_actions

0 commit comments

Comments
 (0)