-
-
Notifications
You must be signed in to change notification settings - Fork 2
/
schema.clj
72 lines (62 loc) · 1.87 KB
/
schema.clj
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
(ns build-edn.schema)
(def ?build-config
[:map
[:config-file {:optional true} string?] ; The file path containing build configuration
[:lib qualified-symbol?]
[:version string?]
[:description {:optional true} string?]
[:source-dirs {:optional true} [:or
[:sequential string?]
[:set string?]]]
[:class-dir {:optional true} string?]
[:jar-file {:optional true} string?]
[:aliases {:optional true} [:sequential keyword?]]
[:github-actions? {:optional true} boolean?]])
(def ?java-compile-config
[:map
[:java-paths [:or
[:sequential string?]
[:set string?]]]
[:javac-opts {:optional true} [:sequential string?]]])
(def ?uber-build-config
[:map
[:uber-file string?]
[:main [:maybe symbol?]]
[:skip-compiling-dirs {:optional true} [:or
[:sequential string?]
[:set string?]]]])
(def ?document
[:or
[:map {:closed true}
[:file string?]
[:match string?]
[:action [:enum :append-before :replace :append-after]]
[:keep-indent? {:optional true} boolean?]
[:text string?]]
[:map {:closed true}
[:file string?]
[:action [:enum :create]]
[:text string?]]])
(def ?documents-build-config
[:map [:documents [:sequential ?document]]])
(def ?deploy-repository
[:map
[:id string?]
[:username {:optional true} string?]
[:password {:optional true} string?]
[:url {:optional true} string?]])
(def ?deploy-repository-build-config
[:map
[:deploy-repository ?deploy-repository]])
(def ?scm
[:map
[:connection string?]
[:developerConnection string?]
[:url string?]])
(def ?pom
[:map
[:scm {:optional true} ?scm]
[:no-clojure-itself? {:optional true} boolean?]])
(def ?pom-build-config
[:map
[:pom ?pom]])