Files
icehrm/build.xml
Thilina Pituwala b1df0037db License updated to GPLv3
🧲 New features
Custom user role permissions
Employee edit form updated
Employee daily task list
Attendance and employee distribution charts on dashboard
Improvements to company structure and company assets module
Improved tables for displaying data in several modules
Faster data loading (specially for employee module)
Initials based profile pictures
Re-designed login page
Re-designed user profile page
Improvements to filtering
New REST endpoints for employee qualifications

🐛 Bug fixes
Fixed, issue with managers being able to create performance reviews for employees who are not their direct reports
Fixed, issues related to using full profile image instead of using smaller version of profile image
Changing third gender to other
Improvements and fixes for internal frontend data caching
2020-10-31 19:02:37 +01:00

319 lines
10 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<project name="icehrm" default="build">
<!-- By default, we assume all tools to be on the $PATH -->
<property name="toolsdir" value="${basedir}/tools/"/>
<property name="destination" value="${basedir}/build/app"/>
<property name="testdir" value="${basedir}/build/test"/>
<property name="origin" value="${basedir}"/>
<property environment="env"/>
<property name="env.appname" value="icehrm"/>
<property name="env.Version" value="dev"/>
<property name="installpath" value="/var/www/apps.gamonoid.com/icehrm-open-core"/>
<target name="build-ci"
depends="prepare,lint,phpcs-ci"
description=""/>
<target name="build"
depends="prepare,lint,phpcs,copyapp,release,install"
description=""/>
<target name="buildlocal"
depends="prepare,lint,phpcs,copyapp"
description=""/>
<target name="releaseapp"
depends="prepare,lint,copyapp,release"
description=""/>
<target name="clean"
unless="clean.done"
description="Cleanup build artifacts">
<delete dir="${basedir}/build/api"/>
<delete dir="${basedir}/build/coverage"/>
<delete dir="${basedir}/build/logs"/>
<delete dir="${basedir}/build/pdepend"/>
<delete dir="${basedir}/build/phpdox"/>
<delete dir="${basedir}/build/test"/>
<delete dir="${basedir}/build/app"/>
<delete dir="${basedir}/build/release"/>
<property name="clean.done" value="true"/>
</target>
<target name="prepare"
unless="prepare.done"
depends="clean"
description="Prepare for build">
<mkdir dir="${basedir}/build/api"/>
<mkdir dir="${basedir}/build/coverage"/>
<mkdir dir="${basedir}/build/logs"/>
<mkdir dir="${basedir}/build/pdepend"/>
<mkdir dir="${basedir}/build/phpdox"/>
<mkdir dir="${basedir}/build/test"/>
<mkdir dir="${basedir}/build/app"/>
<mkdir dir="${basedir}/build/release/data"/>
<mkdir dir="${basedir}/build/release/data/${env.appname}_${env.Version}"/>
<property name="prepare.done" value="true"/>
</target>
<target name="lint" description="Perform syntax check of sourcecode files">
<apply executable="php" failonerror="true">
<arg value="-l" />
<fileset dir="${basedir}/core/src">
<include name="**/*.php" />
<exclude name="composer/**"/>
<modified />
</fileset>
<fileset dir="${basedir}/test">
<include name="**/*.php" />
<modified />
</fileset>
</apply>
</target>
<target name="phploc"
description="Measure project size using PHPLOC and print human readable output. Intended for usage on the command line.">
<exec executable="${toolsdir}phploc">
<arg value="--count-tests" />
<arg path="${basedir}/core/src" />
</exec>
</target>
<target name="phploc-ci"
depends="prepare"
description="Measure project size using PHPLOC and log result in CSV and XML format. Intended for usage within a continuous integration environment.">
<exec executable="${toolsdir}phploc">
<arg value="--count-tests" />
<arg value="--log-csv" />
<arg path="${basedir}/build/logs/phploc.csv" />
<arg value="--log-xml" />
<arg path="${basedir}/build/logs/phploc.xml" />
<arg path="${basedir}/core/src" />
</exec>
</target>
<target name="pdepend"
depends="prepare"
description="Calculate software metrics using PHP_Depend and log result in XML format. Intended for usage within a continuous integration environment.">
<exec executable="${toolsdir}pdepend">
<arg value="--jdepend-xml=${basedir}/build/logs/jdepend.xml" />
<arg value="--jdepend-chart=${basedir}/build/pdepend/dependencies.svg" />
<arg value="--overview-pyramid=${basedir}/build/pdepend/overview-pyramid.svg" />
<arg path="${basedir}/core/src" />
</exec>
</target>
<target name="phpmd"
description="Perform project mess detection using PHPMD and print human readable output. Intended for usage on the command line before committing.">
<exec executable="${toolsdir}phpmd">
<arg path="${basedir}/core/src" />
<arg value="text" />
<arg path="${basedir}/build/phpmd.xml" />
</exec>
</target>
<target name="phpmd-ci"
depends="prepare"
description="Perform project mess detection using PHPMD and log result in XML format. Intended for usage within a continuous integration environment.">
<exec executable="${toolsdir}phpmd">
<arg path="${basedir}/core/src" />
<arg value="xml" />
<arg path="${basedir}/build/phpmd.xml" />
<arg value="--reportfile" />
<arg path="${basedir}/build/logs/pmd.xml" />
</exec>
</target>
<target name="phpcs"
description="Find coding standard violations using PHP_CodeSniffer and print human readable output. Intended for usage on the command line before committing.">
<exec executable="${toolsdir}phpcs">
<arg value="--standard=PSR2" />
<arg value="--extensions=php" />
<arg value="--ignore=autoload.php" />
<arg path="${basedir}/core/src" />
</exec>
</target>
<target name="phpcs-ci"
depends="prepare"
description="Find coding standard violations using PHP_CodeSniffer and log result in XML format. Intended for usage within a continuous integration environment.">
<exec executable="${toolsdir}phpcs" failonerror="true">
<arg value="--report=checkstyle" />
<arg value="--report-file=${basedir}/build/logs/checkstyle.xml" />
<arg value="--standard=PSR2" />
<arg value="--extensions=php" />
<arg value="--ignore=autoload.php" />
<arg path="${basedir}/core/src" />
</exec>
</target>
<target name="phpcpd"
description="Find duplicate code using PHPCPD and print human readable output. Intended for usage on the command line before committing.">
<exec executable="${toolsdir}phpcpd">
<arg path="${basedir}/core/src" />
</exec>
</target>
<target name="phpcpd-ci"
depends="prepare"
description="Find duplicate code using PHPCPD and log result in XML format. Intended for usage within a continuous integration environment.">
<exec executable="${toolsdir}phpcpd">
<arg value="--log-pmd" />
<arg path="${basedir}/build/logs/pmd-cpd.xml" />
<arg path="${basedir}/core/src" />
</exec>
</target>
<target name="phpunit"
depends="prepare"
description="Run unit tests with PHPUnit">
<exec executable="${toolsdir}phpunit" failonerror="true">
<arg value="--configuration"/>
<arg path="${basedir}/phpunit.xml"/>
</exec>
</target>
<target name="phpunit-sa"
description="Run unit tests with PHPUnit">
<exec executable="${toolsdir}phpunit" failonerror="true">
<arg value="--configuration"/>
<arg path="${basedir}/phpunit.xml"/>
</exec>
</target>
<target name="phpdox"
depends=""
description="Generate project documentation using phpDox">
<exec executable="${toolsdir}phpdox"/>
</target>
<target name="copyjs"
description="Copy generated assets">
<delete includeemptydirs="true">
<fileset dir="${destination}">
<include name="web/admin/dist/**"/>
<include name="web/modules/dist/**"/>
<include name="web/dist/**"/>
</fileset>
</delete>
<copy todir="${destination}" overwrite="true">
<fileset dir="${origin}">
<include name="web/admin/dist/**"/>
<include name="web/modules/dist/**"/>
<include name="web/dist/**"/>
</fileset>
</copy>
</target>
<target name="copyapp"
description="Copy generated files to QA app">
<delete includeemptydirs="true">
<fileset dir="${destination}">
<include name="**/*"/>
</fileset>
</delete>
<copy todir="${destination}" overwrite="true">
<fileset dir="${origin}">
<include name="**/*"/>
<exclude name="node_modules/**"/>
<exclude name="web/node_modules/**"/>
<exclude name="web/admin/**"/>
<exclude name="web/modules/**"/>
<exclude name="web/api/**"/>
<exclude name="web/api-common/**"/>
<exclude name="web/components/**"/>
<exclude name="web/themecss/**"/>
<exclude name="web/themejs/**"/>
</fileset>
</copy>
<delete includeemptydirs="true">
<fileset dir="${destination}">
<include name=".vagrant/**"/>
<include name=".idea/**"/>
<include name="Vagrantfile"/>
<include name="test/**"/>
<include name="tools/**"/>
<include name="robo/**"/>
<include name="deployment/**"/>
<include name="build/**"/>
<include name="build.xml"/>
<include name="lib/composer/composer.phar"/>
<include name="keys.tags.pub"/>
<include name="keys.dev.pub"/>
<include name="cache.properties"/>
<include name="phpdox.xml"/>
<include name="phpunit.xml"/>
<include name="web/admin/dist/*.map"/>
<include name="web/modules/dist/*.map"/>
<include name="web/dist/*.map"/>
</fileset>
</delete>
<copy todir="${testdir}" overwrite="true">
<fileset dir="${basedir}/test">
<include name="**/*"/>
</fileset>
</copy>
</target>
<target name="install"
depends="copyapp"
description="">
<delete includeemptydirs="true" failonerror="false">
<fileset dir="${installpath}">
<include name="**/*"/>
</fileset>
</delete>
<mkdir dir="${installpath}"/>
<copy todir="${installpath}" overwrite="true">
<fileset dir="${destination}">
<include name="**/*"/>
</fileset>
</copy>
<delete includeemptydirs="true" failonerror="false">
<fileset dir="${installpath}/app">
<include name="**/*"/>
</fileset>
</delete>
</target>
<target name="release"
depends="copyapp"
description="Create a release">
<copy todir="${basedir}/build/release/data/${env.appname}_${env.Version}">
<fileset dir="${destination}">
<include name="**/*"/>
<exclude name="test/**"/>
</fileset>
</copy>
<zip destfile="${basedir}/build/release/${env.appname}_${env.Version}.zip"
basedir="${basedir}/build/release/data"
/>
<tar destfile="${basedir}/build/release/${env.appname}_${env.Version}.tar"
basedir="${basedir}/build/release/data"
/>
<gzip destfile="${basedir}/build/release/${env.appname}_${env.Version}.tar.gz" src="${basedir}/build/release/${env.appname}_${env.Version}.tar"/>
</target>
</project>