DevEnv

Revision 14 as of 2014-10-10 17:30:07

Clear message

ISO Tracker

The ISO Tracker is the tool that the Ubuntu QA team uses to track the results of the testing during milestone testing. To know more about ISO testing, please read the ISO procedures.

Technically, it is a Drupal instance with some in-house developed modules, hosted at the ubuntu-qa-website project in Launchpad.

IconsPage/warning.png As of October 2014, this is a WIP to update this to the current best practices for getting a development environment.

Installing a development environment

The production qatracker runs on durpal7, php5.3 and lucid server.

These instructions are for drupal7 and PHP5 utilizing trusty, though lucid should also work fine.

Getting the dependencies

First, install PHP5 and postgresql (and all the dependencies):

$ sudo apt-get install php5-pgsql postgresql

Now install drupal7 with the default options:

$ sudo apt-get install drupal7

Finally, install apache2.

$ sudo apt-get install apache2

Setting up apache

IconsPage/warning.png NOTE: I don't believe this is needed.

Now, we will make the drupal7 instance point to the Apache root folder:

  1. Delete the symlink at /etc/apache2/conf.d/drupal.conf
  2. Modify /etc/apache2/site-enabled/000-default with.

<VirtualHost *:80>
        ServerAdmin webmaster@localhost

        DocumentRoot /usr/share/drupal7
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
    <Directory /usr/share/drupal7/>
            AllowOverride All
            order allow,deny
            allow from all
    </Directory>
</VirtualHost>
  1. Restart Apache:

$ sudo /etc/init.d/apache2 restart

Setting up the database

IconsPage/warning.png NOTE: These database instructions need cleanup. The setup should be / is easier than detailed.

After installing drupal we are going to drop the default database, create a new postgres user called "qatracker" and a new database called "qatracker" as well:

$ sudo -u postgres -i

postgres$ dropdb drupal7
postgres$ dropuser drupal7

postgres$ createuser qatracker
postgres$ createdb qatracker

postgres$ psql template1

template1=# alter user qatracker with password 'qatracker';
template1=# \q

postgres$ exit

Now, we are going to create a system user called "qatracker" and we are going to reconfigure drupal to use that user and both the user and database created before:

$ sudo adduser qatracker
$ sudo dpkg-reconfigure drupal7

In the drupal7 reconfiguration, when asked by the username, type "qatracker" (password "qatracker") and database name also "qatracker"

Populating the database

Although it is possible to load a copy of the production database, this is not recommended.

Install qatracker modules

QATracker

Get the modules and theme from ubuntu-qa-website and copy them to your drupal7 installation: IconsPage/warning.png This might not be exact.

$ bzr branch lp:ubuntu-qa-website
$ sudo cp -R ubuntu-qa-website/modules/* /usr/share/drupal7/modules/

Adding openid modules

Grab these 2 launchpad branches and copy them to the durpal7 modules folder. Later we will activate and configure them inside the admin interface.

$ bzr branch lp:~ubuntu-qa-website-devel/ubuntu-qa-website/drupal-launchpad-7.x drupal-launchpad
$ bzr branch lp:~ubuntu-drupal-devs/drupal-teams/7.x-dev/ drupal-teams 
$ sudo cp -R drupal-teams drupal-launchpad /usr/share/drupal7/modules

Apply the theme

The production instance uses the antonelli theme. Download and unpack it into /themes/.

$ wget http://ftp.drupal.org/files/projects/antonelli-7.x-1.0-rc1.tar.gz
$ tar xvzf antonelli-7.x-1.0-rc1.tar.gz 
$ sudo cp -R antonelli /usr/share/drupal7/themes/

Playing with your new instance

Restart apache.

$ sudo /etc/init.d/apache2 restart

You should now have a running site..

Launch Drupal Wizard

Navigate to your new drupal site and follow the wizard. Upon completetion you should have access to a basic site, and the admin interface for the tracker.

Once inside you should apply the proper theme, check the openid configuration and setup a site in the tracker admin. Also inside the tracker admin it's recommended you setup some sample products and testcases as sample data.