Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/actions/setup-env/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,6 @@ runs:
- name: Set up JDK
uses: graalvm/setup-graalvm@v1
with:
java-version: '25.0.1'
distribution: 'graalvm-community'
java-version: '21'
distribution: 'mandrel'
github-token: ${{ inputs.github_token }}
17 changes: 5 additions & 12 deletions .github/jreleaser/jreleaser-preview.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ project:

platform:
replacements:
osx-x86_64: macos-x86_64
osx-aarch_64: macos-aarch64

assemble:
Expand All @@ -36,8 +35,6 @@ assemble:

distributions:
streamx:
# TEMPORARY(native): disabled while native image does not build; remove this line to restore.
active: NEVER
type: BINARY
executable:
name: streamx
Expand All @@ -50,8 +47,6 @@ distributions:
platform: linux-aarch_64
- path: artifacts/streamx-{{projectVersion}}-macos-aarch64.zip
platform: osx-aarch_64
- path: artifacts/streamx-{{projectVersion}}-macos-x86_64.zip
platform: osx-x86_64

streamx-jar:
type: JAVA_BINARY
Expand Down Expand Up @@ -98,10 +93,8 @@ packagers:
formulaName: streamx
multiPlatform: true

# TEMPORARY(native): restore when native image builds again.
# files:
# artifacts:
# - path: artifacts/streamx-linux-x86_64
# - path: artifacts/streamx-linux-aarch64
# - path: artifacts/streamx-macos-aarch64
# - path: artifacts/streamx-macos-x86_64
files:
artifacts:
- path: artifacts/streamx-linux-x86_64
- path: artifacts/streamx-linux-aarch64
- path: artifacts/streamx-macos-aarch64
17 changes: 5 additions & 12 deletions .github/jreleaser/jreleaser.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ project:

platform:
replacements:
osx-x86_64: macos-x86_64
osx-aarch_64: macos-aarch64

assemble:
Expand All @@ -36,8 +35,6 @@ assemble:

distributions:
streamx:
# TEMPORARY(native): disabled while native image does not build; remove this line to restore.
active: NEVER
type: BINARY
executable:
name: streamx
Expand All @@ -50,8 +47,6 @@ distributions:
platform: linux-aarch_64
- path: artifacts/streamx-{{projectVersion}}-macos-aarch64.zip
platform: osx-aarch_64
- path: artifacts/streamx-{{projectVersion}}-macos-x86_64.zip
platform: osx-x86_64

streamx-jar:
type: JAVA_BINARY
Expand Down Expand Up @@ -94,10 +89,8 @@ packagers:
formulaName: streamx
multiPlatform: true

# TEMPORARY(native): restore when native image builds again.
# files:
# artifacts:
# - path: artifacts/streamx-linux-x86_64
# - path: artifacts/streamx-linux-aarch64
# - path: artifacts/streamx-macos-aarch64
# - path: artifacts/streamx-macos-x86_64
files:
artifacts:
- path: artifacts/streamx-linux-x86_64
- path: artifacts/streamx-linux-aarch64
- path: artifacts/streamx-macos-aarch64
41 changes: 0 additions & 41 deletions .github/scripts/merge-native-image-metadata.sh

This file was deleted.

22 changes: 0 additions & 22 deletions .github/scripts/prepare-native-image-metadata.sh

This file was deleted.

54 changes: 20 additions & 34 deletions .github/workflows/build-cross-platform.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,17 +31,11 @@ jobs:
- name: Define platform matrix
id: matrix
run: |
# TEMPORARY(native): native-image build fails (javax.ws.rs NoClassDefFoundError),
# JVM-only release for now. Restore the full platform matrix when fixed.
PLATFORMS='[
{ "os": "ubuntu-24.04", "name": "linux-amd64", "artifact": "streamx-linux-x86_64" }
{ "os": "ubuntu-24.04", "name": "linux-amd64", "artifact": "streamx-linux-x86_64" },
{ "os": "ubuntu-24.04-arm", "name": "linux-arm64", "artifact": "streamx-linux-aarch64" },
{ "os": "macos-26-xlarge", "name": "macos-arm64", "artifact": "streamx-macos-aarch64" }
]'
# PLATFORMS='[
# { "os": "ubuntu-24.04", "name": "linux-amd64", "artifact": "streamx-linux-x86_64" },
# { "os": "ubuntu-24.04-arm", "name": "linux-arm64", "artifact": "streamx-linux-aarch64" },
# { "os": "macos-26-xlarge", "name": "macos-arm64", "artifact": "streamx-macos-aarch64" },
# { "os": "macos-26-large", "name": "macos-amd64", "artifact": "streamx-macos-x86_64" }
# ]'
echo "platforms=$(echo "$PLATFORMS" | jq -c .)" >> "$GITHUB_OUTPUT"

build:
Expand All @@ -63,15 +57,9 @@ jobs:
gar_docker_registry: ${{ vars.GAR_DOCKER_REGISTRY }}
github_token: ${{ secrets.GITHUB_TOKEN }}

- name: Run tests with native-image-agent (Linux only)
if: startsWith(matrix.name, 'linux')
- name: Build native-image executable
run: |
.github/scripts/with-capture-docker-logs.sh ./mvnw verify -Pci -T 2 -Dsurefire.forkCount=8 -Dit.forkCount=4

# TEMPORARY(native): restore when native image builds again.
# - name: Build native-image executable
# run: |
# .github/scripts/with-capture-docker-logs.sh ./mvnw verify -Pci,native -T 2 -Dsurefire.forkCount=8 -Dit.forkCount=4
.github/scripts/with-capture-docker-logs.sh ./mvnw verify -Pci,native -T 2 -Dsurefire.forkCount=8 -Dit.forkCount=4

- name: Upload test reports
if: always()
Expand All @@ -87,26 +75,24 @@ jobs:
path: target/docker-logs/
if-no-files-found: ignore

# TEMPORARY(native): restore when native image builds again.
# - name: Prepare artifact
# run: |
# mkdir -p staging
# cp target/*-runner staging/${{ matrix.artifact }}
# chmod +x staging/${{ matrix.artifact }}
#
# - name: Smoke test
# run: ./staging/${{ matrix.artifact }} --help
#
# - name: Upload native executable
# uses: actions/upload-artifact@v4
# with:
# name: ${{ matrix.artifact }}
# path: staging/${{ matrix.artifact }}
- name: Prepare artifact
run: |
mkdir -p staging
cp target/*-runner staging/${{ matrix.artifact }}
chmod +x staging/${{ matrix.artifact }}

- name: Smoke test
run: ./staging/${{ matrix.artifact }} --help

- name: Upload native executable
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.artifact }}
path: staging/${{ matrix.artifact }}

- name: Upload runner JAR
# We need to upload the jar only once, as it cross-platform
# TEMPORARY(native): was linux-arm64; that runner is out of the reduced matrix.
if: matrix.name == 'linux-amd64'
if: matrix.name == 'linux-arm64'
uses: actions/upload-artifact@v4
with:
name: streamx-runner-jar
Expand Down
Loading
Loading