Skip to content

Installing neXtep installer

Christophe Fondacci edited this page Feb 9, 2017 · 1 revision

These steps will guide you through the neXtep installer installation on a target machine. Note that those steps will be the same each time you install the neXtep installer on a target machine.

== Downloading neXtep installer ==

Start by downloading the latest release of the neXtep installer from our [http://www.nextep-softwares.com/index.php/downloads download page] and put the archive on the server you would like to use as the database server of the repository.

  • Unzip the installer in a directory you choose. We will call this directory ''$INSTALLER_DIR''

== Environment configuration ==

=== Setup of environment variables ===

Define a new global system variable ''NXTP_HOME'' which points to ''$INSTALLER_DIR'' and add this variable to your global path, as follows :

''Assuming you want to install the installer under /opt/neXtep/installer on Linux, and c:\neXtep\installer for windows'' {|class="wikitable" !Linux

!Windows
export NXTP_HOME=/opt/neXtep/installer
set NXTP_HOME=c:\neXtep\installer
-
export PATH=$PATH:$NXTP_HOME
set PATH=%PATH%;%NXTP_HOME%
-
''And add the 2 export lines to the .bashrc file of the home directory of system users which will use the installer ''
and / or right click on “Computer” > properties
Click on advanced system settings
Click on Environment variables
Add the ''NXTP_HOME'' variable
Modify the ''PATH'' variable
}

=== Checking Java requirements ===

Check that you have a proper java 1.5 or higher on your machine :

$ java -version
java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02-279-10M3065)
Java HotSpot(TM) 64-Bit Server VM (build 16.3-b01-279, mixed mode)
$

If the Java version is lower than 1.5, you will need to install a Java 1.5 or higher JRE which you can find on [http://www.java.com].

=== Setup of installer properties ===

The installer uses native vendor clients program to deploy deliveries :

  • Oracle : SQL*Plus command line client - ''sqlplus'' executable
  • MySql : Mysql command line client - ''mysql'' executable
  • PostgreSql : psql command line client - ''psql'' executable

With no properties set, the installer will assume that the executables are already accessible from anywhere (that is to say, are already on your global environment path). If not, you will need to specify the location of those executables so that the installer will be able to find them. You can do this by configuring the installer properties file which you will find in :

  • ''$NXTP_HOME/properties/neXtep.properties''

The template which has been installed with the installer should already contains documented properties which you will need to uncomment and adjust to fit to your configuration :

###############################################
# neXtep Installer configuration file         #
#                                             #
###############################################

# Custom definition of vendor-specific client programs
######################################################

# Oracle executables
#admin.nextep.bin.location.sqlplus=/usr/bin/sqlplus
#admin.nextep.bin.location.tnsping=/usr/bin/tnsping

# MySql executables
#admin.nextep.bin.location.mysql=/usr/local/mysql/bin/mysql

# PostgreSql executables
#admin.nextep.bin.location.psql=/usr/local/bin/psql

You will need to uncomment the vendors for which you would like to make deployments and adjust the property values to your local configuration.

== Deployment methods ==

The installer needs a small data model to store deployment information. We call this data model the ''admin'' because it contains administration information. There are 2 ways of telling the installer where to store this information :

  • ''Embedded in the application database'' : with this method the neXtep ''admin'' tables are located next to your application tables in the same database and schema. Note that this method is available with installer release 1.0.4 or higher. '''This is the preferred method'''.

  • ''Externalized in a standalone database schema'' : with this method this information is stored outside of your application database. This method has many drawbacks for maintenance and is mainly here for backward compatibility.

Now we will see how to configure the installer for each methods.

=== Embedded admin database ===

With this method the installation information is stored in your application database schema. This way you can copy / restore / move your application database and all deployment information will be consistent with the application database you are working with.

This method does not require any configuration step at the installer level. Instead, you will need to literally ''enable'' your application database for neXtep installer deployments. This step has to be done the very first time you deploy a delivery to your application database and will create the tables required by the installer.

Enabling your application database for installer support is described in the Deploying database deliveries article in the ''First time installer deployment'' chapter and is a very quick and easy step.

=== Externalized admin database ===

With this method the installation information is stored outside of your application database. Before going further we would like to highlight that this method is discouraged because it has many drawbacks :

  • Copying your application database will not copy installation information so the installer will not recognize installed database components in the database copy
  • It does not allow remote installation where the installed database server is not the local host
  • With some vendors, you can install a same component twice on a same database schema using different user

However, we will continue to support this method as in some very specific circumstances it could be interesting to split installation information from your application database.

This method requires some global configuration steps to tell the installer where the central ''admin'' database could be found. You will have to edit your ''neXtep.properties'' configuration file (located in ''$NXTP_HOME/properties/neXtep.properties''). In this file there are templates for each database vendor which you will need to uncomment and setup. The following example demonstrates the configuration of an admin database located on a MYSQL community server :

#Template for MySQL standalone admin database properties, uncomment and setup
#############################################################################

# User login to the neXtep admin schema
admin.nextep.user=root

# User password to the neXtep admin schema
admin.nextep.password=rootpassword

# Database name of the neXtep admin database
admin.nextep.SID=nextep_admin

# IP address of the neXtep admin database server (should be 127.0.0.1)
admin.nextep.server=127.0.0.1

# Port of the database server
admin.nextep.port=3306

# Vendor providing the neXtep admin database (ORACLE / MYSQL / POSTGRE)
admin.nextep.vendor=MYSQL