From 2c759fa900835734390b8fe61e94ba82bf6474bb Mon Sep 17 00:00:00 2001 From: Michiel Borkent Date: Wed, 28 Dec 2022 11:16:20 +0100 Subject: [PATCH] workflow --- .github/workflows/ci.yml | 52 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..428e775 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,52 @@ +name: CI + +on: [push, pull_request] + +jobs: + + test: + + strategy: + matrix: + os: [ubuntu-latest, windows-latest] + + runs-on: ${{ matrix.os }} + + steps: + - name: Checkout + uses: actions/checkout@v3 + + # It is important to install java before installing clojure tools which needs java + # exclusions: babashka, clj-kondo and cljstyle + - name: Prepare java + uses: actions/setup-java@v3 + with: + distribution: 'zulu' + java-version: '11' + + - name: Install clojure tools + uses: DeLaGuardo/setup-clojure@10.1 + with: + # Install just one or all simultaneously + # The value must indicate a particular version of the tool, or use 'latest' + # to always provision the latest version + boot: 2.8.3 # Boot.clj + bb: latest + + # Optional step: + - name: Cache clojure dependencies + uses: actions/cache@v3 + with: + path: | + ~/.m2/repository + ~/.gitlibs + ~/.deps.clj + # List all files containing dependencies: + key: cljdeps-${{ hashFiles('deps.edn') }} + # key: cljdeps-${{ hashFiles('deps.edn', 'bb.edn') }} + # key: cljdeps-${{ hashFiles('project.clj') }} + # key: cljdeps-${{ hashFiles('build.boot') }} + restore-keys: cljdeps- + + - name: Run tests + run: bb test