Installation instructions

From GTwM

Jump to: navigation, search

This page is part of the agileBase documentation.

This page is intended for technical users to provide help in installing a standalone version of agileBase on a server, as an alternative to using a hosted service. Knowledge of technologies used is assumed. Please run through these instructions in order. There are quite a few steps but each one is simple.

Contents

Prerequisites

agileBase will run on Linux, Windows, OS X or in fact any operating system that supports Java and PostgreSQL.

Prerequisite setup

Build

Download

Build Serverside

cp build_redhat.xml build_custom.xml
ant -f build_custom.xml deploy

This should compile and deploy the required Java files and resources to Tomcat

Build clientside

cp deploy_templates_redhat.xml deploy_templates_custom.xml
cp deploy.sh deploy_custom.sh

This should copy the GUI template files to the correct location in Tomcat and compress them for improved download speed.

Note for debugging, you may want to comment out the compression lines but they're recommended for production use.

Pre-run setup

Databases

CREATE USER gtpb WITH PASSWORD 'gtpb';
create database agilebasedata owner gtpb;
create database agilebaseschema owner gtpb;

The first is the store the user data, i.e. any tables and views created by portalBase. The second is used by portalBase to store metadata about the objects in the database

psql -U gtpb -d agilebasedata -f 1_create_log_tables.sql
psql -U gtpb -d agilebasedata -f 2_gtpb_divide.sql
psql -U gtpb -d agilebasedata -f 3_dbint_report_view_stats.sql

Tomcat

<Host name="localhost" appBase="webapps"
          unpackWARs="true" autoDeploy="true"
          xmlValidation="false" xmlNamespaceAware="false">
       <Context path="/agileBase" docBase="agileBase" debug="0" reloadable="false" crossContext="false" privileged="true">   
        <Resource name="jdbc/agileBaseData" auth="Container" type="javax.sql.DataSource"
              maxActive="50" maxIdle="5" maxWait="10000" username="gtpb" password="gtpb"
              driverClassName="org.postgresql.Driver" url="jdbc:postgresql://localhost/agilebasedata" />
        <Resource name="jdbc/agileBaseSchema" auth="Container" type="javax.sql.DataSource"
              maxActive="10" maxIdle="5" maxWait="10000" username="gtpb" password="gtpb"
              driverClassName="org.postgresql.Driver" url="jdbc:postgresql://localhost/agilebaseschema" />
        <Realm className="org.apache.catalina.realm.DataSourceRealm"
          debug="99" dataSourceName="jdbc/agileBaseSchema"
          localDataSource="true" userTable="appuser"
          userNameCol="username" userCredCol="password"
          userRoleTable="dbint_user_roles" roleNameCol="rolename" />
      </Context>

Setup

You should now be able to run portalBase and perform the further necessary setup within the application itself

tail logs/catalina.out

The portalBase application should be running. To check that it booted up ok, connect to the portalbaseschema database. You should be able to see a host of newly created tables

psql -U gtpb portalbaseschema
\d

Post-run setup

Before logging in, one action is necessary:

psql -U gtpb -d agilebaseschema -f 1_add_user_roles.sql

Now we can log in.

SELECT * from appuser;

Note: you will only ever need to log in with the username 'master' during setup so you don't need to change the password to something more memorable. agileBase allows you to set up one or more companies whose data will be separated from each other - you may only need to set up one, which we'll do now...

SELECT * FROM appuser;

We're there!

Carry on at the general documentation agileBase. You may like to start with Privilege management or Tables and fields under the administration section.

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox