Skip to content

Haxe-Tokentree

Haxe-Tokentree #1248

Workflow file for this run

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.6', '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'