-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathbuild.xml
More file actions
78 lines (78 loc) · 3.52 KB
/
build.xml
File metadata and controls
78 lines (78 loc) · 3.52 KB
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
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project basedir="." default="deploy" name="Data">
<property name="DSATool.location" value="../DSATool"/>
<property name="PluginName" value="Data"/>
<property name="Includes" value="data/**"/>
<target name="deploy" description="Deploys data to DSATool data directory">
<copy todir="${DSATool.location}">
<fileset dir="." includes="${Includes}"/>
</copy>
<copy file="release/previous/release-info.json" tofile="${DSATool.location}/update/${PluginName}.json"/>
</target>
<target name="update" description="Creates a zip file for release" depends="deploy">
<delete dir="release/current"/>
<mkdir dir="release/current"/>
<copy todir="release/current" includeEmptyDirs="false">
<fileset dir="." includes="${Includes}">
<different targetdir="release/previous"/>
</fileset>
</copy>
<fileset id="deleted" dir="release/previous" includes="${Includes}">
<present present="srconly" targetdir="."/>
</fileset>
<resourcecount property="hasDeleted" refId="deleted" when="greater" count="0"/>
<echo file="release/current/deleted.txt">${toString:deleted}</echo>
<delete>
<fileset file="release/current/deleted.txt">
<size value="3" when="less"/>
</fileset>
</delete>
<tstamp>
<format property="releaseDate" pattern="yyyy-MM-dd_HH-mm" />
</tstamp>
<loadfile srcfile="release/previous/release-info.json" property="previousReleaseDate">
<filterchain>
<linecontains>
<contains value="releaseDate"/>
</linecontains>
<tokenfilter>
<replaceregex pattern=".*: ."/>
<replaceregex pattern=".,"/>
</tokenfilter>
<striplinebreaks/>
</filterchain>
</loadfile>
<copy file="release/release-info.template" tofile="release/current/release-info.json"/>
<replace file="release/current/release-info.json" token="@releaseDate@" value="${releaseDate}"/>
<replace file="release/current/release-info.json" token="@previousReleaseDate@" value="${previousReleaseDate}"/>
<copy file="release/current/release-info.json" tofile="release/current/update/${PluginName}.json"/>
<copy file="release/current/release-info.json" tofile="${DSATool.location}/update/${PluginName}.json"/>
<copy file="release/update-info.template" tofile="release/update-info.json" overwrite="true"/>
<replace file="release/update-info.json" token="@releaseDate@" value="${releaseDate}"/>
<java jar="${DSATool.location}/update/SignatureTool.jar" fork="true">
<arg value="sign"/>
<arg path="release/current"/>
<arg path="release/${PluginName}_${releaseDate}.zip"/>
<arg path="release/private.key"/>
<arg value="SunEC"/>
<arg value="EC"/>
<arg value="SHA512withECDSA"/>
</java>
<delete dir="release/previous"/>
<copy todir="release/previous" includeEmptyDirs="false">
<fileset dir="." includes="${Includes}"/>
</copy>
<copy file="release/current/release-info.json" todir="release/previous"/>
<delete dir="release/current"/>
</target>
<target name="release" description="Creates a full release as well as an update" depends="update">
<mkdir dir="update"/>
<copy file="release/release-info.template" tofile="update/${PluginName}.json"/>
<replace file="update/${PluginName}.json" token="@releaseDate@" value="${releaseDate}"/>
<replace file="update/${PluginName}.json" token="@previousReleaseDate@" value="${previousReleaseDate}"/>
<zip destfile="release/${PluginName}_${releaseDate}_full.zip">
<fileset dir="." includes="${Includes},update/${PluginName}.json"/>
</zip>
<delete dir="update"/>
</target>
</project>