Difference between revisions of "ART-DECOR building and testing"
Line 1: | Line 1: | ||
− | + | =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 | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | unzip orbeon-*.zip | ||
+ | mkdir build | ||
+ | mv ./orbeon*/orbeon.war ./build/art-decor.war | ||
+ | cd build | ||
+ | </syntaxhighlight> | ||
+ | * Unzip and move the original art-decor.war | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | jar xvf art-decor.war | ||
+ | mkdir ../archive | ||
+ | mv art-decor.war ../archive | ||
+ | </syntaxhighlight> | ||
+ | * Copy the configuration files from ART-DECOR repository into the folder. For version 4 Orbeon see: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | svn export https://sourceforge.net/p/artdecor/code-0/HEAD/tree/branches/stable/orbeon4/ | ||
+ | </syntaxhighlight> | ||
+ | For development versions with Orbeon 2018: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | svn export svn://svn.code.sf.net/p/artdecor/code-0/trunk/orbeon2018/ | ||
+ | /bin/cp -Rf orbeon2018/WEB-INF/ . | ||
+ | rm -Rf ./orbeon2018 | ||
+ | </syntaxhighlight> | ||
+ | For development versions with Orbeon 2017: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | svn export svn://svn.code.sf.net/p/artdecor/code-0/trunk/orbeon2017/ | ||
+ | /bin/cp -Rf orbeon2017/WEB-INF/ . | ||
+ | rm -Rf ./orbeon2017 | ||
+ | </syntaxhighlight> | ||
+ | * Create the war file: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | jar -cvf art-decor.war ./* | ||
+ | </syntaxhighlight> | ||
+ | * 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: |
− | + | <syntaxhighlight lang="xml"> | |
− | + | <property name="project.version" value="0.989.32"/> | |
+ | </syntaxhighlight> | ||
+ | * 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= |
− | ==== | + | ==Production code repository== |
− | + | For the current production version (ART-DECOR version 2), see: https://bitbucket.org/art-decor/art-decor-backend/src/exist-db-2/ | |
− | ==== | + | ==Production package repository== |
− | + | All ART-DECOR modules are exposed though an eXist-db repository for easy installation. Check modules [https://art-decor.org/repo/list.php here]. | |
− | == | + | ==ART-DECOR Next generation code repository== |
− | + | From ART-DECOR version 3 and onwards: | |
+ | '''Currently under development''': a new front-end developed in vue. For more details on vue for developers, see [[ART_developers_vue]] | ||
− | == | + | * Vue-client front-end: (should be used in combination with Back-end database) |
− | + | https://bitbucket.org/art-decor/art-decor/ | |
− | [[ | + | * Back-end database: |
+ | https://bitbucket.org/art-decor/art-decor-backend/src/exist-db-5/ | ||
+ | * Dutch terminology demo in vue: | ||
+ | https://bitbucket.org/art-decor/vue-client/ | ||
+ | |||
+ | ==ART-DECOR Next generation package repository== | ||
+ | From ART-DECOR version 3 and onwards: | ||
+ | Under construction. | ||
+ | |||
+ | =ART-DECOR testscenarios= | ||
+ | The following testscenarios can be used to test ART-DECOR software: | ||
+ | * [[testscenario test]]: Test ART-DECOR information standards | ||
+ | * [[testscenario test author]]: Test ART-DECOR information standards from an author perspective | ||
+ | * [[testscenario xistest]]: Test ART-DECOR xis | ||
+ | * [[testscenario terminology]]: Test ART-DECOR terminology | ||
+ | * [[testscenario ada]]: Test ART-DECOR ada | ||
+ | Specifically for testing the database: | ||
+ | * [[testscenario URIs]]: Test ART-DECOR URIs | ||
+ | * [[testscenario Terminology URIs]]: Test ART-DECOR Terminology URIs | ||
+ | Not yet testable: | ||
+ | [[FHIR_URIs]] | ||
+ | |||
+ | =ART-DECOR building and testing= | ||
+ | Documentation for automated building and testing against ART-DECOR is located at: | ||
+ | * [[ART-DECOR building and testing version 2]] (up until ART-DECOR version 2) | ||
+ | * [[ART-DECOR building and testing]] (from ART-DECOR version 3) | ||
+ | |||
+ | =ART-DECOR testbench= | ||
+ | Documentation for running tests against ART-DECOR is located at: | ||
+ | * [[eXist-db testing]] | ||
+ | |||
+ | =ART-DECOR coding styleguide= | ||
+ | The following styleguides are available: | ||
+ | * [[eXist-db coding styleguide]] |
Revision as of 18:10, 6 February 2021
Contents
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
Production code repository
For the current production version (ART-DECOR version 2), see: https://bitbucket.org/art-decor/art-decor-backend/src/exist-db-2/
Production package repository
All ART-DECOR modules are exposed though an eXist-db repository for easy installation. Check modules here.
ART-DECOR Next generation code repository
From ART-DECOR version 3 and onwards: Currently under development: a new front-end developed in vue. For more details on vue for developers, see ART_developers_vue
- Vue-client front-end: (should be used in combination with Back-end database)
https://bitbucket.org/art-decor/art-decor/
- Back-end database:
https://bitbucket.org/art-decor/art-decor-backend/src/exist-db-5/
- Dutch terminology demo in vue:
https://bitbucket.org/art-decor/vue-client/
ART-DECOR Next generation package repository
From ART-DECOR version 3 and onwards: Under construction.
ART-DECOR testscenarios
The following testscenarios can be used to test ART-DECOR software:
- testscenario test: Test ART-DECOR information standards
- testscenario test author: Test ART-DECOR information standards from an author perspective
- testscenario xistest: Test ART-DECOR xis
- testscenario terminology: Test ART-DECOR terminology
- testscenario ada: Test ART-DECOR ada
Specifically for testing the database:
- testscenario URIs: Test ART-DECOR URIs
- testscenario Terminology URIs: Test ART-DECOR Terminology URIs
Not yet testable: FHIR_URIs
ART-DECOR building and testing
Documentation for automated building and testing against ART-DECOR is located at:
- ART-DECOR building and testing version 2 (up until ART-DECOR version 2)
- ART-DECOR building and testing (from ART-DECOR version 3)
ART-DECOR testbench
Documentation for running tests against ART-DECOR is located at:
ART-DECOR coding styleguide
The following styleguides are available: