Skip to content
Carsten Stocklöw edited this page Apr 26, 2018 · 2 revisions

Table of Contents

Introduction

This page describes how to create a new release of the universAAL platform and testing it using a pre-configured OSGi execution environment. Please consider the following links:

Prerequisites

The universAAL platform requires:

  • Java 1.8 JDK, please configure also the JAVA_HOME environment variable
 export JAVA_HOME=<PATH TO YOUR JAVA command, e.g. usr/java/jdk1.5.0_07/bin/java>
  • Maven installed, preferably 3.0.0+.
  • OSGi execution environment. We recommend to run the universAAL platform with Apache Karaf and develop by means of our universAAL Studio

Creating a universAAL release

  1. Run script platform/uAAL.pom/src/scripts/PreReleaseBranch.sh with arguments New_Release_Version Next_Development_Version. This will create a branch called prerelease_New_Release_Version that can be used to test the release before the actual release is done (remember to maven-install locally the prerelease branch if you are testing on a different machine). On root repository of platform repo run something like:
    uAAL.pom/src/scripts/PreReleaseBranch.sh 3.4.0 3.4.1-SNAPSHOT
  2. Once the checks are cleared run platform/uAAL.pom/src/scripts/ReleaseDo.sh with the argument New_Release_Version. This script will checkout the latest version of the prerelease branch (created in the previous step), check for building errors, deploy to maven repository, tag the release and remove the banch, and lastly push all the changes (deletion and tag) to github. On root repository of platform repo run something like:
    uAAL.pom/src/scripts/ReleaseDo.sh 3.4.0

Testing universAAL release

Steps to check a release on a Unix box are as follows.

Starting up Karaf

Get the Karaf distro (e.g. karaf4uAAL2.2.9) from https://github.com/universAAL/distro.karaf. This is our pre-configured universAAL distro based on Apache Karaf

  $ export KARAF_DEBUG=off

This will switch off the Karaf debug configuration, if you want to debug Karaf at runtime please do not type the previous command

  $ cd support-release
  $ bin/karaf clean

The above launches the Karaf shell and shows a text-mode universAAL logo and some messages.

Now, wait until support-release/data/log/karaf.log stops growing (about one minute). Then, at the karaf prompt, issue

  $karaf@uAAL>features:install uAAL-SingleNode.Development

This is for installing the main universAAL features (http://karaf.apache.org/manual/latest-2.3.x/users-guide/provisioning.html)

Again, wait about a minute until various log files under support-release/data/log/ stop growing. When that happens, you should have seen a graphical box popping up which asks for Username and Password.

In the Karaf shell you should see this:

    universAAL Runtime Platform
  
  Hit '<tab>' for a list of available commands
  and '[cmd] --help' for help on a specific command.
  Hit '<ctrl-d>' or 'osgi:shutdown' to shutdown Karaf.
  
  karaf@uAAL>features:install uAAL-SingleNode.Development
  
  -------------------------------------------------------------------
  GMS: address=3ca419ea-ec9f-4664-b82f-4290803459c1, cluster=mw.modules.aalspace.osgi8888, physical address=146.48.81.102:50343
  -------------------------------------------------------------------
  
  -------------------------------------------------------------------
  GMS: address=3ca419ea-ec9f-4664-b82f-4290803459c1, cluster=mw.bus.ui.osgi8888, physical address=146.48.81.102:49194
  -------------------------------------------------------------------
  
  -------------------------------------------------------------------
  GMS: address=3ca419ea-ec9f-4664-b82f-4290803459c1, cluster=mw.brokers.control.osgi8888, physical address=146.48.81.102:38452
  -------------------------------------------------------------------
  
  -------------------------------------------------------------------
  GMS: address=3ca419ea-ec9f-4664-b82f-4290803459c1, cluster=mw.bus.context.osgi8888, physical address=146.48.81.102:47131
  -------------------------------------------------------------------
  
  -------------------------------------------------------------------
  GMS: address=3ca419ea-ec9f-4664-b82f-4290803459c1, cluster=mw.bus.service.osgi8888, physical address=146.48.81.102:56639
  -------------------------------------------------------------------
  karaf@uAAL>

So far so good. You have successfully installed the core universAAL features in particular your Karaf distro did the following steps:

  • downloading all the OSGi bundles needed by the uAAL-SingleNode.Development features
  • discovering already existing uSpaces matching with the default uSpace configuration. The default configuration file is placed here:
 support-release/etc/Home.space
  • creating a new uSpace and creating the required IPv4-based communication channels.
You can double-check that the universAAL feature is correctly installed by issuing the following command on the karaf console
 karaf@uAAL>features:list
 ...
 [installed  ] [3.2.0          ] uAAL-SingleNode.Development              <description of the feature...>
 ...

Testing the uAAL-UI.DM and uAAL-Security features

Write anything in the login dialog that has appeared, both in the Username and Password fields, then click the Login button. If a search box and an Exit button appear, the test is successful.

Press Exit to get rid of the window and background.

Testing the uAAL-MW feature

 karaf@uAAL>universaal:peers
  Found: 1 Peers
  ----------------------------------------
  * Peer ID: 903cc554-87fc-4220-8ca0-b286fc0d00a0 - Peer Role: COORDINATOR

If the output above appears (note the asterisk before "Peer ID": it is important) the test is successful.

Checking that the features are installed

Middleware (responsible Stefano Lenzi @kismet ):

 karaf@uAAL>features:list -i | grep runtime
 [installed  ] [3.2.0 ] uAAL-MW                  universAAL-3.2.0                   The universAAL runtime based on the Middleware 2.0

Context (responsible Álvaro Fides Valero @Alfiva ):

 karaf@uAAL>features:list -i | grep Entrepot
 [installed  ] [3.2.0 ] uAAL-ctxt.CHe            universAAL-Context                 The Context History Entrepot.

Ontologies (responsible Álvaro Fides Valero @Alfiva ):

 karaf@uAAL>features:list -i | grep 'Profile Ont'
 [installed  ] [3.2.0 ] uAAL-Ont.Profile         universAAL-Ontologies              The Profile Ontology

Remote interoperability (responsible Álvaro Fides Valero @Alfiva ):

 karaf@uAAL>features:list -i | grep uAAL-RI.Service
 [installed  ] [3.2.0 ] uAAL-RI.Service.Gateway  universAAL-RemoteInteroperability  uSpace to\from web services.

User interface (responsible Alejandro Medrano @amedreanogil )

 karaf@uAAL>features:list -i | grep UI.DM
 [installed  ] [3.2.0 ] uAAL-UI.DM               universAAL-UI                      The UI Dialog Manager

In the line output by each of the above commands watch out for

  • the "[installed]" label at the beginning
  • the version tag, which must correspond to the intended release version.

Checking version of bundles

 karaf@uAAL>osgi:list | grep 'universAAL '
 [  51] [Active     ] [            ] [   50] universAAL Thirdparty jslp library (OSGi) (3.2.0)
 [  56] [Active     ] [            ] [   50] universAAL Middleware XSD Schemas (3.2.0)
 [  57] [Active     ] [            ] [   50] universAAL Middleware Container Interfaces (OSGi) (3.2.0)
 [  58] [Active     ] [            ] [   50] universAAL Middleware Interfaces (OSGi) (3.2.0)
 ...

Version numbers in parenthesis at the end of each row should all be the same.

Support:

Found a problem?
  • Report suggestions, missing, outdated or wrong documentation creating an Issue with "documentation" tag

Clone this wiki locally