#
# Copyright (c) 2021 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: JSON-P API

on:
  pull_request:
  push:

jobs:
  build:
    name: Test on JDK ${{ matrix.java_version }}
    runs-on: ubuntu-latest

    strategy:
      matrix:
        java_version: [ 11, 17-ea ]

    steps:
    - name: Cache local Maven repository
      uses: actions/cache@v2
      with:
        path: ~/.m2/repository
        key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
        restore-keys: |
          ${{ runner.os }}-maven-
    - name: Checkout for build
      uses: actions/checkout@v2.3.4
    - name: Set up JDK
      uses: actions/setup-java@v2
      with:
        distribution: 'zulu'
        java-version: ${{ matrix.java_version }}
    - name: Verify
      run: cd api && mvn -B -V -U -C -Poss-release -Pstaging clean verify -Dgpg.skip=true
