Bull Service & Solutions NovaForge NovaForge WebOS Installation Guide Emmanuel Rias
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 procedures. 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 2/15
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 6.13.2. NovaForge V1 (GForge) patch... 15 Page 3/15
1. What third-party softwares are installed 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 administrator to configure some properties of NovaForge WebOS (typically some paths or url). Page 4/15
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 describe 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 NovaForge 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 directory you want to checkout the products and use SVN checkout option: Page 5/15
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 6/15
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. 3.3. Use the ant script for the installation Page 7/15
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 depending 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 directory 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 In the cmd windows wait the following log: Page 8/15
If you see this log the server is started and you can use NovaForge using the url http://localhost:8008/portal 4. Automatic Desinstallation instructions 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 9/15
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: 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 10/15
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 Delivery/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 11/15
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 instructions 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 12/15
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 instructions. Page 13/15
Update the line bind-address=127.0.0.1 in the file /etc/mysql/my.cnf with bind-address= dnshost-name Create a novaforgedb database and the novaforge user with the script create_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 environment variables NOVAFORGE_HOME, CATALINA_BASE, CATALINA_HOME and HUDSON_HOME are correctly set. Copy the NovaForge war files into $CATALINA_BASE/webapps. Copy the NovaForge jar files into $CATALINA_BASE/lib and ensure that you find: Page 14/15
derby-10.1.3.1.jar 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). Copy the php files you find in Delivery/Patch/Mantis/webos in this directory Page 15/15