-
-
Notifications
You must be signed in to change notification settings - Fork 11
152 lines (143 loc) · 3.9 KB
/
tests.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
name: Tests
on:
push:
branches:
- master
pull_request:
jobs:
kondo:
runs-on: ubuntu-20.04
timeout-minutes: 10
env:
CLJ_KONDO_VERSION: "2023.09.07"
DOWNLOAD_URL: https://github.com/clj-kondo/clj-kondo/releases/download
steps:
- uses: actions/checkout@v4.1.7
- name: Setup Java & Clojure
uses: ./.github/actions/setup
with:
cache-key: kondo
- name: Install clj-kondo
run: |
curl -OL ${DOWNLOAD_URL}/v${CLJ_KONDO_VERSION}/clj-kondo-${CLJ_KONDO_VERSION}-linux-static-amd64.zip
curl -OL ${DOWNLOAD_URL}/v${CLJ_KONDO_VERSION}/clj-kondo-${CLJ_KONDO_VERSION}-linux-static-amd64.zip.sha256
cat clj-kondo-${CLJ_KONDO_VERSION}-linux-static-amd64.zip.sha256 >> SHA256sum.txt
echo " clj-kondo-${CLJ_KONDO_VERSION}-linux-static-amd64.zip" >> SHA256sum.txt
sha256sum -c SHA256sum.txt
unzip -d /usr/local/bin clj-kondo-${CLJ_KONDO_VERSION}-linux-static-amd64.zip
- run: clj-kondo --version
- name: Copy Kondo config from deps
run: >-
clj-kondo
--copy-configs
--dependencies
--lint "$(clojure -A:dev -Spath)"
--skip-lint
--parallel
- name: Run clj-kondo
run: >-
clj-kondo
--parallel
--lint
src
test
toucan1/src
toucan1/test
tests-postgres:
runs-on: ubuntu-20.04
timeout-minutes: 10
steps:
- uses: actions/checkout@v4.1.7
- uses: harmon758/postgresql-action@v1
with:
postgresql version: 14
postgresql db: 'toucan2'
postgresql user: 'cam'
postgresql password: 'cam'
- name: Setup Java & Clojure
uses: ./.github/actions/setup
with:
cache-key: tests-postgres
- run: clojure -X:dev:test:test-postgres
name: Run tests
env:
CI: TRUE
tests-mariadb:
runs-on: ubuntu-20.04
timeout-minutes: 10
services:
mariadb:
image: mariadb:latest
ports:
- "3306:3306"
env:
MYSQL_DATABASE: metabase_test
MYSQL_USER: root
MYSQL_ALLOW_EMPTY_PASSWORD: yes
steps:
- uses: actions/checkout@v4.1.7
- name: Setup Java & Clojure
uses: ./.github/actions/setup
with:
cache-key: tests-mariadb
- run: clojure -X:dev:test:test-mariadb
name: Run tests
env:
CI: TRUE
tests-h2:
runs-on: ubuntu-20.04
timeout-minutes: 10
steps:
- uses: actions/checkout@v4.1.7
- name: Setup Java & Clojure
uses: ./.github/actions/setup
with:
cache-key: tests-h2
- run: clojure -X:dev:test:test-h2
name: Run tests
env:
CI: TRUE
whitespace-linter:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v4.1.7
- name: Setup Java & Clojure
uses: ./.github/actions/setup
with:
cache-key: whitespace-linter
- run: clojure -T:whitespace-linter
name: Run whitespace linter
check:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v4.1.7
- name: Setup Java & Clojure
uses: ./.github/actions/setup
with:
cache-key: check
- run: clojure -M:check
name: Check Toucan 2 core namespaces
- run: clojure -M:check
name: Check toucan2-toucan1 namespaces
working-directory: toucan1
codecov:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v4.1.7
- name: Setup Java & Clojure
uses: ./.github/actions/setup
with:
cache-key: codecov
- run: clojure -X:dev:test-h2:cloverage
name: Run tests with Cloverage
- name: Upload results to codecov.io
uses: codecov/codecov-action@v4
with:
files: ./target/coverage/codecov.json
codespell:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v4.1.7
- uses: codespell-project/actions-codespell@v2
with:
ignore_words_file: .codespellignore