Skip to content

Commit 05bf92f

Browse files
committed
Update the CI setup to match that of CIDER
1 parent fb9b5ea commit 05bf92f

File tree

1 file changed

+102
-18
lines changed

1 file changed

+102
-18
lines changed

.circleci/config.yml

+102-18
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,120 @@
11
version: 2.1
22

3+
orbs:
4+
win: circleci/[email protected]
5+
36
# Default actions to perform on each Emacs version
4-
default: &default-steps
5-
steps:
6-
- checkout
7-
- run: apt-get update && apt-get install make
8-
- run: make test
7+
commands:
8+
setup:
9+
steps:
10+
- checkout
11+
- run:
12+
name: Install Eldev
13+
command: curl -fsSL https://raw.github.com/doublep/eldev/master/webinstall/circle-eldev > x.sh && source ./x.sh
14+
15+
macos-setup:
16+
steps:
17+
- checkout
18+
- run:
19+
name: Install Emacs latest
20+
command: |
21+
echo "HOMEBREW_NO_AUTO_UPDATE=1" >> $BASH_ENV
22+
brew install homebrew/cask/emacs
23+
- run:
24+
name: Install Eldev
25+
command: curl -fsSL https://raw.github.com/doublep/eldev/master/webinstall/circle-eldev > x.sh && source ./x.sh
26+
27+
setup-windows:
28+
steps:
29+
- checkout
30+
- run:
31+
name: Install Eldev
32+
command: |
33+
# Remove expired DST Root CA X3 certificate. Workaround
34+
# for https://debbugs.gnu.org/cgi/bugreport.cgi?bug=51038
35+
# bug on Emacs 27.2.
36+
gci cert:\LocalMachine\Root\DAC9024F54D8F6DF94935FB1732638CA6AD77C13
37+
gci cert:\LocalMachine\Root\DAC9024F54D8F6DF94935FB1732638CA6AD77C13 | Remove-Item
38+
(iwr https://raw.github.com/doublep/eldev/master/webinstall/circle-eldev.ps1).Content | powershell -command -
39+
test:
40+
steps:
41+
- run:
42+
name: Run regression tests
43+
command: eldev -dtT -p test
44+
lint:
45+
steps:
46+
- run:
47+
name: Run Elisp-lint
48+
command: eldev lint
49+
- run:
50+
name: Byte-compile `.el' files
51+
command: eldev -dtT compile --warnings-as-errors
952

10-
# Enumerated list of Emacs versions
1153
jobs:
12-
test-emacs-26:
54+
test-ubuntu-emacs-26:
55+
docker:
56+
- image: silex/emacs:26-ci
57+
entrypoint: bash
58+
steps:
59+
- setup
60+
- test
61+
62+
test-ubuntu-emacs-27:
1363
docker:
14-
- image: silex/emacs:26-ci-cask
64+
- image: silex/emacs:27-ci
1565
entrypoint: bash
16-
<<: *default-steps
66+
steps:
67+
- setup
68+
- test
1769

18-
test-emacs-27:
70+
test-ubuntu-emacs-28:
1971
docker:
20-
- image: silex/emacs:27-ci-cask
72+
- image: silex/emacs:28-ci
2173
entrypoint: bash
22-
<<: *default-steps
74+
steps:
75+
- setup
76+
- test
2377

24-
test-emacs-master:
78+
test-ubuntu-emacs-master:
2579
docker:
26-
- image: silex/emacs:master-ci-cask
80+
- image: silex/emacs:master-ci
2781
entrypoint: bash
28-
<<: *default-steps
82+
steps:
83+
- setup
84+
- test
85+
86+
test-macos-emacs-latest:
87+
macos:
88+
xcode: "14.0.0"
89+
steps:
90+
- macos-setup
91+
- test
92+
93+
test-windows-emacs-latest:
94+
executor: win/default
95+
steps:
96+
- run:
97+
name: Install Emacs latest
98+
command: |
99+
choco install emacs
100+
- setup-windows
101+
- test
102+
103+
test-lint:
104+
docker:
105+
- image: silex/emacs:28-ci
106+
steps:
107+
- setup
108+
- lint
29109

30110
workflows:
31111
version: 2
32112
ci-test-matrix:
33113
jobs:
34-
- test-emacs-26
35-
- test-emacs-27
36-
- test-emacs-master
114+
- test-ubuntu-emacs-26
115+
- test-ubuntu-emacs-27
116+
- test-ubuntu-emacs-28
117+
- test-ubuntu-emacs-master
118+
- test-lint
119+
- test-macos-emacs-latest
120+
- test-windows-emacs-latest

0 commit comments

Comments
 (0)