Skip to content

chrisphpgarcia/tao-build

 
 

Repository files navigation

TAO build process

Build the package

  • Download package-tao from github
  • Switch to develop branch
  • Retrieve all extensions and dependencies using composer
  • Create a zip package

Quality checks

  • Generate dependency report with other software metrics using PHP_Depend
  • Look for several potential problems within the source PHP Mess Detector
  • Find duplicate code using PHPCPD
  • Measuring the size and analyzing the structure of the project using PHPLOC
  • Tokenises PHP, JavaScript and CSS files and detects violations of a defined set of coding standards using PHP_CodeSniffer. Ruleset considered are defined in conf/phpcs.xml

Unit Test

  • Install the platform with all extensions
  • Run Unit test according to test configration stored in conf/phpunit_mysql.xml
  • Generate code coverage report

Howto setup Jenkins

  • Create your jenkins project
  • Create the file build.properties
    release.version=nightly
    release.source.name=TAO_${release.version}_build
    
    db.driver=
    db.host=
    db.name=
    db.pass=
    db.user=

    module.mode=
    module.name=
    module.namespace=
    module.url=

    user.login=
    user.pass=
  • Git clone this repository
    [email protected]:oat-sa/package-build.git
  • Setup phing tasks
  • Setup PMD analisys
    build/logs/pmd-*.xml
  • Setup phploc report
    A - Lines of code
    Lines of Code
    build/logs/phploc.csv
    
    B - Structures
    Count
    build/logs/phploc.csv
    
    C - Testing
    Count
    build/logs/phploc.csv
    
    D - Types of Classes
    Count
    build/logs/phploc.csv
    
    E - Types of Methods
    Count
    build/logs/phploc.csv
    
    F - Types of Constants
    Count
    build/logs/phploc.csv
  • Setup PHPCS report
    build/logs/checkstyle.xml
  • Setup PHPCPD reports
    build/logs/pmd-cpd.xml
  • Setup Code Coverage
   **/*-test-suite.xml
  • Deploy zip file on taotesting.com

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 52.3%
  • Shell 47.7%