| name: CI |
| |
| on: |
| push: |
| branches: |
| - '*' |
| pull_request: |
| branches: |
| - '*' |
| |
| permissions: |
| contents: read |
| |
| # https://help.github.com/en/actions/automating-your-workflow-with-github-actions/software-installed-on-github-hosted-runners |
| # GitHub Actions does not support Docker, PostgreSQL server on Windows, macOS :( |
| |
| concurrency: |
| # On master/release, we don't want any jobs cancelled so the sha is used to name the group |
| # On PR branches, we cancel the job if new commits are pushed |
| # More info: https://stackoverflow.com/a/68422069/253468 |
| group: ${{ github.ref == 'refs/heads/trunk' && format('ci-main-{0}', github.sha) || format('ci-main-{0}', github.ref) }} |
| cancel-in-progress: true |
| |
| jobs: |
| build: |
| name: 'Java 8' |
| runs-on: ubuntu-latest |
| steps: |
| - name: 'Checkout xalan-java' |
| uses: actions/checkout@v3 |
| - name: 'Set up JDK 8' |
| uses: actions/setup-java@v2 |
| with: |
| distribution: zulu |
| java-version: 8 |
| - name: 'Build Xalan jars' |
| run: | |
| mvn --no-transfer-progress clean compile site verify |
| - uses: actions/checkout@v3 |
| name: 'Checkout xalan-test' |
| with: |
| repository: apache/xalan-test |
| path: xalan-test |
| ref: master |
| - name: 'Cheat xalan-test up to be sibling of xalan-java' |
| run: | |
| mv xalan-test ..; ls .. |
| - name: 'Run xalan-test tests' |
| working-directory: ../xalan-test |
| # NOTE: "alltest" target includes conformance tests known not to run in Xalan, |
| # as well as having dependencies on some targets which have since been edited |
| # out. The following is our typical minimal build test as documented in README, |
| # minus conf.xsltc since that one is currently throwing four known failures and |
| # isn't set up to say "but that's not a regression". |
| |
| # NOTE: Adjustments made for mvn build leaving things in a slightly different |
| # place than ant build did (and recreating /lib). |
| run: | |
| ls; ant -debug jar extensions.classes smoketest apitest -Dxalan.relpath=../xalan-java -Dparserjar=../xalan-java/lib/xercesImpl-2.12.2.jar -Dxml-apis.jar=../xalan-java/lib/xml-apis-1.4.01.jar |
| |
| # Build distribution artifacts: Used to pull xalan-test back down as child and |
| # run fulldist: |
| # run: | |
| # ant fulldist |
| # fulldist isn't currently a separate target in the mvn build process |
| # A near-equivalent is being performed every time to build the .tar.gz |
| # and .zip distribution files. |
| # |
| # BUT NOTE that the binary distro has traditionally included |
| # xalan-test as a subdirectory; maven build doesn't yet pull that in. |
| # Discussion is in progress about whether it is (a) necessary, (b) a good |
| # idea. |
| # TODO: REVIEW. |