Add feature-flag MVP (core + routing adapter) with typed evaluation APIs, conformance tests, user-managed provider resolution, and restored global evaluation context #267
Workflow file for this run
This file contains hidden or 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: 'CI' | |
| on: | |
| push: | |
| branches: | |
| - 'development' | |
| pull_request: | |
| jobs: | |
| tests: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| lisp: | |
| - sbcl | |
| env: | |
| LISP: ${{ matrix.lisp }} | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - name: setup cache folders | |
| run: | | |
| sudo mkdir -p /usr/local/etc/roswell | |
| sudo chown "${USER}" /usr/local/etc/roswell | |
| # Here the ros binary will be restored: | |
| sudo chown "${USER}" /usr/local/bin | |
| - name: current date for quicklisp | |
| id: current-month | |
| run: | | |
| echo "CURRENT_MONTH=$(date -u "+%Y-%m")" >> $GITHUB_OUTPUT | |
| - name: Cache Roswell Setup | |
| id: cache | |
| uses: actions/cache@v4 | |
| env: | |
| cache-name: cache-roswell | |
| with: | |
| path: | | |
| /usr/local/bin/ros | |
| /usr/local/etc/roswell | |
| ~/.cache/common-lisp/ | |
| ~/.roswell | |
| .qlot | |
| key: "${{ steps.current-month.outputs.value }}-${{ env.cache-name }}-${{ runner.os }}-${{ hashFiles('qlfile.lock') }}" | |
| - name: Restore Path To Cached Files | |
| run: | | |
| echo $HOME/.roswell/bin >> $GITHUB_PATH | |
| echo .qlot/bin >> $GITHUB_PATH | |
| if: steps.cache.outputs.cache-hit == 'true' | |
| - uses: 40ants/setup-lisp@v4 | |
| if: steps.cache.outputs.cache-hit != 'true' | |
| - name: run | |
| run: | | |
| ros use sbcl | |
| qlot install | |
| LISP="ros run --" make tests 2> /dev/null |