Skip to content

Java CI

Java CI #29

Workflow file for this run

# Licensed to Julian Hyde under one or more contributor license
# agreements. See the NOTICE file distributed with this work
# for additional information regarding copyright ownership.
# Julian Hyde licenses this file to you under the Apache
# License, Version 2.0 (the "License"); you may not use this
# file except in compliance with the License. You may obtain a
# copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
# either express or implied. See the License for the specific
# language governing permissions and limitations under the
# License.
#
name: Java CI
on:
push:
branches:
- '*'
workflow_dispatch: # allow manual triggering
schedule:
# Run at 0543 UTC on the 7th day of each month
# m h dom mon dow
- cron: '43 05 7 * *'
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
java-version: [ "8", "11", "17" ]
hsqldb-version: [ "2.0.0", "2.3.1", "2.6.1" ]
javadoc: [ false ]
exclude:
# hsqldb >= 2.6 requires JRE >= 11
- java-version: "8"
hsqldb-version: "2.6.1"
include:
- java-version: "17"
hsqldb-version: "2.6.1"
javadoc: true
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Set up JDK
uses: actions/setup-java@v2
with:
java-version: ${{ matrix.java-version }}
distribution: 'adopt'
- name: Build with Maven
run: |
GOALS=verify
if [ "${{ matrix.javadoc }}" = true ]
then
GOALS="$GOALS javadoc:javadoc javadoc:test-javadoc"
fi
if [ "${{ matrix.hsqldb-version }}" ]
then
DEFS="$DEFS -Dhsqldb.version=${{ matrix.hsqldb-version }}"
fi
./mvnw $DEFS --batch-mode --update-snapshots $GOALS
# End main.yml