Skip to content

Build Main

Build Main #46

name: Build Main
on:
push:
branches:
- main
paths-ignore:
- 'docs/**'
pull_request:
branches:
- main
paths-ignore:
- 'docs/**'
schedule:
- cron: '0 0 * * *'
jobs:
build:
name: Build
strategy:
fail-fast: false
max-parallel: 6
matrix:
java:
- '11'
- '17'
- '21'
distribution:
- 'temurin'
os:
- ubuntu-latest
- macos-latest
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 1
- uses: actions/setup-java@v3
with:
distribution: ${{ matrix.distribution }}
java-version: ${{ matrix.java }}
- name: Build
run: |
./gradlew -S -Pskip.signing assemble
unset GEM_PATH GEM_HOME JRUBY_OPTS
./gradlew -S -Pskip.signing check
build-windows:
name: Build on Windows
strategy:
fail-fast: false
max-parallel: 3
matrix:
java:
- '11'
- '17'
- '21'
distribution:
- 'temurin'
os:
- windows-latest
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 1
- uses: actions/setup-java@v3
with:
distribution: ${{ matrix.distribution }}
java-version: ${{ matrix.java }}
- name: Assemble
shell: cmd
run: |
gradlew.bat -i assemble
- name: Check
shell: cmd
run: |
gradlew.bat -i -S check
- name: Upload asciidoctorj-core reports
uses: actions/upload-artifact@v3
env:
os_name: ${{ matrix.os }}
java_version: ${{ matrix.java }}
if: always()
with:
name: asciidoctorj-core-reports-${{ env.os_name }}-${{ env.java_version }}
path: asciidoctorj-core/build/reports/*
- name: Upload asciidoctorj-documentation reports
uses: actions/upload-artifact@v3
if: always()
env:
os_name: ${{ matrix.os }}
java_version: ${{ matrix.java }}
with:
name: asciidoctorj-documentation-reports-${{ env.os_name }}-${{ env.java_version }}
path: asciidoctorj-documentation/build/reports/*
test-asciidoctor-upstream:
name: Test Asciidoctor Upstream
needs:
- build
- build-windows
strategy:
fail-fast: false
max-parallel: 2
matrix:
java:
- '11'
- '17'
- '21'
os:
- ubuntu-latest
maven:
- '3.9.4'
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 1
- name: Setup Java
uses: s4u/setup-maven-action@v1.7.0
with:
java-distribution: temurin
java-version: ${{ matrix.java }}
maven-version: ${{ matrix.maven }}
- name: Upstream Build
run: |
unset GEM_PATH GEM_HOME JRUBY_OPTS
./ci/test-asciidoctor-upstream.sh
- name: Upload asciidoctorj-core reports
uses: actions/upload-artifact@v3
if: always()
env:
os_name: ${{ matrix.os }}
java_version: ${{ matrix.java }}
with:
name: asciidoctorj-core-reports-upstream-${{ env.os_name }}-${{ env.java_version }}
path: asciidoctorj-core/build/reports/*