Haxe-Tokentree #1117
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Haxe-Tokentree | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
schedule: | |
- cron: '15 23 * * *' | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
haxe-version: ['4.3.4', 'nightly'] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Use Node.js 18 | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
- name: Run npm install | |
run: npm ci | |
- name: Cache Lix repository state | |
uses: actions/cache@v3 | |
with: | |
path: ~/haxe | |
key: ${{ runner.os }}-${{ matrix.haxe-version }}-${{ hashFiles('haxe_libraries/*.hxml') }} | |
- name: Install Haxe version ${{ matrix.haxe-version }} | |
run: | | |
npx lix download haxe ${{ matrix.haxe-version }} | |
npx lix use haxe ${{ matrix.haxe-version }} | |
- name: Run lix download | |
run: npx lix download | |
- name: Print versions | |
run: | | |
npx haxe -version | |
npx neko -version | |
npx haxelib list | |
- name: Clone checkstyle | |
run: git clone -b dev https://github.com/HaxeCheckstyle/haxe-checkstyle.git --depth=1 checkstyle | |
- name: Run npm install for checkstyle | |
run: | | |
(cd checkstyle; npm install) | |
- name: Install Haxe version ${{ matrix.haxe-version }} for checkstyle | |
run: | | |
(cd checkstyle; npx lix download haxe ${{ matrix.haxe-version }}) | |
(cd checkstyle; npx lix use haxe ${{ matrix.haxe-version }}) | |
- name: Run lix download for checkstyle | |
run: (cd checkstyle; npx lix download) | |
- name: Setup tokentree dev for checkstyle | |
run: | | |
(cd checkstyle/haxe_libraries; echo "-cp ../src" > tokentree.hxml) | |
- name: Run eval tests (with coverage) | |
run: npx haxe test.hxml | |
- name: Build and test checkstyle | |
if: matrix.haxe-version != 'nightly' | |
run: (cd checkstyle && npx haxe buildAll.hxml && rm -f coverage.json) | |
- name: Run Node version with --check | |
if: matrix.haxe-version != 'nightly' | |
run: npx neko checkstyle/run.n -s src -s test -r xml | |
- name: Coverage report | |
if: success() && (matrix.haxe-version != 'nightly') | |
uses: livewing/[email protected] | |
with: | |
lcov: lcov.info | |
- name: Checkstyle report | |
if: success() && (matrix.haxe-version != 'nightly') | |
uses: jwgmeligmeyling/checkstyle-github-action@master | |
with: | |
path: '**/check-style-report.xml' |