Upgrade and Testing Instructions for iHRIS 4.3

From IHRIS Wiki

iHRIS 4.3 has replaced the outdated MDB2 module with PDO.

You may need to update custom sites if you directly access the database object. Here are some guidelines for modifying existing MDB2 code to use PDO. If you have further questions please contact the google group. See Migrating from MDB2 to PDO.

You can run the 4.3 development version of iHRIS for testing. You will need to check out the latest version from launchpad using bazaar (bzr).

Install Supporting Software

iHRIS 4.3 will now run on Ubuntu 16.04. You can also test out iHRIS 4.3 on Ubuntu 14.04. If you already have an existing site running on Ubuntu 14.04 you should only need to change the PHP MySQL driver by running this: <source lang="bash"> sudo apt install php5-mysqlnd </source>

For complete supporting software installation:

While iHRIS should run fine on incremental releases of Ubuntu we recommend using LTS versions of Ubuntu. Please reach out on the google group if you have issues installing on other versions of Ubuntu.

Install Bazaar (bzr)

First you need to install the bzr package it if isn't already installed. Run the following in a terminal to install bazaar.

<source lang="bash"> sudo apt install bzr bzrtools </source>

Download Source Packages (4.3)

Now you need to download all the source packages for iHRIS. Some will be required and some will depend on what you want to run. First create a directory in /var/lib/iHRIS/lib for the development packages. For example, for 4.3 we can call it 4.3-dev. If you don't already have a /var/lib/iHRIS/lib directory you will need to create it and make sure you have permissions to modify files there.

<source lang="bash"> cd /var/lib/iHRIS/lib mkdir 4.3-dev </source>

To download any of the application packages you will want to be sure to be in the development directory you just created. <source lang="bash"> cd /var/lib/iHRIS/lib/4.3-dev </source>

Download Base Packages

First you download the base packages. This includes I2CE, textlayout and iHRIS Common.

<source lang="bash"> bzr branch lp:i2ce/4.3 I2CE bzr branch lp:textlayout/4.3 textlayout bzr branch lp:ihris-common/4.3 ihris-common </source>

Download Application Packages

iHRIS Manage

<source lang="bash"> bzr branch lp:ihris-manage/4.3 ihris-manage </source>

iHRIS Qualify

<source lang="bash"> bzr branch lp:ihris-qualify/4.3 ihris-qualify </source>

iHRIS Train

<source lang="bash"> bzr branch lp:ihris-train/4.3 ihris-train </source>

Updating Packages

When updates are made, you can change into any of the previously created directories and pull down those updates with bzr pull. For example, for I2CE you can do this:

<source lang="bash"> cd /var/lib/iHRIS/lib/4.3-dev/I2CE bzr pull </source>

Configuring a Site

Once you've downloaded the packages for your application, you will need to configure a site. You can use a site you've created or a demo site which you can find in the particular application you're working on in sites/Demo.

Create a Database

First you'll need to create a database and user for your site. Run this command from the terminal and then enter the password for the root database user you created when installing MySQL. <source lang="bash"> mysql -u root -p </source> Then at the mysql> prompt type these commands replacing DATABASE with your database and PASSWORD with the password you'd like to use for this connection. <source lang="mysql"> create database DATABASE; grant all privileges on DATABASE.* to ihris@localhost identified by 'PASSWORD'; exit </source>

Configure Site

Next you'll need to configure the config.values.php file for your site. Run these commands after you've changed into the site pages directory. For example if you're working with the iHRIS Manage Demo site you would run: cd /var/lib/iHRIS/lib/4.3-dev/ihris-manage/sites/Demo/pages.

<source lang="bash"> mkdir local/ cp config.values.php local/ cp htaccess.TEMPLATE .htaccess gedit local/config.values.php </source>

Now find the configuration variables in the file that opens and change to the appropriate values. Again for this example using iHRIS Manage, but replace with appropriate values for the application and site you're using.

Variable Name Value
$i2ce_site_i2ce_path /var/lib/iHRIS/lib/4.3-dev/I2CE
$i2ce_site_dsn mysql://ihris:PASWORD@localhost/DATABASE
$i2ce_site_module_config var/lib/iHRIS/lib/4.3-dev/ihris-manage/sites/Demo/iHRIS-Manage-Demo.xml

Now edit the .htaccess file to set the RewriteBase: <source lang="bash"> gedit .htaccess </source>

Change the RewriteBase line to be the path in the web server for your site. <source lang="apache">

   RewriteBase /manage-demo


Set Up the Site in the Web Server

The last step is to create a symbolic link in the web root directory for your site. For our example we'll use /manage-demo. For Ubuntu 14.04 and later the web root is /var/www/html. Prior to 14.04 it is just /var/www. Be sure to use the correct directory in the following steps.

<source lang="bash"> cd /var/www/html sudo ln -s /var/lib/iHRIS/lib/4.3-dev/ihris-manage/sites/Demo/pages manage-demo </source>