Skip to content

Parsson build

Parsson build #229

Workflow file for this run

#
# Copyright (c) 2021, 2023 Contributors to the Eclipse Foundation
#
# This program and the accompanying materials are made available under the
# terms of the Eclipse Public License v. 2.0 which is available at
# http://www.eclipse.org/legal/epl-2.0,
# or the Eclipse Distribution License v. 1.0 which is available at
# http://www.eclipse.org/org/documents/edl-v10.php.
#
# SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
#
name: Parsson build
on:
pull_request:
push:
concurrency:
group: ${{ github.ref }}
cancel-in-progress: true
jobs:
build:
name: Test on JDK ${{ matrix.java_version }}
runs-on: ubuntu-latest
outputs:
jdk: ${{ steps.build.outputs.jdk }}
strategy:
matrix:
java_version: [ 11, 17, 21 ]
steps:
- name: Checkout for build
uses: actions/checkout@v3
- name: Set up JDK
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: ${{ matrix.java_version }}
cache: 'maven'
- name: Verify
id: build
# GH action creates a merge commit which modifies files in the current year, to get over it, we have to exclude the check for the year of modification
run: |
mvn -B -V -U -C -Poss-release,staging clean verify org.glassfish.copyright:glassfish-copyright-maven-plugin:check -Dgpg.skip=true -Dcopyright.ignoreyear=true
echo "::set-output name=jdk::${{ matrix.java_version }}"
- name: Upload binary image
uses: actions/upload-artifact@v2
if: success()
with:
name: parsson-dist
path: bundles/dist/target/parsson-dist.zip
test:
needs: build
strategy:
fail-fast: false
matrix:
test_suite:
- mods
- standalone
name: TCK ${{ matrix.test_suite }}
runs-on: ubuntu-latest
steps:
- name: Set up JDK
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: ${{ needs.build.outputs.jdk }}
- name: Checkout tests
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Download binaries
uses: actions/download-artifact@v2
with:
name: parsson-dist
- name: Prepare distribution
run: unzip -q -d image parsson-dist.zip
- name: Test
uses: gradle/gradle-build-action@v2
with:
gradle-version: current
build-root-directory: tck-impl
arguments: check -Pparsson.home=image/parsson-dist -Pparsson.impl=${{ matrix.test_suite }}
- name: Upload test results
uses: actions/upload-artifact@v2
with:
name: test-results
path: tck-impl/build/distributions/tck-test-results.zip