mirror of
https://github.com/apache/maven-mvnd.git
synced 2025-08-29 09:34:00 +00:00
Port all the mvnd-1.x fixes for release to master (#1027)
Changes: * Drop CHANGELOG.md and tool, it is confused by two branches (1.x and master). * Update GH workflows, they now provide all 4 needed binaries * Release scripts: do NOT push, user will (but remind user) * native: Makefile and built binaries updated (cross checked with @gnodet )
This commit is contained in:
31
.github/workflows/early-access.yaml
vendored
31
.github/workflows/early-access.yaml
vendored
@@ -36,7 +36,7 @@ jobs:
|
|||||||
default-build:
|
default-build:
|
||||||
name: 'Default build (without Graal)'
|
name: 'Default build (without Graal)'
|
||||||
if: startsWith(github.event.head_commit.message, '[release] Release ') != true
|
if: startsWith(github.event.head_commit.message, '[release] Release ') != true
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: 'Checkout'
|
- name: 'Checkout'
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
@@ -47,7 +47,7 @@ jobs:
|
|||||||
distribution: 'temurin'
|
distribution: 'temurin'
|
||||||
|
|
||||||
- name: 'Run default (non-native) build'
|
- name: 'Run default (non-native) build'
|
||||||
run: ./mvnw verify -Dmrm=false -V -B -ntp -e
|
run: ./mvnw verify -Dmrm=false -V -B -ntp -e -s .mvn/release-settings.xml
|
||||||
|
|
||||||
- name: 'Upload daemon test logs'
|
- name: 'Upload daemon test logs'
|
||||||
if: always()
|
if: always()
|
||||||
@@ -62,7 +62,8 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
os: [ ubuntu-latest, macos-latest, windows-latest ]
|
# binaries wanted: linux amd64, mac intel, mac M1, windows x86
|
||||||
|
os: [ ubuntu-latest, macos-13, macos-14, windows-latest ]
|
||||||
runs-on: ${{ matrix.os }}
|
runs-on: ${{ matrix.os }}
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
@@ -72,9 +73,23 @@ jobs:
|
|||||||
- name: 'Set vars'
|
- name: 'Set vars'
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
|
ARCH=$(echo '${{ runner.arch }}' | awk '{print tolower($0)}')
|
||||||
|
if [[ $ARCH == 'x64' ]]
|
||||||
|
then
|
||||||
|
echo "ARCH=amd64" >> $GITHUB_ENV
|
||||||
|
elif [[ $ARCH == 'arm64' ]]
|
||||||
|
then
|
||||||
|
echo "ARCH=aarch64" >> $GITHUB_ENV
|
||||||
|
else
|
||||||
|
echo "ARCH=$ARCH" >> $GITHUB_ENV
|
||||||
|
fi
|
||||||
OS=$(echo '${{ runner.os }}' | awk '{print tolower($0)}')
|
OS=$(echo '${{ runner.os }}' | awk '{print tolower($0)}')
|
||||||
[[ $OS == 'ubuntu' ]] && echo "OS=linux" >> $GITHUB_ENV || echo "OS=$OS" >> $GITHUB_ENV
|
if [[ $OS == 'macos' ]]
|
||||||
[[ $OS == 'macos' ]] && echo "OS=darwin" >> $GITHUB_ENV || echo "OS=$OS" >> $GITHUB_ENV
|
then
|
||||||
|
echo "OS=darwin" >> $GITHUB_ENV
|
||||||
|
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)" >> $GITHUB_ENV
|
||||||
|
|
||||||
- name: 'Set up Graal'
|
- name: 'Set up Graal'
|
||||||
@@ -110,7 +125,7 @@ jobs:
|
|||||||
objcopy --redefine-syms=client/src/main/resources/glibc/glibc.redef client/target/graalvm-libs-for-glibc-2.12/Scrt1.o 2>/dev/null
|
objcopy --redefine-syms=client/src/main/resources/glibc/glibc.redef client/target/graalvm-libs-for-glibc-2.12/Scrt1.o 2>/dev/null
|
||||||
|
|
||||||
- name: 'Build native distribution'
|
- name: 'Build native distribution'
|
||||||
run: ./mvnw verify -Pnative -Dmrm=false -V -B -ntp -e
|
run: ./mvnw verify -Pnative -Dmrm=false -V -B -ntp -e -s .mvn/release-settings.xml
|
||||||
|
|
||||||
- name: 'Verify native binary for only requiring glibc 2.12'
|
- name: 'Verify native binary for only requiring glibc 2.12'
|
||||||
if: ${{ env.OS == 'linux' }}
|
if: ${{ env.OS == 'linux' }}
|
||||||
@@ -125,11 +140,11 @@ jobs:
|
|||||||
if: always()
|
if: always()
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: daemon-test-logs-${{ env.OS }}
|
name: daemon-test-logs-${{ env.OS }}-${{ env.ARCH }}
|
||||||
path: integration-tests/target/mvnd-tests/**/daemon*.log
|
path: integration-tests/target/mvnd-tests/**/daemon*.log
|
||||||
|
|
||||||
- name: 'Upload artifact'
|
- name: 'Upload artifact'
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: mvnd-${{ env.OS }}
|
name: mvnd-${{ env.OS }}-${{ env.ARCH }}
|
||||||
path: dist/target/maven-mvnd-*.zip
|
path: dist/target/maven-mvnd-*.zip
|
||||||
|
89
.github/workflows/release.yaml
vendored
89
.github/workflows/release.yaml
vendored
@@ -34,7 +34,8 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
fail-fast: true
|
fail-fast: true
|
||||||
matrix:
|
matrix:
|
||||||
os: [ ubuntu-latest, macos-latest, windows-latest ]
|
# binaries wanted: linux amd64, mac intel, mac M1, windows x86
|
||||||
|
os: [ ubuntu-latest, macos-13, macos-14, windows-latest ]
|
||||||
runs-on: ${{ matrix.os }}
|
runs-on: ${{ matrix.os }}
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
@@ -44,9 +45,23 @@ jobs:
|
|||||||
- name: 'Set vars'
|
- name: 'Set vars'
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
|
ARCH=$(echo '${{ runner.arch }}' | awk '{print tolower($0)}')
|
||||||
|
if [[ $ARCH == 'x64' ]]
|
||||||
|
then
|
||||||
|
echo "ARCH=amd64" >> $GITHUB_ENV
|
||||||
|
elif [[ $ARCH == 'arm64' ]]
|
||||||
|
then
|
||||||
|
echo "ARCH=aarch64" >> $GITHUB_ENV
|
||||||
|
else
|
||||||
|
echo "ARCH=$ARCH" >> $GITHUB_ENV
|
||||||
|
fi
|
||||||
OS=$(echo '${{ runner.os }}' | awk '{print tolower($0)}')
|
OS=$(echo '${{ runner.os }}' | awk '{print tolower($0)}')
|
||||||
[[ $OS == 'ubuntu' ]] && echo "OS=linux" >> $GITHUB_ENV || echo "OS=$OS" >> $GITHUB_ENV
|
if [[ $OS == 'macos' ]]
|
||||||
[[ $OS == 'macos' ]] && echo "OS=darwin" >> $GITHUB_ENV || echo "OS=$OS" >> $GITHUB_ENV
|
then
|
||||||
|
echo "OS=darwin" >> $GITHUB_ENV
|
||||||
|
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)" >> $GITHUB_ENV
|
||||||
|
|
||||||
- name: 'Set up Graal'
|
- name: 'Set up Graal'
|
||||||
@@ -96,14 +111,14 @@ jobs:
|
|||||||
- name: 'Upload artifact'
|
- name: 'Upload artifact'
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: artifacts
|
name: mvnd-${{ env.OS }}-${{ env.ARCH }}
|
||||||
path: |
|
path: |
|
||||||
dist/target/maven-mvnd-*.zip
|
dist/target/maven-mvnd-*.zip
|
||||||
dist/target/maven-mvnd-*.tar.gz
|
dist/target/maven-mvnd-*.tar.gz
|
||||||
|
|
||||||
source:
|
source:
|
||||||
name: 'Build source distributions'
|
name: 'Build source distributions'
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: 'Check out repository'
|
- name: 'Check out repository'
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
@@ -111,9 +126,23 @@ jobs:
|
|||||||
- name: 'Set vars'
|
- name: 'Set vars'
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
|
ARCH=$(echo '${{ runner.arch }}' | awk '{print tolower($0)}')
|
||||||
|
if [[ $ARCH == 'x64' ]]
|
||||||
|
then
|
||||||
|
echo "ARCH=amd64" >> $GITHUB_ENV
|
||||||
|
elif [[ $ARCH == 'arm64' ]]
|
||||||
|
then
|
||||||
|
echo "ARCH=aarch64" >> $GITHUB_ENV
|
||||||
|
else
|
||||||
|
echo "ARCH=$ARCH" >> $GITHUB_ENV
|
||||||
|
fi
|
||||||
OS=$(echo '${{ runner.os }}' | awk '{print tolower($0)}')
|
OS=$(echo '${{ runner.os }}' | awk '{print tolower($0)}')
|
||||||
[[ $OS == 'ubuntu' ]] && echo "OS=linux" >> $GITHUB_ENV || echo "OS=$OS" >> $GITHUB_ENV
|
if [[ $OS == 'macos' ]]
|
||||||
[[ $OS == 'macos' ]] && echo "OS=darwin" >> $GITHUB_ENV || echo "OS=$OS" >> $GITHUB_ENV
|
then
|
||||||
|
echo "OS=darwin" >> $GITHUB_ENV
|
||||||
|
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)" >> $GITHUB_ENV
|
||||||
|
|
||||||
- name: 'Set up Graal'
|
- name: 'Set up Graal'
|
||||||
@@ -125,18 +154,18 @@ jobs:
|
|||||||
github-token: ${{ secrets.GITHUB_TOKEN }}
|
github-token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
- name: 'Build source distribution'
|
- name: 'Build source distribution'
|
||||||
run: ./mvnw clean verify -Psource-distribution -N -B -ntp -e
|
run: ./mvnw clean verify -Psource-distribution -N -B -ntp -e -s .mvn/release-settings.xml
|
||||||
|
|
||||||
- name: 'Upload artifact'
|
- name: 'Upload artifact'
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: artifacts
|
name: mvnd-sources
|
||||||
path: |
|
path: |
|
||||||
target/maven-mvnd-*.zip
|
target/maven-mvnd-*.zip
|
||||||
target/maven-mvnd-*.tar.gz
|
target/maven-mvnd-*.tar.gz
|
||||||
|
|
||||||
release:
|
release:
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-latest
|
||||||
needs: [build, source]
|
needs: [build, source]
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
@@ -158,8 +187,8 @@ jobs:
|
|||||||
uses: actions/cache@v4
|
uses: actions/cache@v4
|
||||||
with:
|
with:
|
||||||
path: ~/.m2
|
path: ~/.m2
|
||||||
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
|
key: ${{ runner.os }}-${{ runner.arch }}-m2-${{ hashFiles('**/pom.xml') }}
|
||||||
restore-keys: ${{ runner.os }}-m2
|
restore-keys: ${{ runner.os }}-${{ runner.arch }}-m2
|
||||||
|
|
||||||
- name: ls -R
|
- name: ls -R
|
||||||
run: ls -R
|
run: ls -R
|
||||||
@@ -185,7 +214,7 @@ jobs:
|
|||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
with:
|
with:
|
||||||
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
||||||
asset_path: artifacts/maven-mvnd-${{ env.VERSION }}-src.zip
|
asset_path: mvnd-sources/maven-mvnd-${{ env.VERSION }}-src.zip
|
||||||
asset_name: maven-mvnd-${{ env.VERSION }}-src.zip
|
asset_name: maven-mvnd-${{ env.VERSION }}-src.zip
|
||||||
asset_content_type: application/zip
|
asset_content_type: application/zip
|
||||||
|
|
||||||
@@ -195,7 +224,7 @@ jobs:
|
|||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
with:
|
with:
|
||||||
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
||||||
asset_path: artifacts/maven-mvnd-${{ env.VERSION }}-src.tar.gz
|
asset_path: mvnd-sources/maven-mvnd-${{ env.VERSION }}-src.tar.gz
|
||||||
asset_name: maven-mvnd-${{ env.VERSION }}-src.tar.gz
|
asset_name: maven-mvnd-${{ env.VERSION }}-src.tar.gz
|
||||||
asset_content_type: application/tar.gz
|
asset_content_type: application/tar.gz
|
||||||
|
|
||||||
@@ -205,7 +234,7 @@ jobs:
|
|||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
with:
|
with:
|
||||||
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
||||||
asset_path: artifacts/dist/target/maven-mvnd-${{ env.VERSION }}-linux-amd64.zip
|
asset_path: mvnd-linux-amd64/maven-mvnd-${{ env.VERSION }}-linux-amd64.zip
|
||||||
asset_name: maven-mvnd-${{ env.VERSION }}-linux-amd64.zip
|
asset_name: maven-mvnd-${{ env.VERSION }}-linux-amd64.zip
|
||||||
asset_content_type: application/zip
|
asset_content_type: application/zip
|
||||||
|
|
||||||
@@ -215,7 +244,7 @@ jobs:
|
|||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
with:
|
with:
|
||||||
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
||||||
asset_path: artifacts/dist/target/maven-mvnd-${{ env.VERSION }}-linux-amd64.tar.gz
|
asset_path: mvnd-linux-amd64/maven-mvnd-${{ env.VERSION }}-linux-amd64.tar.gz
|
||||||
asset_name: maven-mvnd-${{ env.VERSION }}-linux-amd64.tar.gz
|
asset_name: maven-mvnd-${{ env.VERSION }}-linux-amd64.tar.gz
|
||||||
asset_content_type: application/x-gzip
|
asset_content_type: application/x-gzip
|
||||||
|
|
||||||
@@ -225,7 +254,7 @@ jobs:
|
|||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
with:
|
with:
|
||||||
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
||||||
asset_path: artifacts/dist/target/maven-mvnd-${{ env.VERSION }}-darwin-amd64.zip
|
asset_path: mvnd-darwin-amd64/maven-mvnd-${{ env.VERSION }}-darwin-amd64.zip
|
||||||
asset_name: maven-mvnd-${{ env.VERSION }}-darwin-amd64.zip
|
asset_name: maven-mvnd-${{ env.VERSION }}-darwin-amd64.zip
|
||||||
asset_content_type: application/zip
|
asset_content_type: application/zip
|
||||||
|
|
||||||
@@ -235,17 +264,37 @@ jobs:
|
|||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
with:
|
with:
|
||||||
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
||||||
asset_path: artifacts/dist/target/maven-mvnd-${{ env.VERSION }}-darwin-amd64.tar.gz
|
asset_path: mvnd-darwin-amd64/maven-mvnd-${{ env.VERSION }}-darwin-amd64.tar.gz
|
||||||
asset_name: maven-mvnd-${{ env.VERSION }}-darwin-amd64.tar.gz
|
asset_name: maven-mvnd-${{ env.VERSION }}-darwin-amd64.tar.gz
|
||||||
asset_content_type: application/x-gzip
|
asset_content_type: application/x-gzip
|
||||||
|
|
||||||
|
- name: Deploy maven-mvnd-darwin-aarch64.zip
|
||||||
|
uses: actions/upload-release-asset@v1
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
with:
|
||||||
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
||||||
|
asset_path: mvnd-darwin-aarch64/maven-mvnd-${{ env.VERSION }}-darwin-aarch64.zip
|
||||||
|
asset_name: maven-mvnd-${{ env.VERSION }}-darwin-aarch64.zip
|
||||||
|
asset_content_type: application/zip
|
||||||
|
|
||||||
|
- name: Deploy maven-mvnd-darwin-aarch64.tar.gz
|
||||||
|
uses: actions/upload-release-asset@v1
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
with:
|
||||||
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
||||||
|
asset_path: mvnd-darwin-aarch64/maven-mvnd-${{ env.VERSION }}-darwin-aarch64.tar.gz
|
||||||
|
asset_name: maven-mvnd-${{ env.VERSION }}-darwin-aarch64.tar.gz
|
||||||
|
asset_content_type: application/x-gzip
|
||||||
|
|
||||||
- name: Deploy maven-mvnd-windows-amd64.zip
|
- name: Deploy maven-mvnd-windows-amd64.zip
|
||||||
uses: actions/upload-release-asset@v1
|
uses: actions/upload-release-asset@v1
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
with:
|
with:
|
||||||
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
||||||
asset_path: artifacts/dist/target/maven-mvnd-${{ env.VERSION }}-windows-amd64.zip
|
asset_path: mvnd-windows-amd64/maven-mvnd-${{ env.VERSION }}-windows-amd64.zip
|
||||||
asset_name: maven-mvnd-${{ env.VERSION }}-windows-amd64.zip
|
asset_name: maven-mvnd-${{ env.VERSION }}-windows-amd64.zip
|
||||||
asset_content_type: application/zip
|
asset_content_type: application/zip
|
||||||
|
|
||||||
@@ -255,7 +304,7 @@ jobs:
|
|||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
with:
|
with:
|
||||||
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
||||||
asset_path: artifacts/dist/target/maven-mvnd-${{ env.VERSION }}-windows-amd64.tar.gz
|
asset_path: mvnd-windows-amd64/maven-mvnd-${{ env.VERSION }}-windows-amd64.tar.gz
|
||||||
asset_name: maven-mvnd-${{ env.VERSION }}-windows-amd64.tar.gz
|
asset_name: maven-mvnd-${{ env.VERSION }}-windows-amd64.tar.gz
|
||||||
asset_content_type: application/x-gzip
|
asset_content_type: application/x-gzip
|
||||||
|
|
||||||
|
1103
CHANGELOG.md
1103
CHANGELOG.md
File diff suppressed because it is too large
Load Diff
@@ -1,12 +1,12 @@
|
|||||||
= How to release `mvnd`
|
= How to release `mvnd`
|
||||||
|
|
||||||
* Run the https://raw.githubusercontent.com/apache/maven-mvnd/master/build/release-build.sh[release script] which will update the versions, the changelog, the native binaries and will tag the new git commit. This new tag will trigger the https://raw.githubusercontent.com/apache/maven-mvnd/master/.github/workflows/release.yaml[release workflow] on this newly created tag.
|
* Run the https://raw.githubusercontent.com/apache/maven-mvnd/master/build/release-build.sh[release script] which will update the versions, the native binaries and will tag the new git commit. This new tag will trigger the https://raw.githubusercontent.com/apache/maven-mvnd/master/.github/workflows/release.yaml[release workflow] on this newly created tag.
|
||||||
[source,shell]
|
[source,shell]
|
||||||
----
|
----
|
||||||
./build/release-build.sh <released-version> <next-SNAPSHOT>
|
./build/release-build.sh <released-version> <next-SNAPSHOT>
|
||||||
----
|
----
|
||||||
|
|
||||||
* While the `darwin-aarch64` is not supported by github, you need to perform a clean build on the tagged branch on a Apple M1 computer and upload the two binary distributions as additional assets to the draft release that has been generated at github.
|
Warning for Fedora users: The RedHat `podman` is usually preinstalled and happily coexisting with `Docker`. Make sure Docker is being used, usually by setting `OCI_EXE=docker` env variable.
|
||||||
|
|
||||||
* Once the workflow completes, run the https://raw.githubusercontent.com/apache/maven-mvnd/master/build/release-candidate.sh[release-candidate script] which will download the built assemblies, compute the checksums and signatures, commit them to the https://dist.apache.org/repos/dist/dev/maven/mvnd/[dev distribution repository]
|
* Once the workflow completes, run the https://raw.githubusercontent.com/apache/maven-mvnd/master/build/release-candidate.sh[release-candidate script] which will download the built assemblies, compute the checksums and signatures, commit them to the https://dist.apache.org/repos/dist/dev/maven/mvnd/[dev distribution repository]
|
||||||
https://github.com/apache/maven-mvnd/releases[releases] and also upload them as assets to the staging area for the github draft release.
|
https://github.com/apache/maven-mvnd/releases[releases] and also upload them as assets to the staging area for the github draft release.
|
||||||
|
@@ -49,15 +49,6 @@
|
|||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
<build>
|
<build>
|
||||||
<pluginManagement>
|
|
||||||
<plugins>
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-plugin-plugin</artifactId>
|
|
||||||
</plugin>
|
|
||||||
</plugins>
|
|
||||||
</pluginManagement>
|
|
||||||
|
|
||||||
<plugins>
|
<plugins>
|
||||||
<plugin>
|
<plugin>
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
@@ -113,11 +113,6 @@ startup_check
|
|||||||
# update version
|
# update version
|
||||||
mvn versions:set -DnewVersion=$VERSION
|
mvn versions:set -DnewVersion=$VERSION
|
||||||
|
|
||||||
# udpate changelog
|
|
||||||
docker run -it --rm -v "$(pwd)":/usr/local/src/your-app githubchangeloggenerator/github-changelog-generator \
|
|
||||||
--user apache --project maven-mvnd --token $GITHUB_TOKEN --future-release $VERSION \
|
|
||||||
--exclude-tags early-access,0.9.0,1.0.0-m2,build-1.0.0-m2,1.0.0-m3
|
|
||||||
|
|
||||||
# rebuild native libraries
|
# rebuild native libraries
|
||||||
pushd native
|
pushd native
|
||||||
make native-all
|
make native-all
|
||||||
@@ -129,7 +124,7 @@ git commit -m "[release] Release $VERSION"
|
|||||||
|
|
||||||
# Create and push tag
|
# Create and push tag
|
||||||
git tag $VERSION
|
git tag $VERSION
|
||||||
git push origin $VERSION
|
# git push origin $VERSION
|
||||||
# Pushing a tag will trigger the CI to build the release and publish
|
# Pushing a tag will trigger the CI to build the release and publish
|
||||||
# the artifacts on https://github.com/apache/maven-mvnd/releases
|
# the artifacts on https://github.com/apache/maven-mvnd/releases
|
||||||
|
|
||||||
@@ -139,4 +134,10 @@ mvn versions:set -DnewVersion=$NEXT_VERSION
|
|||||||
# commit
|
# commit
|
||||||
git add -A
|
git add -A
|
||||||
git commit -m "Next is $NEXT_VERSION"
|
git commit -m "Next is $NEXT_VERSION"
|
||||||
git push origin master
|
# git push origin master
|
||||||
|
|
||||||
|
# NOTE: Manually push once done: git push origin master --tags
|
||||||
|
echo "=============================================================================="
|
||||||
|
echo "Release done, nothing got pushed (yet); please push changes with command below"
|
||||||
|
echo "$ git push origin master --tags"
|
||||||
|
echo ""
|
||||||
|
@@ -36,31 +36,23 @@ then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
rm -Rf target/releases/${VERSION}
|
rm -Rf target/releases/mvnd/${VERSION}
|
||||||
mkdir -p target/releases/${VERSION}
|
mkdir -p target/releases/mvnd/${VERSION}
|
||||||
pushd target/releases
|
pushd target/releases/mvnd/${VERSION}
|
||||||
|
|
||||||
runsUrl=$(echo "https://api.github.com/repos/apache/maven-mvnd/actions/runs" | sed -e 's?https://api.github.com??g')
|
gh release download ${VERSION}
|
||||||
artifactsUrl=$(gh api -H "Accept: application/vnd.github.v3+json" $runsUrl --jq '.workflow_runs[] | select(.name=="Release" and .head_branch=="'${VERSION}'") | .artifacts_url' | sed -e 's?https://api.github.com??g')
|
|
||||||
downloadUrl=$(gh api -H "Accept: application/vnd.github.v3+json" $artifactsUrl --jq '.artifacts[] | select(.name = "artifacts") | .archive_download_url' | sed -e 's?https://api.github.com??g')
|
|
||||||
echo "Downloading artifacts from $downloadUrl"
|
|
||||||
gh api $downloadUrl > artifacts-${VERSION}.zip
|
|
||||||
unzip artifacts-${VERSION}.zip -d ${VERSION}
|
|
||||||
cd ${VERSION}
|
|
||||||
|
|
||||||
for dist in darwin-amd64.zip darwin-amd64.tar.gz darwin-aarch64.zip darwin-aarch64.tar.gz linux-amd64.zip linux-amd64.tar.gz windows-amd64.zip windows-amd64.tar.gz src.zip src.tar.gz
|
for dist in maven-mvnd*.*
|
||||||
do
|
do
|
||||||
FILE=maven-mvnd-${VERSION}-${dist}
|
echo "Processing ${dist}"
|
||||||
# sha256 are used by homebrew which does not support sha512 atm
|
# sha256 are used by homebrew which does not support sha512 atm
|
||||||
shasum -a 256 -b ${FILE} | cut -d ' ' -f 1 > ${FILE}.sha256
|
shasum -a 256 -b ${dist} | cut -d ' ' -f 1 > ${dist}.sha256
|
||||||
shasum -a 512 -b ${FILE} | cut -d ' ' -f 1 > ${FILE}.sha512
|
shasum -a 512 -b ${dist} | cut -d ' ' -f 1 > ${dist}.sha512
|
||||||
gpg --detach-sign --armor ${FILE}
|
gpg --detach-sign --armor ${dist}
|
||||||
done
|
done
|
||||||
|
|
||||||
cd ..
|
cd ..
|
||||||
svn co https://dist.apache.org/repos/dist/dev/maven/mvnd
|
svn co https://dist.apache.org/repos/dist/dev/maven/mvnd
|
||||||
mv ${VERSION} mvnd
|
|
||||||
cd mvnd
|
|
||||||
svn add ${VERSION}
|
svn add ${VERSION}
|
||||||
svn commit -m "Release Apache Maven Daemon ${VERSION}"
|
svn commit -m "Release Apache Maven Daemon ${VERSION}"
|
||||||
|
|
||||||
|
@@ -19,13 +19,13 @@ include Makefile.common
|
|||||||
|
|
||||||
.PHONY: all package native native-all deploy crossbuild ducible clean-native
|
.PHONY: all package native native-all deploy crossbuild ducible clean-native
|
||||||
|
|
||||||
linux-armv6-digest:=@sha256:7bad6ab302af34bdf6634c8c2b02c8dc6ac932c67da9ecc199c549ab405e971e
|
linux-armv6-digest:=@sha256:a90a7deda7f561932d9ad658f8d661d17eeb44f4e7f7024ac087db1d0b95c6f5
|
||||||
linux-x86-digest:=@sha256:7a8fda5ff1bb436ac1f2e7d40043deb630800fce33d123d04779d48f85702dcd
|
linux-x86-digest:=@sha256:fbe45fcb0c2ce82f84a998a1d37d67b3906502723ed89f8191c3243d9d835d17
|
||||||
windows-static-x86-digest:=@sha256:99d7069789560ef77a7504ead4a2b5e3c245cb45a45f964c74fecbf649398d3a
|
windows-static-x86-digest:=@sha256:b205eeeafaef4f44482d16254670da815d5679b03cf8e51e4adc3539d1c4a9c0
|
||||||
windows-static-x64-digest:=@sha256:f159861bc80b29e5dafb223477167bec53ecec6cdacb051d31e90c5823542100
|
windows-static-x64-digest:=@sha256:d385eec5b60e0892b3171c5cba3b892afccb3a45aed1ee9dc41b8a13c50e8aa5
|
||||||
cross-build-digest:=@sha256:8dbaa86462270db93ae1b1b319bdd88d89272faf3a68632daf4fa36b414a326e
|
cross-build-digest:=@sha256:8dbaa86462270db93ae1b1b319bdd88d89272faf3a68632daf4fa36b414a326e
|
||||||
freebsd-crossbuild-digest:=@sha256:cda62697a15d8bdc0bc26e780b1771ee78f12c55e7d5813e62c478af5a747c43
|
freebsd-crossbuild-digest:=@sha256:cda62697a15d8bdc0bc26e780b1771ee78f12c55e7d5813e62c478af5a747c43
|
||||||
mcandre-snek-digest:=@sha256:9f84e9fcdf66daafc1f1c3fb772a6c97977714e17800aeac2e3bbe5dc5039dd0
|
mcandre-snek-digest:=@sha256:e5aaf20daece19796dcd0553feb971143b71cc67d13d79d73649cc689fb87287
|
||||||
|
|
||||||
all: package
|
all: package
|
||||||
|
|
||||||
@@ -96,7 +96,7 @@ target/dockcross/dockcross-linux-x86: dockcross
|
|||||||
docker run --rm dockcross/linux-x86$(linux-x86-digest) > target/dockcross/dockcross-linux-x86
|
docker run --rm dockcross/linux-x86$(linux-x86-digest) > target/dockcross/dockcross-linux-x86
|
||||||
chmod +x target/dockcross/dockcross-linux-x86
|
chmod +x target/dockcross/dockcross-linux-x86
|
||||||
linux-x86: download-includes target/dockcross/dockcross-linux-x86
|
linux-x86: download-includes target/dockcross/dockcross-linux-x86
|
||||||
target/dockcross/dockcross-linux-x86 bash -c 'make clean-native native OS_NAME=Linux OS_ARCH=x86'
|
target/dockcross/dockcross-linux-x86 --image dockcross/linux-x86$(linux-x86-digest) bash -c 'make clean-native native OS_NAME=Linux OS_ARCH=x86'
|
||||||
|
|
||||||
linux-x86_64: download-includes
|
linux-x86_64: download-includes
|
||||||
docker run -it --rm -v $$PWD:/workdir --user $$(id -u):$$(id -g) \
|
docker run -it --rm -v $$PWD:/workdir --user $$(id -u):$$(id -g) \
|
||||||
@@ -110,7 +110,7 @@ target/dockcross/dockcross-linux-armv6: dockcross
|
|||||||
docker run --rm dockcross/linux-armv6$(linux-armv6-digest) > target/dockcross/dockcross-linux-armv6
|
docker run --rm dockcross/linux-armv6$(linux-armv6-digest) > target/dockcross/dockcross-linux-armv6
|
||||||
chmod +x target/dockcross/dockcross-linux-armv6
|
chmod +x target/dockcross/dockcross-linux-armv6
|
||||||
linux-armv6: download-includes target/dockcross/dockcross-linux-armv6
|
linux-armv6: download-includes target/dockcross/dockcross-linux-armv6
|
||||||
target/dockcross/dockcross-linux-armv6 bash -c 'make clean-native native CROSS_PREFIX=armv6-unknown-linux-gnueabihf- OS_NAME=Linux OS_ARCH=armv6'
|
target/dockcross/dockcross-linux-armv6 --image dockcross/linux-armv6$(linux-armv6-digest) bash -c 'make clean-native native CROSS_PREFIX=armv6-unknown-linux-gnueabihf- OS_NAME=Linux OS_ARCH=armv6'
|
||||||
|
|
||||||
linux-armv7: download-includes
|
linux-armv7: download-includes
|
||||||
docker run -it --rm -v $$PWD:/workdir --user $$(id -u):$$(id -g) \
|
docker run -it --rm -v $$PWD:/workdir --user $$(id -u):$$(id -g) \
|
||||||
@@ -128,13 +128,13 @@ target/dockcross/dockcross-windows-static-x86: dockcross
|
|||||||
docker run --rm dockcross/windows-static-x86$(windows-static-x86-digest) > target/dockcross/dockcross-windows-static-x86
|
docker run --rm dockcross/windows-static-x86$(windows-static-x86-digest) > target/dockcross/dockcross-windows-static-x86
|
||||||
chmod +x target/dockcross/dockcross-windows-static-x86
|
chmod +x target/dockcross/dockcross-windows-static-x86
|
||||||
win-x86: download-includes target/dockcross/dockcross-windows-static-x86
|
win-x86: download-includes target/dockcross/dockcross-windows-static-x86
|
||||||
target/dockcross/dockcross-windows-static-x86 bash -c 'make clean-native native CROSS_PREFIX=i686-w64-mingw32.static- OS_NAME=Windows OS_ARCH=x86'
|
target/dockcross/dockcross-windows-static-x86 --image dockcross/windows-static-x86$(windows-static-x86-digest) bash -c 'make clean-native native CROSS_PREFIX=i686-w64-mingw32.static- OS_NAME=Windows OS_ARCH=x86'
|
||||||
|
|
||||||
target/dockcross/dockcross-windows-static-x64: dockcross
|
target/dockcross/dockcross-windows-static-x64: dockcross
|
||||||
docker run --rm dockcross/windows-static-x64$(windows-static-x64-digest) > target/dockcross/dockcross-windows-static-x64
|
docker run --rm dockcross/windows-static-x64$(windows-static-x64-digest) > target/dockcross/dockcross-windows-static-x64
|
||||||
chmod +x target/dockcross/dockcross-windows-static-x64
|
chmod +x target/dockcross/dockcross-windows-static-x64
|
||||||
win-x86_64: download-includes target/dockcross/dockcross-windows-static-x64
|
win-x86_64: download-includes target/dockcross/dockcross-windows-static-x64
|
||||||
target/dockcross/dockcross-windows-static-x64 bash -c 'make clean-native native CROSS_PREFIX=x86_64-w64-mingw32.static- OS_NAME=Windows OS_ARCH=x86_64'
|
target/dockcross/dockcross-windows-static-x64 --image dockcross/windows-static-x64$(windows-static-x64-digest) bash -c 'make clean-native native CROSS_PREFIX=x86_64-w64-mingw32.static- OS_NAME=Windows OS_ARCH=x86_64'
|
||||||
|
|
||||||
mac-x86: download-includes
|
mac-x86: download-includes
|
||||||
docker run -it --rm -v $$PWD:/workdir --user $$(id -u):$$(id -g) \
|
docker run -it --rm -v $$PWD:/workdir --user $$(id -u):$$(id -g) \
|
||||||
|
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user