-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.xml
140 lines (122 loc) · 4.92 KB
/
build.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
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
<?xml version="1.0" encoding="UTF-8"?>
<project name="ChurchDirectory" basedir="../" default="build">
<php expression="include('libraries/vendor/autoload.php')"/>
<property name="test" value="/Users/bcordis/Sites/j3" override="true"/>
<property name="project.name" value="Joomla Church Directory"/>
<property name="testadmincomp"
value="/Users/bcordis/Sites/j3/administrator/components/com_churchdirectory"
override="true"/>
<!-- set global properties for this build -->
<property name="dist" value="dist"/>
<property name="src" value="${project.basedir}" override="true"/>
<!-- Joomla version to run the unit tests against -->
<property name="joomla.version" value="3.3.6"/>
<property name="src.test" value="${src}/tests/test"/>
<property name="dest.test" value="${src}/admin/views/test"/>
<target name="init" description="Create artifact directories">
<mkdir dir="${src}/build/packages"/>
<mkdir dir="${src}/build/reports"/>
<mkdir dir="${src}/docs"/>
</target>
<!-- List of all files that are packaged and distributed -->
<fileset dir="${src}" id="distributed_files">
<include name="admin/**/*"/>
<include name="libraries/tcpdf/**/*"/>
<include name="media/**/*"/>
<include name="modules/**/*"/>
<include name="plugins/**/*"/>
<include name="site/**/*"/>
<include name="templates/**/*"/>
<exclude name=".git"/>
</fileset>
<fileset dir="./site" id="component_files">
<include name="**"/>
</fileset>
<fileset dir="${src}" id="allfiles">
<exclude name=".git/**"/>
<include name="admin/**"/>
<include name="site/**"/>
<include name="media/**"/>
<include name="modules/**"/>
<include name="plugins/**"/>
<exclude name="libraries/tcpdf/examples/**" />
<include name="libraries/tcpdf/**"/>
<include name="churchdirectory.xml"/>
<include name="churchdirectory.script.php"/>
<include name="changelog.php"/>
<include name="copyright.txt"/>
<include name="LICENSE.txt"/>
</fileset>
<!-- Copy Target -->
<target name="copy_to_test" description="copy target">
<echo>Copying files from dev to test...
</echo>
<copy file="${src}/admin/churchdirectory.php"
todir="${testadmincomp}"/>
<echo msg="Copying site files if needed..."/>
<copy todir="${test}/components/com_churchdirectory">
<fileset refid="component_files"/>
</copy>
<copy file="${src}/churchdirectory.xml" todir="${testadmincomp}"/>
</target>
<!-- ============================================ -->
<!-- (DEFAULT) Target: info -->
<!-- ============================================ -->
<target name="info">
<echo msg="Build for Joomla Bible Study, Please modify location as you need."/>
</target>
<!-- Measure the size of the project -->
<target name="size" depends="init" description="Measures the size of the project">
<phploc reportType="txt" reportName="project-size" reportDirectory="${src}/build/reports">
<fileset refid="distributed_files"/>
</phploc>
</target>
<!-- Creates API documentation -->
<target name="phpdoc" depends="init" description="Generate project API documentation">
<phpdoc2 title="${project.name} API" destdir="${src}/docs" template="responsive">
<fileset refid="distributed_files"/>
</phpdoc2>
</target>
<target name="reset">
<echo msg="Reset back to Dev State"/>
<delete file="${src}/admin/churchdirectory.xml"/>
<delete file="${src}/admin/churchdirectory.script.php"/>
<symlink target="${src}/churchdirectory.xml" link="admin/churchdirectory.xml"/>
<symlink target="${src}/churchdirectory.script.php" link="admin/churchdirectory.script.php"/>
</target>
<target name="clean">
<echo message="Cleaning directories"/>
<delete>
<fileset dir="${src}/build/packages/">
<include name="*.*"/>
</fileset>
</delete>
</target>
<!-- ============================================ -->
<!-- (DEFAULT) Target: build -->
<!-- ============================================ -->
<target name="build">
<echo message="Building package"/>
<propertyprompt propertyName="version" defaultValue="dev" promptText="Enter version you are releasing."/>
<mkdir dir="${src}/build/packages"/>
<delete file="${src}/admin/churchdirectory.xml"/>
<delete file="${src}/admin/churchdirectory.script.php"/>
<delete>
<fileset dir="${src}/build/packages/">
<include name="*.*"/>
</fileset>
</delete>
<zip destfile="${src}/build/packages/com_churchdirectory-${version}.zip">
<fileset refid="allfiles"/>
</zip>
<symlink target="${src}/churchdirectory.xml" link="admin/churchdirectory.xml"/>
<symlink target="${src}/churchdirectory.script.php" link="admin/churchdirectory.script.php"/>
</target>
<!-- ============================================ -->
<!-- (DEFAULT) Target: dist -->
<!-- ============================================ -->
<target name="dist" depends="reset,build">
<echo msg="Creating archive..."/>
<echo msg="Files copied and compressed in build directory OK!"/>
</target>
</project>