ci.yml (2542B)
1 # This is a basic workflow to help you get started with Actions 2 3 name: CI 4 5 on: 6 push: 7 branches: [ main, dev ] 8 pull_request: 9 branches: [ main ] 10 11 # Allows to run this workflow manually from the Actions tab 12 workflow_dispatch: 13 14 jobs: 15 build: 16 runs-on: ubuntu-latest 17 strategy: 18 fail-fast: false 19 matrix: 20 racket: ['6.9', '6.10', '6.10.1', '6.11', '6.12', '7.0', '7.1', '7.2', '7.3', '7.4', '7.5', '7.6', '7.7', '7.8', '7.9', '8.0'] 21 racket_cs: [0] 22 cover: [true] 23 exclude: 24 - racket: '6.8' 25 cover: true 26 include: 27 - racket: '8.0' 28 racket_cs: 1 29 cover: true 30 - racket: '6.8' 31 racket_cs: 1 32 cover: false 33 env: 34 # RACKET_DIR is an argument to install-racket.sh 35 RACKET_VERSION: "${{ matrix.racket }}" 36 RACKET_CS: "${{ matrix.racket_cs }}" 37 COVER: "${{ matrix.cover }}" 38 steps: 39 - uses: actions/checkout@v2 40 - name: Add to $PATH 41 run: | 42 printf %s\\n "$HOME/.racket/bin" >> "$GITHUB_PATH" 43 - name: Print environment variables 44 run: | 45 echo "matrix.racket ${{ matrix.racket }}" 46 echo "matrix.racket_cs ${{ matrix.racket_cs }}" 47 echo HOME="$HOME" 48 echo PATH="$PATH" 49 echo RACKET_VERSION="$RACKET_VERSION" 50 echo RACKET_CS="$RACKET_CS" 51 echo GITHUB_WORSPACE="$GITHUB_WORKSPACE" 52 - name: Install Racket 53 run: | 54 export RACKET_DIR="$HOME/.racket" 55 curl -L https://raw.githubusercontent.com/greghendershott/travis-racket/master/install-racket.sh | bash 56 - name: Install the Racket package 57 run: raco pkg install --deps search-auto -j 2 58 - name: Test the Racket package 59 run: raco test -p "$(basename "$GITHUB_WORKSPACE")" 60 - name: (Re?)Build the Racket package 61 run: raco setup --check-pkg-deps --no-zo --no-launcher --no-install --no-post-install --no-docs --pkgs "$(basename "$GITHUB_WORKSPACE")" 62 - name: Documentation coverage 63 run: | 64 if $COVER; then raco pkg install --deps search-auto doc-coverage; fi 65 if $COVER; then raco doc-coverage phc-graph; fi 66 - name: Code coverage 67 run: | 68 if $COVER; then raco pkg install --deps search-auto cover cover-coveralls; fi 69 if $COVER; then raco cover -b -f coveralls -d $TRAVIS_BUILD_DIR/coverage .; fi 70 - name: Deploy 71 run: if test "x${DEPLOY:-}" = "xtrue"; then sh ./auto-push-gh-pages.sh; fi 72