2022-06-27 19:23:56 +03:00
2022-06-27 19:23:56 +03:00
2022-06-16 14:08:13 +02:00
2022-06-27 19:23:56 +03:00
wip
2020-08-20 11:39:44 +02:00
2021-12-01 17:38:39 +01:00
wip
2020-08-20 11:41:28 +02:00
2021-06-01 10:07:47 +02:00
wip
2020-08-20 11:39:44 +02:00
wip
2020-08-20 11:39:44 +02:00
2022-06-27 19:23:56 +03:00
wip
2020-08-20 12:57:19 +02:00
2019-10-04 11:41:15 +02:00
2022-06-16 14:08:13 +02:00
2022-06-16 14:08:13 +02:00
2022-06-27 19:23:56 +03:00
wip
2020-08-20 11:39:44 +02:00

setup-clojure

This action sets up Clojure tools environment for using in GitHub Actions.

  • Clojure CLI
  • Leiningen
  • boot-clj
  • Babashka
  • Clj-kondo
  • cljstyle
  • zprint

All three major tools available for MacOS and ubuntu based runners, Leiningen and Clojure CLI also available on Windows

Usage

Here is a snippet for your workflow file:

name: Example workflow

on: [push]

jobs:

  clojure:

    strategy:
      matrix:
        os: [ubuntu-latest, macOS-latest, windows-latest]

    runs-on: ${{ matrix.os }}

    steps:
      - name: Checkout
        uses: actions/checkout@v3

      - name: Prepare java
        uses: actions/setup-java@v3
        with:
          distribution: 'zulu'
          java-version: '8'

      - name: Install clojure tools
        uses: DeLaGuardo/setup-clojure@7.0
        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
          cli: 1.10.1.693       # Clojure CLI based on tools.deps
          lein: 2.9.1           # Leiningen
          boot: 2.8.3           # Boot.clj
          bb: 0.7.8             # Babashka
          clj-kondo: 2022.05.31 # Clj-kondo
          cljstyle: 0.15.0      # cljstyle

      - name: Execute clojure code on Linux and MacOS
        if: ${{ matrix.os != 'windows-latest' }}
        run: clojure -e "(+ 1 1)"
        shell: bash

      - name: Execute clojure code on Windows
        if: ${{ matrix.os == 'windows-latest' }}
        run: clojure -e "(+ 1 1)"
        shell: powershell
        
      - name: Get leiningen version
        run: lein -v
        
      - name: Get boot version
        # Boot is not yet available for windows
        if: ${{ matrix.os != 'windows-latest' }}
        run: boot -V

      - name: Get babashka version
        run: bb --version

      - name: Get clj-kondo version
        run: clj-kondo --version

      - name: Get cljstyle version
        # cljstyle is not yet available for windows
        if: ${{ matrix.os != 'windows-latest' }}
        run: cljstyle version

      - name: Get zprint version
        run: zprint --version

For more application cases please check Smoke Test Workflow file

License

The scripts and documentation in this project are released under the MIT License

Description
GitHub Action to provision clojure's most popular build tools for Linux, Mac OS X and Windows.
Readme MIT
Languages
TypeScript 99.3%
JavaScript 0.7%