blob: 30b0d5c8d62f46b21f623ef53f6d3b21bbab977b [file] [log] [blame]
Matthias Andreas Benkard7f4dacc2020-04-13 11:25:19 +02001<?xml version="1.0" encoding="utf-8"?>
2
3<project default="package">
4
5 <property name="web-dir" location="src/main/resources/META-INF/resources"/>
6
7 <target name="yarn" depends="yarn.check" if="yarn.run">
8 <exec executable="yarn" dir="${web-dir}">
9 <arg value="install"/>
10 </exec>
11 </target>
12
13 <target name="yarn.check">
14 <condition property="yarn.run">
15 <not>
16 <available file="${web-dir}/node_modules"/>
17 </not>
18 </condition>
19 </target>
20
21 <target name="snowpack" depends="snowpack.check,yarn" if="snowpack.run">
22 <exec executable="yarn" dir="${web-dir}">
23 <arg value="run"/>
24 <arg value="snowpack"/>
25 <arg value="--optimize"/>
26 </exec>
27 </target>
28
29 <target name="snowpack.check">
30 <condition property="snowpack.run">
31 <not>
32 <available file="${web-dir}/web_modules"/>
33 </not>
34 </condition>
35 </target>
36
Matthias Andreas Benkard813e5972020-06-14 19:27:42 +020037 <target name="parcel" depends="parcel.check,yarn" if="parcel.run">
38 <exec executable="yarn" dir="${web-dir}">
39 <arg value="parcel"/>
40 <arg value="build"/>
41 <arg value="lib.css"/>
42 <arg value="lib.js"/>
Matthias Andreas Benkard813e5972020-06-14 19:27:42 +020043 <arg value="web_modules/ContentTools.js"/>
44 <arg value="web_modules/ContentTools/build/content-tools.min.css"/>
45 </exec>
46 </target>
47
48 <target name="parcel.check">
49 <condition property="parcel.run">
50 <not>
51 <available file="${web-dir}/dist"/>
52 </not>
53 </condition>
54 </target>
55
Matthias Andreas Benkard7f4dacc2020-04-13 11:25:19 +020056 <target name="flow" depends="snowpack">
57 <exec executable="yarn" dir="${web-dir}">
58 <arg value="run"/>
59 <arg value="flow"/>
60 <arg value="--color=always"/>
61 </exec>
62 </target>
63
64 <target name="eslint" depends="snowpack">
65 <exec executable="yarn" dir="${web-dir}">
66 <arg value="run"/>
67 <arg value="eslint"/>
Matthias Andreas Benkard7f4dacc2020-04-13 11:25:19 +020068 <arg value="bookmarks"/>
Matthias Andreas Benkarde128d152020-04-19 19:40:59 +020069 <arg value="cms2"/>
70 <arg value="lazychat"/>
71 <arg value="posts"/>
Matthias Andreas Benkard7f4dacc2020-04-13 11:25:19 +020072 <arg value="--color"/>
73 </exec>
74 </target>
75
76 <target name="web.resources" depends="snowpack" unless="skip-web"/>
77 <target name="web.check" unless="skip-web" depends="web.resources,flow,eslint"/>
Matthias Andreas Benkard813e5972020-06-14 19:27:42 +020078 <target name="web.bundle" unless="skip-web" depends="web.resources,parcel"/>
79 <target name="web" unless="skip-web" depends="web.resources,web.check,web.bundle" description="Generate web resources"/>
Matthias Andreas Benkard7f4dacc2020-04-13 11:25:19 +020080
Matthias Andreas Benkard96c61e42020-04-13 21:31:25 +020081 <target name="package" description="Create executable JAR">
Matthias Andreas Benkard7f4dacc2020-04-13 11:25:19 +020082 <exec executable="./mvnw">
83 <arg value="package"/>
Matthias Andreas Benkard95d29a02020-04-24 16:07:49 +020084 <arg value="-Dquarkus.container-image.push=false"/>
Matthias Andreas Benkard7f4dacc2020-04-13 11:25:19 +020085 </exec>
86 </target>
87
Matthias Andreas Benkard96c61e42020-04-13 21:31:25 +020088 <target name="deploy" description="Deploy JAR to Kubernetes">
Matthias Andreas Benkard77138fa2020-04-13 21:06:17 +020089 <exec executable="./mvnw">
Matthias Andreas Benkard95d29a02020-04-24 16:07:49 +020090 <arg value="package"/>
91 <arg value="-Dquarkus.container-image.push=true"/>
Matthias Andreas Benkard77138fa2020-04-13 21:06:17 +020092 </exec>
93 <exec executable="kubectl">
94 <arg value="delete"/>
95 <arg value="pods"/>
96 <arg value="-lapp=mulkcms2"/>
97 </exec>
98 <exec executable="kubectl">
99 <arg value="get"/>
100 <arg value="pods"/>
101 <arg value="-lapp=mulkcms2"/>
102 <arg value="-w"/>
103 </exec>
104 </target>
105
Matthias Andreas Benkard7f4dacc2020-04-13 11:25:19 +0200106 <target name="clean">
107 <exec executable="./mvnw">
108 <arg value="clean"/>
109 </exec>
110 <delete dir="${web-dir}/node_modules"/>
111 <delete dir="${web-dir}/web_modules"/>
112 </target>
113
114</project>