name: CI on: [push, pull_request] jobs: test-core: strategy: fail-fast: false matrix: os: [ubuntu-latest] node-version: ['14'] python-version: ['3.x'] test-target: # HAXE TARGETS - cpp # - cs - interp - js - nodejs - py - "lua 5.1" - "lua 5.2" - "lua 5.3" - "lua 5.4" - "luajit 2.0" - "luajit 2.1" runs-on: ${{ matrix.os }} env: CI_OS_NAME: ${{ matrix.os }} LUA: ${{ matrix.test-target }} steps: - uses: actions/checkout@v3 # Set up Kiss runtimes: # nodejs - uses: actions/setup-node@v3 with: node-version: ${{ matrix.node-version }} if: matrix.test-target == 'nodejs' # lix - uses: lix-pm/setup-lix@master with: lix-version: 15.12.0 # python - uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} if: matrix.test-target == 'py' # lua - run: sudo apt-get install libreadline-dev if: contains(matrix.test-target, 'lua') - run: pip install --user hererocks && hererocks env --$LUA -rlatest && source env/bin/activate && ./build-scripts/lua/install-deps.sh if: contains(matrix.test-target, 'lua') # mono - run: brew install mono || brew link --overwrite mono if: matrix.os == 'macos-latest' && matrix.test-target == 'cs' - run: choco install mono if: matrix.os == 'windows-latest' && matrix.test-target == 'cs' - run: | # instructions for ubuntu 20.04 from here: https://www.mono-project.com/download/stable/#download-lin sudo apt install gnupg ca-certificates sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF echo "deb https://download.mono-project.com/repo/ubuntu stable-focal main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list sudo apt update sudo apt install mono-devel if: matrix.os == 'ubuntu-latest' && matrix.test-target == 'cs' # run target test (not lua): - run: echo "KISS_TARGET=${{ matrix.test-target }}" >> $GITHUB_ENV if: contains(matrix.test-target, 'lua') == false - run: ./test.sh if: contains(matrix.test-target, 'lua') == false # run target test (lua): - run: echo "KISS_TARGET=lua" >> $GITHUB_ENV if: contains(matrix.test-target, 'lua') - run: source env/bin/activate && ./test.sh if: contains(matrix.test-target, 'lua')