[ticket/513] Add build script
B3P-513
This commit is contained in:
3
.gitattributes
vendored
3
.gitattributes
vendored
@@ -8,5 +8,4 @@ phpunit.xml.* export-ignore
|
||||
README.md export-ignore
|
||||
git-tools/ export-ignore
|
||||
.coveralls.yml export-ignore
|
||||
composer.phar export-ignore
|
||||
composer.lock export-ignore
|
||||
build.xml export-ignore
|
||||
|
||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1,3 +1,4 @@
|
||||
/.idea/*
|
||||
/tests/test_config.php
|
||||
/vendor/
|
||||
/build/
|
||||
|
||||
112
build.xml
Normal file
112
build.xml
Normal file
@@ -0,0 +1,112 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project name="Extension Builder" description="Builds an extension.zip from a git repository" default="all">
|
||||
<property name="vendor-name" value="board3" />
|
||||
<property name="extension-name" value="portal" />
|
||||
<!--
|
||||
Only set this to "true" if you have dependencies in the composer.json,
|
||||
otherwise use "false".
|
||||
-->
|
||||
<property name="has-dependencies" value="true" />
|
||||
|
||||
<target name="clean-package">
|
||||
<!--
|
||||
Remove some unnecessary files/directories
|
||||
${dir}/ is the folder of your extension, e.g. ext/nickvergessen/newspage/
|
||||
-->
|
||||
<delete dir="${dir}/tests" />
|
||||
<delete dir="${dir}/travis" />
|
||||
<delete dir="${dir}/vendor/nickvergessen/phpbb-tool-trimmessage/src/Nickvergessen/TrimMessage/Tests" />
|
||||
<delete dir="${dir}/vendor/nickvergessen/phpbb-tool-trimmessage/tests" />
|
||||
|
||||
<delete file="${dir}/.gitignore" />
|
||||
<delete file="${dir}/.gitattributes" />
|
||||
<delete file="${dir}/.travis.yml" />
|
||||
<delete file="${dir}/build.xml" />
|
||||
<delete file="${dir}/composer.lock" />
|
||||
<delete file="${dir}/composer.phar" />
|
||||
<delete file="${dir}/phpunit.xml.dist" />
|
||||
<delete file="${dir}/README.md" />
|
||||
<delete file="${dir}/vendor/nickvergessen/phpbb-tool-trimmessage/composer.lock" />
|
||||
<delete file="${dir}/vendor/nickvergessen/phpbb-tool-trimmessage/composer.phar" />
|
||||
<delete file="${dir}/vendor/nickvergessen/phpbb-tool-trimmessage/phpunit.xml" />
|
||||
<delete file="${dir}/vendor/nickvergessen/phpbb-tool-trimmessage/README.md" />
|
||||
<delete file="${dir}/vendor/nickvergessen/phpbb-tool-trimmessage/.gitignore" />
|
||||
<delete file="${dir}/vendor/nickvergessen/phpbb-tool-trimmessage/.travis.yml" />
|
||||
</target>
|
||||
|
||||
<!--
|
||||
TODO: DO NOT EDIT BELOW THIS LINE!!!!
|
||||
-->
|
||||
|
||||
<property name="version" value="HEAD" override="true" />
|
||||
<property name="build-directory" value="build" override="true" />
|
||||
<property name="package-directory" value="${build-directory}/package/${vendor-name}/${extension-name}" />
|
||||
|
||||
<!-- These are the main targets which you will probably want to use -->
|
||||
<target name="all" depends="prepare-structure,package" />
|
||||
|
||||
<!--
|
||||
Clean up the build directory
|
||||
-->
|
||||
<target name="clean">
|
||||
<delete dir="${build-directory}" />
|
||||
</target>
|
||||
|
||||
<!--
|
||||
Recreate the necessary folders
|
||||
-->
|
||||
<target name="prepare-structure" depends="clean">
|
||||
<mkdir dir="${build-directory}" />
|
||||
<mkdir dir="${build-directory}/checkout" />
|
||||
<mkdir dir="${build-directory}/package" />
|
||||
<mkdir dir="${build-directory}/package/${vendor-name}" />
|
||||
<mkdir dir="${build-directory}/package/${vendor-name}/${extension-name}" />
|
||||
<mkdir dir="${build-directory}/upload" />
|
||||
</target>
|
||||
|
||||
<!--
|
||||
The real packaging
|
||||
-->
|
||||
<target name="package">
|
||||
<echo msg="Extracting ${version}" />
|
||||
|
||||
<phingcall target="git-checkout">
|
||||
<property name="archive-version" value="${version}" />
|
||||
</phingcall>
|
||||
|
||||
<if>
|
||||
<equals arg1="${has-dependencies}" arg2="1" />
|
||||
<then>
|
||||
<exec dir="${package-directory}" command="php composer.phar install --no-dev"
|
||||
checkreturn="true" />
|
||||
</then>
|
||||
</if>
|
||||
|
||||
<phingcall target="clean-package">
|
||||
<property name="dir" value="${package-directory}" />
|
||||
</phingcall>
|
||||
|
||||
<phingcall target="wrap-package">
|
||||
<property name="destination-filename" value="${build-directory}/upload/${vendor-name}_${extension-name}-${version}" />
|
||||
</phingcall>
|
||||
</target>
|
||||
|
||||
<!--
|
||||
Checkout a given version and install/clean the dependencies
|
||||
-->
|
||||
<target name="git-checkout">
|
||||
<echo msg="Getting archive for ${archive-version}" />
|
||||
|
||||
<exec command="git archive ${archive-version} --format zip --output ${build-directory}/checkout/${archive-version}.zip"
|
||||
checkreturn="true" />
|
||||
<unzip file="${build-directory}/checkout/${archive-version}.zip" todir="${package-directory}" />
|
||||
</target>
|
||||
|
||||
<!--
|
||||
Create the zip and tar ball
|
||||
-->
|
||||
<target name="wrap-package">
|
||||
<echo msg="Creating archives (${vendor-name}/${extension-name} ${version})" />
|
||||
<zip basedir="${build-directory}/package/" destfile="${destination-filename}.zip" />
|
||||
</target>
|
||||
</project>
|
||||
BIN
composer.phar
BIN
composer.phar
Binary file not shown.
Reference in New Issue
Block a user