forked from liferay/liferay-portal
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build-common-ivy.xml
114 lines (102 loc) · 2.71 KB
/
build-common-ivy.xml
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
<?xml version="1.0"?>
<!DOCTYPE project>
<project name="build-common-ivy" xmlns:antelope="antlib:ise.antelope.tasks">
<macrodef name="mirrors-get">
<attribute name="dest" />
<attribute default="false" name="ignoreerrors" />
<attribute name="src" />
<attribute default="true" name="trylocalnetwork" />
<attribute default="false" name="verbose" />
<sequential>
<local name="src" />
<property name="src" value="@{src}" />
<propertyregex
input="${src}"
override="true"
property="src"
regexp="http://mirrors/"
replace="http://mirrors.lax.liferay.com/"
/>
<propertyregex
input="${src}"
override="true"
property="mirrors.cache.artifact.subdir"
regexp="https?://(.+/).+"
replace="\1"
/>
<property name="mirrors.cache.artifact.dir" value="${mirrors.cache.dir}/${mirrors.cache.artifact.subdir}" />
<propertyregex
input="${src}"
override="true"
property="mirrors.cache.artifact.file.name"
regexp=".+/(.+)"
replace="\1"
/>
<if>
<not>
<available file="${mirrors.cache.artifact.dir}/${mirrors.cache.artifact.file.name}" />
</not>
<then>
<mkdir dir="${mirrors.cache.artifact.dir}" />
<propertyregex
input="${src}"
override="true"
property="mirrors.src"
regexp="http://"
replace="http://mirrors.lax.liferay.com/"
/>
<if>
<equals arg1="@{trylocalnetwork}" arg2="true" />
<then>
<trycatch>
<try>
<get
dest="${mirrors.cache.artifact.dir}"
ignoreerrors="@{ignoreerrors}"
src="${mirrors.src}"
verbose="@{verbose}"
/>
</try>
<catch>
<get
dest="${mirrors.cache.artifact.dir}"
ignoreerrors="@{ignoreerrors}"
src="${src}"
verbose="@{verbose}"
/>
</catch>
</trycatch>
</then>
<else>
<get
dest="${mirrors.cache.artifact.dir}"
ignoreerrors="@{ignoreerrors}"
src="${src}"
verbose="@{verbose}"
/>
</else>
</if>
</then>
</if>
<if>
<available file="@{dest}" type="dir" />
<then>
<copy
file="${mirrors.cache.artifact.dir}/${mirrors.cache.artifact.file.name}"
tofile="@{dest}/${mirrors.cache.artifact.file.name}"
/>
</then>
<else>
<copy
file="${mirrors.cache.artifact.dir}/${mirrors.cache.artifact.file.name}"
tofile="@{dest}"
/>
</else>
</if>
<var name="mirrors.cache.artifact.dir" unset="true" />
<var name="mirrors.cache.artifact.file.name" unset="true" />
<var name="mirrors.cache.artifact.subdir" unset="true" />
<var name="mirrors.src" unset="true" />
</sequential>
</macrodef>
</project>