name: 'CI' on: push: branches: - 'master' pull_request: jobs: test: runs-on: docker strategy: matrix: lisp: - sbcl-bin env: LISP: ${{ matrix.lisp }} steps: - uses: actions/checkout@v4 - name: Restore cache id: restore-cache uses: actions/cache/restore@v4 with: path: $HOME/.roswell/ key: roswell-${{ runner.os }}-${{ matrix.lisp }} - name: Install Roswell and Qlot if: steps.restore-cache.outputs.cache-hit != 'true' env: LISP: ${{ matrix.lisp }} run: | curl -L https://raw.githubusercontent.com/roswell/roswell/master/scripts/install-for-ci.sh | sh ros install fukamachi/qlot - name: Save cache id: save-cache uses: actions/cache/save@v4 with: path: $HOME/.roswell/ key: ${{ steps.restore-cache.outputs.cache-primary-key }} - name: Install dependencies run: | PATH="~/.roswell/bin:$PATH" qlot install - name: Run tests run: .qlot/bin/rove hsx.asd