QA/QATaggerSetup

Not logged in - Log In / Register

Revision 2 as of 2011-03-17 21:03:38

Clear message

QA-tagger setup

This page describes how to deploy new code to qa-tagger production instance, how and which cronjobs are configured, how to deploy and to QA new deployments.

qa-tagger deployment

To deploy a new version of qa-tagger on devpad, follow these steps:

cd devel/
make dist

This will download all dependencies and generate a tarball named "qatagger-r<current revno>.tgz".

Copy the tarball over to ~lpqateam/qa-tagger/ on devpad, extract that, and run a make install.

tar xvf qatagger-r000.tgz
cd qatagger-r000
make install

To run properly, qa-tagger uses a set of files named last-revno-<project>-<branch>. They store the last processed revision for each project and branch. In order to "upgrade" qa-tagger, follow these steps:

a) Copy over all the last-revno-* files from the "current" instance to the folder of the new deployment; b) Create a link of the current-milestone file, placed on ~lpqateam/current-milestone:

$ ln -s /home/lpqateam/current-milestone current-milestone

c) Create a link to the place where the logs are kept:

$ ln -s /home/lpqateam/public_html/qa_reports/logs logs

Current production version on devpad is a symlink called "current" pointing to the last version. To QA the new instance, create a new link "qa" pointing to the revision you just setup.

$ ln -s /home/lpqateam/qa-tagger/qatagger-r000 qa

Now you should edit ~lpqateam's crontab commenting the "current" line and uncommenting the "qa" one.

cronjobs

The only crontab job running is the one that triggers the script. There are two entries in the ~lpqateam crontab, one for the "qa" instance and another for a "current" instance. Only thing needed is to switch between them, never forgetting to copy over all the last-revno-* files from the last run to the instance that should be activated.

# qa bug tagging tool 
*/15 * * * * cd $HOME/qa-tagger/current && ./tag-nator-o-matic.sh
#*/15 * * * * cd $HOME/qa-tagger/qa && ./tag-nator-o-matic.sh