Add binaries for linux-aarch64 (#1484)
Some checks failed
Early Access / Default build (without GraalVM) (push) Has been cancelled
Early Access / Build with GraalVM on macos-latest-arm64 (push) Has been cancelled
Early Access / Build with GraalVM on ubuntu-latest-arm64 (push) Has been cancelled
Early Access / Build with GraalVM on macos-15-intel-x64 (push) Has been cancelled
Early Access / Build with GraalVM on ubuntu-latest-x64 (push) Has been cancelled
Early Access / Build with GraalVM on windows-latest-x64 (push) Has been cancelled
Early Access / Site build (push) Has been cancelled
Stale / stale (push) Has been cancelled

Co-authored-by: Guillaume Nodet <gnodet@gmail.com>
Co-authored-by: Per Abich <409466+flyhard@users.noreply.github.com>
Co-authored-by: Per Abich <per.abich@avanza.se>
This commit is contained in:
Guillaume Nodet
2025-11-25 22:31:02 +01:00
committed by GitHub
parent 42eea9e0d7
commit ea7c648707
4 changed files with 40 additions and 18 deletions

View File

@@ -74,13 +74,21 @@ jobs:
include-hidden-files: 'true'
native-build:
name: 'Build with GraalVM on ${{ matrix.os }}'
name: 'Build with GraalVM on ${{ matrix.os }}-${{ matrix.arch }}'
if: startsWith(github.event.head_commit.message, '[release] Release ') != true
strategy:
fail-fast: false
matrix:
# binaries wanted: linux amd64, mac M1, mac intel, windows x86
os: [ ubuntu-latest, macos-latest, macos-13, windows-latest ]
os: [ ubuntu-latest, macos-latest, macos-15-intel, windows-latest ]
arch: [ x64, arm64 ]
exclude:
- os: macos-latest
arch: x64
- os: macos-15-intel
arch: arm64
- os: windows-latest
arch: arm64
runs-on: ${{ matrix.os }}
steps:
@@ -90,7 +98,7 @@ jobs:
- name: 'Set vars'
shell: bash
run: |
ARCH=$(echo '${{ runner.arch }}' | awk '{print tolower($0)}')
ARCH=$(echo '${{ matrix.arch }}' | awk '{print tolower($0)}')
if [[ $ARCH == 'x64' ]]
then
echo "ARCH=amd64" >> $GITHUB_ENV
@@ -172,14 +180,14 @@ jobs:
if: always()
uses: actions/upload-artifact@v5
with:
name: daemon-test-logs-${{ env.OS }}-${{ env.ARCH }}
name: daemon-test-logs-${{ matrix.os }}-${{ env.ARCH }}
path: integration-tests/target/mvnd-tests/**/daemon*.log
include-hidden-files: 'true'
- name: 'Upload artifact'
uses: actions/upload-artifact@v5
with:
name: mvnd-${{ env.OS }}-${{ env.ARCH }}
name: mvnd-${{ matrix.os }}-${{ env.ARCH }}
path: dist/target/maven-mvnd-*.zip
site-build:

View File

@@ -30,12 +30,20 @@ env:
jobs:
build:
name: 'Build with GraalVM on ${{ matrix.os }}'
name: 'Build with GraalVM on ${{ matrix.os }}-${{ matrix.arch }}'
strategy:
fail-fast: true
matrix:
# binaries wanted: linux amd64, mac intel, mac M1, windows x86
os: [ ubuntu-latest, macos-13, macos-14, windows-latest ]
# binaries wanted
os: [ ubuntu-latest, macos-latest, macos-15-intel, windows-latest ]
arch: [ x64, arm64 ]
exclude:
- os: macos-latest
arch: x64
- os: macos-15-intel
arch: arm64
- os: windows-latest
arch: arm64
runs-on: ${{ matrix.os }}
steps:
@@ -45,7 +53,7 @@ jobs:
- name: 'Set vars'
shell: bash
run: |
ARCH=$(echo '${{ runner.arch }}' | awk '{print tolower($0)}')
ARCH=$(echo '${{ matrix.arch }}' | awk '{print tolower($0)}')
if [[ $ARCH == 'x64' ]]
then
echo "ARCH=amd64" >> $GITHUB_ENV
@@ -62,7 +70,7 @@ jobs:
else
echo "OS=$OS" >> $GITHUB_ENV
fi
echo "VERSION=$(./mvnw help:evaluate -Dexpression=project.version -q -DforceStdout)" >> $GITHUB_ENV
echo "VERSION=$(./mvnw help:evaluate -Dexpression=project.version -q -DforceStdout --raw-streams)" >> $GITHUB_ENV
- name: 'Set up GraalVM'
uses: graalvm/setup-graalvm@v1
@@ -193,7 +201,7 @@ jobs:
- name: Set environment
run: |
echo "VERSION=$(./mvnw help:evaluate -Dexpression=project.version -q -DforceStdout)" >> $GITHUB_ENV
echo "VERSION=$(./mvnw help:evaluate -Dexpression=project.version -q -DforceStdout | grep -v '^\[' | tail -1)" >> $GITHUB_ENV
- name: Create Release
id: create_release

View File

@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# Copyright 2019 the original author or authors.
# Copyright 2019-2025 the original author or authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -32,8 +32,10 @@ darwinAmdZipUrl="https://downloads.apache.org/maven/mvnd/${VERSION}/maven-mvnd-$
darwinAmdSha256="$(curl -L --silent "${darwinAmdZipUrl}.sha256")"
darwinArmZipUrl="https://downloads.apache.org/maven/mvnd/${VERSION}/maven-mvnd-${VERSION}-darwin-aarch64.zip"
darwinArmSha256="$(curl -L --silent "${darwinArmZipUrl}.sha256")"
linuxZipUrl="https://downloads.apache.org/maven/mvnd/${VERSION}/maven-mvnd-${VERSION}-linux-amd64.zip"
linuxSha256="$(curl -L --silent "${linuxZipUrl}.sha256")"
linuxAmdZipUrl="https://downloads.apache.org/maven/mvnd/${VERSION}/maven-mvnd-${VERSION}-linux-amd64.zip"
linuxAmdSha256="$(curl -L --silent "${linuxAmdZipUrl}.sha256")"
linuxArmZipUrl="https://downloads.apache.org/maven/mvnd/${VERSION}/maven-mvnd-${VERSION}-linux-aarch64.zip"
linuxArmSha256="$(curl -L --silent "${linuxArmZipUrl}.sha256")"
echo "Updating Formula/mvnd.rb with"
echo "version: ${VERSION}"
@@ -41,8 +43,10 @@ echo "darwin-amd-url: ${darwinAmdZipUrl}"
echo "darwin-amd-sha256: ${darwinAmdSha256}"
echo "darwin-arm-url: ${darwinArmZipUrl}"
echo "darwin-arm-sha256: ${darwinArmSha256}"
echo "linux-url: ${linuxZipUrl}"
echo "linux-sha256: ${linuxSha256}"
echo "linux-url: ${linuxAmdZipUrl}"
echo "linux-sha256: ${linuxAmdSha256}"
echo "linux-arm-url: ${linuxArmZipUrl}"
echo "linux-arm-sha256: ${linuxArmSha256}"
rm -Rf homebrew-mvnd
git clone https://github.com/mvndaemon/homebrew-mvnd.git
@@ -50,7 +54,8 @@ cd homebrew-mvnd
perl -i -0pe 's|(on_macos do[\s\S\n]+on_intel do\n\s+url )\"([^\"]+)\"(\n\s+sha256 )\"([^\"]+)\"|$1\"'${darwinAmdZipUrl}'\"$3\"'${darwinAmdSha256}'\"|g' Formula/mvnd.rb
perl -i -0pe 's|(on_macos do[\s\S\n]+on_arm do\n\s+url )\"([^\"]+)\"(\n\s+sha256 )\"([^\"]+)\"|$1\"'${darwinArmZipUrl}'\"$3\"'${darwinArmSha256}'\"|g' Formula/mvnd.rb
perl -i -0pe 's|(on_linux do\n\s+url )\"([^\"]+)\"(\n\s+sha256 )\"([^\"]+)\"|$1\"'${linuxZipUrl}'\"$3\"'${linuxSha256}'\"|g' Formula/mvnd.rb
perl -i -0pe 's|(on_linux do[\s\S\n]+on_intel do\n\s+url )\"([^\"]+)\"(\n\s+sha256 )\"([^\"]+)\"|$1\"'${linuxAmdZipUrl}'\"$3\"'${linuxAmdSha256}'\"|g' Formula/mvnd.rb
perl -i -0pe 's|(on_linux do[\s\S\n]+on_arm do\n\s+url )\"([^\"]+)\"(\n\s+sha256 )\"([^\"]+)\"|$1\"'${linuxArmZipUrl}'\"$3\"'${linuxArmSha256}'\"|g' Formula/mvnd.rb
perl -i -0pe 's|(version )"([^\"]+)"|$1\"'${VERSION}'\"|g' Formula/mvnd.rb
if [ -n "$(git status --porcelain)" ]; then

View File

@@ -59,6 +59,7 @@ function publishRelease() {
}
publishRelease ${VERSION} LINUX_64 linux-amd64
publishRelease ${VERSION} LINUX_ARM64 linux-aarch64
publishRelease ${VERSION} MAC_OSX darwin-amd64
publishRelease ${VERSION} MAC_ARM64 darwin-aarch64
publishRelease ${VERSION} WINDOWS_64 windows-amd64