Skip to content
This repository has been archived by the owner on Dec 23, 2020. It is now read-only.
/ ezpublishbuilder Public archive

A set of php scripts and other files to help in the "build process" of eZ Publish Legacy tarballs and deliverables

License

Notifications You must be signed in to change notification settings

gggeek/ezpublishbuilder

Repository files navigation

Introduction
============

1. What is the eZ Publish Builder?
----------------------------------

A set of php scripts and other files to help in the "build process" of eZ Publish Community Project
tarballs and deliverables
- it is based on the Pake tool;
- it is not a "complete" tool, as it relies on external repositories and build servers
  to do the heavy lifting.

The build process carried out by this tool consists broadly speaking of the following steps:
- getting a copy of the latest version of the source code from the git repositories
- creating a changelog file and adding it to the sources
- invoking the external build process
- produce different packaged formats from the tarballs generated by the external build process
- produce html documentation of the php API using multiple documentation-generators tools

2. License
----------

This software is licensed under the GNU General Public License v2.0 . The
complete license agreement is included in the LICENSE file. For more information
or questions please contact info@ez.no

3. Requirements
---------------

- the php cli
- Pake version 1.7.4 or later.
  You can get it either from https://github.com/indeyets/pake/wiki
  or as part of the setup process of this tool, running composer (latter option is recommended)
- command line tools: git, tar, zip, patch
- access to the eZ Publish build server (Jenkins) and eZ Publish and CI github repositories
  (with write access)
- Doxygen 1.8.1.2 or later (for generating the API documentation)
- Phpdoc 2.1.0 or later (for generating the API documentation) - installed automatically via composer
- Sami 1.0 or later (for generating the API documentation) - installed automatically via composer
- access to the pubsvn.ez.no server via ssh/sftp (which generally means an ssh key)

4. Installing
-------------

Read the INSTALL file to get started and for usage instructions


Directory structure
===================

Let's call ROOT_DIR the directory where you will be running the build script. ::

ROOT_DIR/
 |___classes/       php classes with the bulk of the business logic for this tool
 |___doc/           more documentation, such as changelogs, todos and known bugs
 |___vendor/        where composer will install required php libraries
 |___INSTALL        installation instructions
 |___LICENSE        license file
 |___README         this file
 |___composer.json  configuration file for composer
 |
 |___build
 |   |___source/    a copy of the eZP sources will be downloaded here during the build
 |   `___release/   tarballs produced by the Jenkins build will be downloaded here
 |   `___apidocs/   where the generated documentation is stored, in a subfolder for each different tool used
 |
 |___dist/          tarballs produced by the build will be made available here
 |
 |___pake/
 |   |___
 |   `___
 |
 `___resources/
     |___doxyfile_master config.   file used for documentation generation via doxygen
     |___doxygen_piwik_footer.html template file used as footer for documentation generation via doxygen
     |___samicfg_master.php        file used for documentation generation via sami
     `___wpifiles/                 template files used to the generate the wpi package

FAQ
===

- Can a standalone copy of pake be used with the pakefile instead of the bundled one?
    Yes: just use a different command line: ::
    php pake.php build ...

- Can I download a complete zip of the tool instead of doing the bootstrap?
    Yes. Come back later for a list of urls to use ;-)

About

A set of php scripts and other files to help in the "build process" of eZ Publish Legacy tarballs and deliverables

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published