Personal tools
User menu

ART developers manual

From art-decor.org

Jump to: navigation, search

Creating a new art-decor.war package

Steps to create the art-decor.war package:

  • Download the Community version of Orbeon in zip format from: https://www.orbeon.com/download. For development versions we are running on version Orbeon 2018.1
  • unzip, rename orbeon.war to art-decor.war
unzip orbeon-*.zip
mkdir build
mv ./orbeon*/orbeon.war ./build/art-decor.war
cd build
  • Unzip and move the original art-decor.war
jar xvf art-decor.war
mkdir ../archive
mv art-decor.war ../archive
  • Copy the configuration files from ART-DECOR repository into the folder. For version 4 Orbeon see:
svn export https://sourceforge.net/p/artdecor/code-0/HEAD/tree/branches/stable/orbeon4/

For development versions with Orbeon 2018:

svn export svn://svn.code.sf.net/p/artdecor/code-0/trunk/orbeon2018/
/bin/cp -Rf orbeon2018/WEB-INF/ .
rm -Rf ./orbeon2018

For development versions with Orbeon 2017:

svn export svn://svn.code.sf.net/p/artdecor/code-0/trunk/orbeon2017/
/bin/cp -Rf orbeon2017/WEB-INF/ .
rm -Rf ./orbeon2017
  • Create the war file:
jar -cvf art-decor.war ./*
  • Store the .war file online and link to it from our installation manuals: ART_installation_manual
  • Note when installing newer Orbeon versions: If you are running an Orbeon later than 3.9, also update-xforms by running: art/modules/update-xforms.xquery

Creating new .xar packages

ART-DECOR software is deployed through eXist-db .xar packages with the eXist-db package manager. In order to create these packages, the following files should be present in a subversion software repository:

  • build.xml: contains meta information on the package, and the version number (in major.minor.build form). For packages containing software the minor number is:
    • even for stable releases
    • uneven for development (trunk) releases
  • expath-pkg.xml.tmpl: a generic template that should normally not be edited
  • icon.png: the icon to display in the package manager when installing packages
  • pre-install.xql: pre-installation procedure. This is usually package-specific.
  • post-install.xql: post-installation procedure. This is usually package-specific and can contain permission settings for collections and files.
  • repo.xml.tmpl: information to display in the package manager for this package. This is a generic template that should normally not be edited.

These files can be copied from an existing directory and adapted to this package.

When building .xar packages, a expath-pkg.xml and repo.xml is generated from the .tmpl and build.xml. In subversion there should be a git:ignore so that locally generated expath-pkg.xml and repo.xml are not included in subversion code.

For examples, see: https://sourceforge.net/p/artdecor/code-0/HEAD/tree/branches/stable/art/

For more information on building xars, see: http://exist-db.org/exist/apps/doc/repo.xml

Creating a new version of an existing package

  • Commit your software code, include an (English) subversion comment that describes your changes.
  • build.xml: increment the build number:

Example:

    <property name="project.version" value="0.989.32"/>
  • commit the build.xml to the subversion repository

If the project.version is incremented, this can act as a trigger in the package manager to install this new version of the package.

ART-DECOR repositories

The ART-DECOR repositories are updated daily to include the nightly .xar builds. Locations for the repositories are documented in the installation manual, see Download/software.

ART-DECOR testscenarios

The following testscenarios can be used to test ART-DECOR software:

Specifically for testing the database:

Not yet testable: FHIR_URIs

ART-DECOR building and testing

Documentation for automated building and testing against ART-DECOR is located at:

ART-DECOR testbench

Documentation for running tests against ART-DECOR is located at:

ART-DECOR coding styleguide

The following styleguides are available:

  • This page was last modified on 25 October 2018, at 11:36.
  • This page has been accessed 10,109 times.