mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-31 16:20:45 +00:00
3.9.16 is the newest release on the Maven 3.9.x line (which Tycho 4.0.x requires) and is the version the GitHub runner image shipped as default before image 20261004.327.1 bumped the default to the Tycho-incompatible 3.10.0. Pinning the image's former default avoids a per-run download. Assisted-By: Claude Opus 4.8
69 lines
2.5 KiB
YAML
69 lines
2.5 KiB
YAML
name: build-jetty-p2
|
|
|
|
on:
|
|
workflow_dispatch: {}
|
|
|
|
jobs:
|
|
build-jetty-p2:
|
|
permissions:
|
|
contents: write
|
|
checks: write
|
|
actions: read
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Install JDK 21
|
|
uses: actions/setup-java@v4
|
|
with:
|
|
distribution: temurin
|
|
java-version: 21
|
|
- name: Pin Apache Maven to 3.9.16
|
|
# Tycho 4.0.x requires the Maven 3.9.x line; the GitHub runner image's default
|
|
# Maven floats and bumped to 3.10.0, which breaks Tycho's Sisu/Guice component
|
|
# wiring. Pin a known-good 3.9.x so the build no longer depends on the runner
|
|
# image's default.
|
|
uses: stCarolas/setup-maven@12eb41b233df95d49b0c11fc1b5bc8312e5d4ce0 # v5.1
|
|
with:
|
|
maven-version: 3.9.16
|
|
- name: Check out the repository to the runner
|
|
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
with:
|
|
fetch-depth: '500'
|
|
- name: Download Eclipse Platform Runtime
|
|
run: |
|
|
curl -fsSL \
|
|
'https://www.eclipse.org/downloads/download.php?file=/eclipse/downloads/drops4/R-4.38-202512010920/eclipse-platform-4.38-linux-gtk-x86_64.tar.gz&r=1' \
|
|
-o eclipse.tar.gz
|
|
tar -xzf eclipse.tar.gz
|
|
ln -s ${PWD}/eclipse/eclipse /usr/local/bin
|
|
- name: Select Jetty Version
|
|
run: |
|
|
echo "VERSION=9.4.58.v20250814" >>"${GITHUB_ENV}"
|
|
- name: Mirror Jetty p2 repository
|
|
shell: bash
|
|
run: |
|
|
./java/com.sap.sailing.targetplatform/scripts/createJettyP2RepoFromMavenCentral.sh "${VERSION}"
|
|
- name: Upload build log
|
|
uses: actions/upload-artifact@v4
|
|
if: always()
|
|
with:
|
|
name: build.log
|
|
path: build.log
|
|
retention-days: 90
|
|
- name: Upload p2 site as artifact
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: jetty-p2
|
|
path: /tmp/jetty-p2-repo-${{ env.VERSION }}/repository/**/*
|
|
retention-days: 90
|
|
- name: SCP artifacts to download.eclipse.org to version-specific folder
|
|
uses: appleboy/scp-action@ff85246acaad7bdce478db94a363cd2bf7c90345 # v1
|
|
with:
|
|
host: projects-storage.eclipse.org
|
|
username: ${{ secrets.SCP_USERNAME }}
|
|
key: ${{ secrets.SCP_KEY }}
|
|
passphrase: ${{ secrets.SCP_PASSPHRASE }}
|
|
source: "/tmp/jetty-p2-repo-${{ env.VERSION }}/repository"
|
|
target: "/home/data/httpd/download.eclipse.org/sailing-analytics/p2/jetty-${{ env.VERSION }}"
|
|
strip_components: 3
|
|
rm: true
|