snapshot logic
This commit is contained in:
parent
c6124eb8dd
commit
fa820cfbdb
3 changed files with 98 additions and 30 deletions
81
.github/workflows/test-and-snapshot.yml
vendored
Normal file
81
.github/workflows/test-and-snapshot.yml
vendored
Normal file
|
|
@ -0,0 +1,81 @@
|
|||
name: Clojure CI
|
||||
|
||||
on: [push]
|
||||
|
||||
jobs:
|
||||
build-and-release:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: actions/setup-java@v2
|
||||
with:
|
||||
distribution: 'adopt'
|
||||
java-version: '11'
|
||||
cache: 'maven'
|
||||
- name: Setup Clojure
|
||||
uses: DeLaGuardo/setup-clojure@master
|
||||
with:
|
||||
tools-deps: '1.10.3.986'
|
||||
- name: Run Tests
|
||||
run: clojure -T:build ci :snapshot true
|
||||
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
java: [ '8', '14', '15', '16', '17' ]
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/setup-java@v2
|
||||
with:
|
||||
distribution: 'adopt'
|
||||
java-version: ${{ matrix.java }}
|
||||
cache: 'maven'
|
||||
- name: Setup Clojure
|
||||
uses: DeLaGuardo/setup-clojure@master
|
||||
with:
|
||||
tools-deps: '1.10.3.986'
|
||||
- name: Run Tests
|
||||
run: clojure -T:build test
|
||||
|
||||
build-graalvm-old:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
graalvm: [ '19.3.6', '20.3.2' ]
|
||||
base: [ 'java8', 'java11' ]
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Setup GraalVM
|
||||
uses: DeLaGuardo/setup-graalvm@4.0
|
||||
with:
|
||||
graalvm: ${{ matrix.graalvm }}
|
||||
java: ${{ matrix.base }}
|
||||
- name: Setup Clojure
|
||||
uses: DeLaGuardo/setup-clojure@master
|
||||
with:
|
||||
tools-deps: '1.10.3.986'
|
||||
- name: Run Tests
|
||||
run: clojure -T:build test
|
||||
|
||||
build-graalvm-new:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
graalvm: [ '21.1.0' ]
|
||||
base: [ 'java11', 'java16' ]
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Setup GraalVM
|
||||
uses: DeLaGuardo/setup-graalvm@4.0
|
||||
with:
|
||||
graalvm: ${{ matrix.graalvm }}
|
||||
java: ${{ matrix.base }}
|
||||
- name: Setup Clojure
|
||||
uses: DeLaGuardo/setup-clojure@master
|
||||
with:
|
||||
tools-deps: '1.10.3.986'
|
||||
- name: Run Tests
|
||||
run: clojure -T:build test
|
||||
28
.github/workflows/test.yml
vendored
28
.github/workflows/test.yml
vendored
|
|
@ -1,31 +1,13 @@
|
|||
name: Clojure CI
|
||||
|
||||
on: [push, pull_request]
|
||||
on: [pull_request]
|
||||
|
||||
jobs:
|
||||
build-and-release:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: actions/setup-java@v2
|
||||
with:
|
||||
distribution: 'adopt'
|
||||
java-version: '11'
|
||||
cache: 'maven'
|
||||
- name: Setup Clojure
|
||||
uses: DeLaGuardo/setup-clojure@master
|
||||
with:
|
||||
tools-deps: '1.10.3.986'
|
||||
- name: Run Tests
|
||||
run: clojure -T:build ci
|
||||
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
java: [ '8', '14', '15', '16', '17' ]
|
||||
java: [ '8', '11', '14', '15', '16', '17' ]
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/setup-java@v2
|
||||
|
|
@ -38,7 +20,7 @@ jobs:
|
|||
with:
|
||||
tools-deps: '1.10.3.986'
|
||||
- name: Run Tests
|
||||
run: clojure -T:build ci
|
||||
run: clojure -T:build test
|
||||
|
||||
build-graalvm-old:
|
||||
runs-on: ubuntu-latest
|
||||
|
|
@ -58,7 +40,7 @@ jobs:
|
|||
with:
|
||||
tools-deps: '1.10.3.986'
|
||||
- name: Run Tests
|
||||
run: clojure -T:build ci
|
||||
run: clojure -T:build test
|
||||
|
||||
build-graalvm-new:
|
||||
runs-on: ubuntu-latest
|
||||
|
|
@ -78,4 +60,4 @@ jobs:
|
|||
with:
|
||||
tools-deps: '1.10.3.986'
|
||||
- name: Run Tests
|
||||
run: clojure -T:build ci
|
||||
run: clojure -T:build test
|
||||
|
|
|
|||
19
build.clj
19
build.clj
|
|
@ -10,24 +10,29 @@
|
|||
For more information, run:
|
||||
|
||||
clojure -A:deps -T:build help/doc"
|
||||
(:refer-clojure :exclude [test])
|
||||
(:require [clojure.tools.build.api :as b]
|
||||
[org.corfield.build :as bb]))
|
||||
|
||||
(def lib 'com.github.seancorfield/next.jdbc)
|
||||
(def version (format "1.2.%s" (b/git-count-revs nil)))
|
||||
(def snapshot "1.2.999-SNAPSHOT")
|
||||
|
||||
(defn test "Run all the tests." [opts]
|
||||
(reduce (fn [opts alias]
|
||||
(bb/run-tests (assoc opts :aliases [alias])))
|
||||
opts
|
||||
[:1.10 :master])
|
||||
opts)
|
||||
|
||||
(defn ci "Run the CI pipeline of tests (and build the JAR)." [opts]
|
||||
(-> opts
|
||||
(assoc :lib lib :version version)
|
||||
(as-> opts
|
||||
(reduce (fn [opts alias]
|
||||
(bb/run-tests (assoc opts :aliases [alias])))
|
||||
opts
|
||||
[:1.10 :master]))
|
||||
(assoc :lib lib :version (if (:snapshot opts) snapshot version))
|
||||
(test)
|
||||
(bb/clean)
|
||||
(bb/jar)))
|
||||
|
||||
(defn deploy "Deploy the JAR to Clojars." [opts]
|
||||
(-> opts
|
||||
(assoc :lib lib :version version)
|
||||
(assoc :lib lib :version (if (:snapshot opts) snapshot version))
|
||||
(bb/deploy)))
|
||||
|
|
|
|||
Loading…
Reference in a new issue