Skip to content

CI

CI #371

Workflow file for this run

name: CI
on:
push:
branches:
- master
workflow_dispatch:
schedule:
- cron: "0 2 * * *"
env:
ECLIPSE_LATEST: "436"
jobs:
sanity-check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v4
with:
develocity-access-key: ${{ secrets.DEVELOCITY_API_TOKEN }}
- uses: ./.github/actions/run-build
with:
name: "Sanity check"
os: "ubuntu-latest"
command: "clean assemble checkstyleMain"
eclipse: ${{ env.ECLIPSE_LATEST }}
matrix-compute:
runs-on: ubuntu-latest
outputs:
allEclipseVersions: ${{ steps.versions.outputs.allEclipseVersions }}
latestEclipse: ${{ steps.versions.outputs.latestEclipse }}
steps:
- uses: actions/checkout@v4
- id: versions
run: |
versions=$(./.github/scripts/generate_eclipse_versions.py "48" "${{ env.ECLIPSE_LATEST }}")
echo "allEclipseVersions=${versions}" >> "$GITHUB_OUTPUT"
echo 'latestEclipse="${{ env.ECLIPSE_LATEST }}"' >> "$GITHUB_OUTPUT"
basic-test:
needs:
- sanity-check
- matrix-compute
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest]
eclipse: ["48", "${{ needs.matrix-compute.outputs.latestEclipse }}"]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v4
with:
develocity-access-key: ${{ secrets.DEVELOCITY_API_TOKEN }}
- uses: ./.github/actions/run-build
with:
name: "Basic test coverage"
command: "clean eclipseTest"
os: ${{ matrix.os }}
eclipse: ${{ matrix.eclipse }}
full-test:
needs:
- basic-test
- matrix-compute
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest]
eclipse: ${{ fromJSON(needs.matrix-compute.outputs.allEclipseVersions) }}
include:
- os: windows-latest
eclipse: "48"
- os: windows-latest
eclipse: "${{ needs.matrix-compute.outputs.latestEclipse }}"
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v4
with:
develocity-access-key: ${{ secrets.DEVELOCITY_API_TOKEN }}
- uses: ./.github/actions/run-build
with:
name: "Full test coverage"
command: "clean build"
os: ${{ matrix.os }}
eclipse: ${{ matrix.eclipse }}
cross-version-test:
needs:
- full-test
- matrix-compute
strategy:
fail-fast: false
matrix:
# TODO we should re-add 425
# eclipse: ["8", "416", "417", "424", "425", "${{ needs.matrix-compute.outputs.latestEclipse }}"]
eclipse: ["8", "416", "417", "424", "${{ needs.matrix-compute.outputs.latestEclipse }}"]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v4
with:
develocity-access-key: ${{ secrets.DEVELOCITY_API_TOKEN }}
- uses: ./.github/actions/run-build
with:
name: "Cross-version test coverage"
command: "clean crossVersionEclipseTest"
os: "ubuntu-latest"
eclipse: ${{ matrix.eclipse }}