NovaForge
NovaForge WebOS
Installation Guide
Solutions
Emmanuel Rias
Page 2/15
Ce document est la propriété de Bull S.A.S, il ne peut être communiqué à des tiers qu'avec l'autorisation de Bull. © Bull S.A.S 2006
Version Date Write by Content
0.1.0 28/11/2007 Emmanuel RIAS Document initialization
0.1.1 06/12/2007 Cédric TRAN-XUAN Added information about the install pro-cedures.
1.0.0 03/04/2008 Emmanuel Rias Don’t use ldap and postgres 1.0.1 19/04/2008 Emmanuel Rias Use Ant installer
1.0.2 07/08/2008 Guillaume Morin Added reload navigation section 1.0.3 10/23/2008 Emmanuel Rias Update to support last functionalities 1.0.4 12/19/2008 Emmanuel Rias Update to the OW2 link
Page 3/15
Ce document est la propriété de Bull S.A.S, il ne peut être communiqué à des tiers qu'avec l'autorisation de Bull. © Bull S.A.S 2006
SOMMAIRE
1. What third-party softwares are installed with NovaForge? ... 4
2. NovaForge installation directories structure: ... 4
3. Automatic Installation instructions ... 5
3.1. Prerequisites ... 5
3.2. Checkout the novaforge deliveries products... 5
3.3. Use the ant script for the installation... 7
3.4. Use NovaForge... 8
4. Automatic Desinstallation instructions ... 9
5. Automatic update instructions ... 9
5.1. Reload navigations properties... 10
6. Manual Installation instructions ... 11
6.1. JDK1.5 installation... 11
6.2. NovaForge-Tomcat ... 11
6.2.1. NovaForge Tomcat instance installation ... 11
6.3. Mod_JK installation ... 11 6.4. Ant installation ... 11 6.5. Maven2 installation... 11 6.6. Mantis installation... 12 6.6.1. Installation: ... 12 6.6.2. Mantis database:... 12
6.6.3. MySQL access problem: ... 12
6.6.4. SMTP server configuration:... 12
6.7. Archiva ... 13
6.8. Hudson ... 13
6.9. MySQL installation ... 13
6.10. Salomé installation... 14
6.11. NovaForge installation (GForge) ... 14
6.11.1. Installation: ... 14
6.11.2. GForge database:... 14
6.12. NovaForge WebOS ... 14
6.13. Patch Mantis And NovaForge (GForge) ... 15
6.13.1. Mantis patch ... 15
Page 4/15
Ce document est la propriété de Bull S.A.S, il ne peut être communiqué à des tiers qu'avec l'autorisation de Bull. © Bull S.A.S 2006
1. What third-party softwares are
in-stalled with NovaForge?
Installation of NovaForge WebOS brings:
1) JDK1.5 (http://java.sun.com/javase/downloads/index_jdk5.jsp) 2) Tomcat 6.0.14 (http://tomcat.apache.org/download-60.cgi) 3) Mod_JK 4) Ant 1.7.0 (http://ant.apache.org/bindownload.cgi) 5) Maven 2.0.8 (http://maven.apache.org/download.html) 6) Mantis 1.1.1 (http://www.mantisbt.org/download.php) 7) Archiva 1.1.1 (http://maven.apache.org/archiva/download.html) 8) Hudson (http://java-source.net/open-source/build-systems/hudson) 9) Salomé (provided by Bull SAS)
10) MySQL 5.0.51 (http://www.mysql.com/) 11) Subversion 1.4.6
12) Polarion 3.1.0 13) Dokuwiki
14) “NovaForge version GForge” (provided by Bull SAS) (optional) 15) NovaForge WebOS (provided by Bull SAS)
2. NovaForge installation directories
structure:
The structure of the installation directories is the following one:
• /home/novaforge is the NovaForge home directory. It will be represented with
the environment variable NOVAFORGE_HOME.
• $NOVAFORGE_HOME/databases is the root directory of mysql database.
• $NOVAFORGE_HOME/engines is the root directory of installed softwares: Ant,
Maven and Tomcat.
• $NOVAFORGE_HOME/data is the root directory for the data. This directory will
hold the Archiva repositories and the Hudson jobs.
• $NOVAFORGE_HOME/novaforge-tomcat is the directory where NovaForge
WebOS will be installed. It is also represented with environment variable
CATALINA_BASE since it is an instance of Tomcat, while CATALINA_HOME will
refer to the installation of Tomcat
($NOVAFORGE_HOME/engines/apache/tomcat/6.0.14)
• $NOVAFORGE_HOME/cfg is the directory where you will find the configuration file
of NovaForge WebOS: novaforge.properties. This file enables the adminis-trator to configure some properties of NovaForge WebOS (typically some paths or url).
Page 5/15
Ce document est la propriété de Bull S.A.S, il ne peut être communiqué à des tiers qu'avec l'autorisation de Bull. © Bull S.A.S 2006
3. Automatic Installation instructions
The installation is automatised based on ant script. Novaforge can be installed on Windows or on Linux environment.
3.1. Prerequisites
It is necessary to have a JDK 1.5 installed on your PC or on the server. If it is not the case you will find a JDK after the checkout of the products in the NovaForge JDK/1.5 directory. The second prerequisite is to have the NovaForge CD or a SVN client as Tortoise. We de-scribe in the next chapter how to checkout the novaforge products with the tortoise client.
3.2. Checkout the novaforge deliveries products
All the products are on the novaforge subversion server. Firstly you can install the client svn product on your PC. You can use Tortoise provided in the delivery root directory on the No-vaForge subversion. With Tortoise you will be able to check out the novaforge products. To install Tortoise, download it on the NovaForgeWebOS project or directly from internet
http://downloads.sourceforge.net/tortoisesvn/TortoiseSVN-1.4.8.12137-win32-svn-1.4.6.msi?download
You can install the product following the instructions.
To checkout the novaforge products use your windows explorer and right click in the direc-tory you want to checkout the products and use SVN checkout option:
Page 6/15
Ce document est la propriété de Bull S.A.S, il ne peut être communiqué à des tiers qu'avec l'autorisation de Bull. © Bull S.A.S 2006
Use the url svn://svn.forge.objectweb.org/svnroot/novaforge/delivery/tags/2.2.6
The server will ask a username and password. You can use the user anonymous without password.
Page 7/15
Ce document est la propriété de Bull S.A.S, il ne peut être communiqué à des tiers qu'avec l'autorisation de Bull. © Bull S.A.S 2006
When you click on OK all the products will be checkout in your directory.
If there is a problem during the checkout, thanks to right click in your checkout directory and select SVN Update.
Page 8/15
Ce document est la propriété de Bull S.A.S, il ne peut être communiqué à des tiers qu'avec l'autorisation de Bull. © Bull S.A.S 2006
The ant script is in the directory “novaforgeinstallation”. You have to go in this directory and rename the file build.properties.windows or build.properties.unix (choose the right one de-pending on your platform) into build.properties file.
You can modify the default configuration in the build.properties file.
By default Mysql will use the port 3361, apache will use the port 8008, tomcat server will use the ports 8080 and 8009.
In the build.properties file you have to change the property:
1) novaforge.delivery=C:/Temp/novaforge/delivery with the right direc-tory where you have checkout the products.
2) novaforge.home= C:/Temp/novaforge with the directory where you want the installer installs NovaForge.
NovaForge will be installed in this directory.
3) novaforge.java.home=D:/JDK/jdk1.5.0_15 to the directory where your JDK 1.5 is installed.
Don’t put any quote or double quote even you have a space in the name. When you have configured these properties you can use the ant.exe file in the directory Delivery/Ant/apache-ant-1.7.0/bin.
It is necessary to have a JDK 1.5 installed and the JAVA_HOME environment variable set to this installation.
Start a cmd windows and go to the “novaforgeinstallation” directory. Execute the ant.exe with %Checkoutdirectory%\Delivery\Ant\apache-ant-1.7.0\bin\ant with the target
- install_novaforge_windows if you are on windows platform - install_novaforge_linux if you are on Linux platform
All the products will be installed automatically. When the installation is finished you can start NovaForge.
In your novaforge home directory start novaforge using the file novaforgeStart.bat or novaforgeStart.sh
You can stop NovaForge using novaforgeStop.bat or novaforgeStop.sh
3.4. Use NovaForge
Page 9/15
Ce document est la propriété de Bull S.A.S, il ne peut être communiqué à des tiers qu'avec l'autorisation de Bull. © Bull S.A.S 2006
If you see this log the server is started and you can use NovaForge using the url http://localhost:8008/portal
4. Automatic Desinstallation
instruc-tions
Be careful : All your NOVAFORGE_HOME will be deleted !!!
Start a cmd windows and go to the “novaforgeinstallation” directory (in your checkout directory).
Execute the ant.exe with %Checkoutdirectory%\Delivery\Ant\apache-ant-1.7.0\bin\ant with the target
- uninstall_novaforge_windows if you are on windows environment - uninstall_novaforge_linux if you are on linux environment
Be careful to not have some links into the directories having to be deleted.
5. Automatic update instructions
Start a cmd windows and go to the “novaforgeinstallation” directory.
Change the parameter novaforge.version to the version you want to install. Execute the ant.exe with %Checkoutdirectory%\Delivery\Ant\apache-ant-1.7.0\bin\ant with the target
- update_novaforge_windows if you are on windows environment - update_novaforge_linux if you are on linux environment
Page 10/15
Ce document est la propriété de Bull S.A.S, il ne peut être communiqué à des tiers qu'avec l'autorisation de Bull. © Bull S.A.S 2006
5.1. Reload navigations properties
Some navigations properties are initialized during the first launch. Update phase reloads these properties and it will be activated during each server start. To stop this action you must open “webapps/portal/WEB-INF/conf/portalportal-configuration.xml” file and comment the following block:
<object-param>
<name>navigation.reload</name>
<description>description</description>
<object type="org.novaforge.portal.exo.navigation.listeners.ReloadableNavigation">
<field name="navigations">
<collection type="java.util.ArrayList">
<!----comment this section to stop reloading
<value><string>platform/guest</string></value>
<value><string>platform/administrator</string></value>
<value><string>platform/collaborator</string></value>
<value><string>platform/customer</string></value>
<value><string>platform/developer</string></value>
<value><string>platform/functionalmanager</string></value>
<value><string>platform/integrator</string></value>
<value><string>platform/manager</string></value>
<value><string>platform/member</string></value>
<value><string>platform/owner</string></value>
<value><string>platform/projectdirector</string></value>
<value><string>platform/projectmanager</string></value>
<value><string>platform/qualitymanager</string></value>
<value><string>platform/support</string></value>
<value><string>platform/technicalmanager</string></value>
<value><string>platform/validator</string></value> -->
</collection>
</field>
<field name="bundleid">
<collection type="java.util.ArrayList">
<value><string>locale.navigation.group.platform.guest_fr</string></value>
<value><string>locale.navigation.group.platform.guest_en</string></value>
</collection>
</field>
<field name="cleanup" >
<!-- set false to stop the clean up -->
<boolean>false</boolean>
</field>
</object>
</object-param>
And you must set to false the cleanup variable. If you have some errors during the next restarting, return to basic configuration, the server will return to a correct state.
Page 11/15
Ce document est la propriété de Bull S.A.S, il ne peut être communiqué à des tiers qu'avec l'autorisation de Bull. © Bull S.A.S 2006
6. Manual Installation instructions
6.1. JDK1.5 installation
Download a version of the JDK 1.5 (http://java.sun.com/javase/downloads/index_jdk5.jsp) and follow the instructions to install this software.
You can use the JDK provided by the novaforge CD.
6.2. NovaForge-Tomcat
6.2.1.
NovaForge Tomcat instance installation
$NOVAFORGE_HOME/novaforge-tomcat will be the location of NovaForge WebOs. This
path will be also referenced as CATALINA_BASE.
In $NOVAFORGE_HOME/novaforge-tomcat copy the NovaForge server in Deliv-ery/NovaForgeTomcat/novaforge-tomcat
Later on, we will come back to this directory and add other files and directories
6.3. Mod_JK installation
Copy mod_jk.so in the apache modules directory. Add the line
LoadModule jk_module %APACHE_MODULE_DIR%/mod_jk.so In the apache configuration file (httpd.conf).
Put the novaforge.conf file in the apache conf.d directory.
Copy the workers.properties file in /home/novaforge/Apache directory.
6.4. Ant installation
Extract from Delivery/Ant/1.7.0 the archive into /home/novaforge/engines/apache/ant
directory
6.5. Maven2 installation
Extract from Delivery/Maven/2.0.4 the archive into/home/novaforge/engines/apache/maven2/ directory.
Page 12/15
Ce document est la propriété de Bull S.A.S, il ne peut être communiqué à des tiers qu'avec l'autorisation de Bull. © Bull S.A.S 2006
Modify the settings.xml of the conf directory to set the local repository to
/home/novaforge/data/apache/maven/repository/local
<localRepository>/home/novaforge/data/apache/maven/repository/local</localRepository>
Create this directory on the file system.
Copy the nova forge template component in the local repository.
6.6. Mantis installation
6.6.1.
Installation:
Download an RPM of Mantis (http://www.mantisbt.org/download.php) and follow the instruc-tions to install this software.
You can check the admin password in /etc/mantis
Create a directory novaforge under /usr/share/mantis/www and copy the php files from /home/novaforge/install/mantis to /usr/share/mantis/www/novaforge It is mandatory to be able to access mantis with /mantis URL, so don’t forget to add the mantis.conf in the apache configuration.
6.6.2.
Mantis database:
The name of the database is bugtracker. The user name is mantis.
The password is declared in /etc/mantis/config_inc.php.
6.6.3.
MySQL access problem:
mysql_connect problem can be solved changing the root password by this line: update user set Password = OLD_PASSWORD(‘password’) where User=’root’
6.6.4.
SMTP server configuration:
Add in the config_inc.php the following attributes: $g_phpMailer_method= 2;
$g_smtp_host = 'smtp_server'; $g_smtp_username='username';
Page 13/15
Ce document est la propriété de Bull S.A.S, il ne peut être communiqué à des tiers qu'avec l'autorisation de Bull. © Bull S.A.S 2006
6.7. Archiva
Extract the archive from Delivery/archiva direxctory into $CATALINA_BASE/archiva
Copy the file archiva.xml and archiva.xml.sql in
$CATALINA_BASE/conf/localhost
Edit these two files and replace ${catalina.home} with {catalina.base}: Context path="/archiva" docBase="${catalina.base}/archiva/archiva-webapp-1.0" reloadable='true'
Edit $CATALINA_BASE/conf/Catalina/localhost/archiva.xml and sets the url of the database to /home/novaforge/data/apache/archiva/database (use / characters and not \).
Ensure that the property ARCHIVA_REPOSITORIES_LOCATION of novaforge.properties
has also the value /home/novaforge/data/apache/archiva/repositories (use / characters and not \).
Copy the plexus.properties file into archiva WEB-INF directory.
Update in WEB-INF/classes/log4j.xml {appserver.base} in {catalina.base}
The first time you connect to NovaForge WebOS, • open the Archiva portlet
• login as admin (password admin1)
• add the role Global Observer for the user guest
6.8. Hudson
Extract the zip file from Delivery/Hudson directory into $NOVA-FORGE_HOME/webapps/hudson.
Set the system variable HUDSON_HOME before to start the server: the Hudson configuration will be stored in this directory. (/home/novaforge/data/hudson)
Configure the system Hudson environment with the graphical interface: http://host:port/hudson/configure
You have to configure the JDK, Maven, Ant and so on ….
6.9. MySQL installation
Download MySQL 5.0.X or later (http://www.mysql.com/) and follow the installation instruc-tions.
Page 14/15
Ce document est la propriété de Bull S.A.S, il ne peut être communiqué à des tiers qu'avec l'autorisation de Bull. © Bull S.A.S 2006
Update the line bind-address=127.0.0.1 in the file /etc/mysql/my.cnf with bind-address=’dns-host-name’
Create a ‘novaforgedb’ database and the novaforge user with the script cre-ate_novaforge_bdd.sql
6.10.
Salomé installation
Go to /home/novaforge/install/salome: you should have the
create_salome_bdd_withoutref.sql file.
Connect to mysql with the “mysql” command. On the prompt execute:
mysql> source ./create_salome_bdd_withoutref.sql The name of the database is Salome.
The username is Salome. The password is Salome.
Update the DB_Connexion.properties file in the WEB-INF/cfg directory.
Update the Mantis configuration in salome/plugins/mantis/cfg with the right host configuration
6.11.
NovaForge installation (GForge)
6.11.1. Installation:
Download an RPM of NovaForge (GForge) and follow the installation instructions. Check the admin password in /etc/gforge/.admin.
Create a directory novaforge under /usr/share/gforge/www and copy PHP files from to
/home/novaforge/install/novagforge to /usr/share/gforge/www/novaforge
6.11.2. GForge database:
Check the admin password in /etc/gforge/.init and assign to the property variable
GFORGE_SGBD_PASSWORD of novaforge.properties this value.
6.12.
NovaForge WebOS
Copy cfg directory from Delivery/NovaForge into NOVAFORGE_HOME. Copy the novaforge.sh file into $CATALINA_BASE/bin.
Opens the script $CATALINA_BASE/bin/novaforge.sh and ensures that the environ-ment variables NOVAFORGE_HOME, CATALINA_BASE, CATALINA_HOME and HUDSON_HOME are correctly set.
Copy the NovaForge war files into $CATALINA_BASE/webapps.
Page 15/15
Ce document est la propriété de Bull S.A.S, il ne peut être communiqué à des tiers qu'avec l'autorisation de Bull. © Bull S.A.S 2006
• velocity-dep-1.4.jar
If you use the ldap feature, check that you will also have: • exo.core.component.organization.ldap-2.0.3.jar • exo.core.component.ldap-2.0.3.jar
Copy the shell script novaforge to /etc/init.d/
Start the service with the command /etc/init.d/novaforge start. Similarly, to stop the service, run /etc/init.d/novaforge stop.
To check the service starts correctly, you can look at the log files that are located in
$CATALINA_BASE/logs.
6.13.
Patch Mantis And NovaForge (GForge)
6.13.1. Mantis patch
It is necessary to patch your mantis. To do that you have to create a directory gforge (this directory is already created if you have the NovaForgeV1 with Mantis installation) in the root mantis directory php files (surely in /usr/share/mantis/www).
Copy the php files you find in Delivery/Patch/Mantis/gforge in this directory
6.13.2. NovaForge V1 (GForge) patch
It is necessary to patch your NovaForgeV1 (Gforge) environment. To do that you have to create a directory webos in the root gforge directory php files (surely in /usr/share/gforge/www).