These are the steps that you have to follow to create a new dashboard release. As an example, we will do a new release of dashboard-siteview.

Requirements on the Local Machine

  • Complete Dashboard code must be present with all changes committed to the ARDA SVN repository (ask Pablo Saiz for access)
  • Working SVN client (MAC users: svn comes in Xcode tools package, but OS 10.5 has a very old one, which must be updated manually to work with CERN repositories)
  • vi editor
  • Perl
  • Python (should be present for development anyway)

Setting-Up the Environment

export SVNROOT=http://svnweb.cern.ch/guest/dashboard/trunk

It is advisable to use the kinit, otherwise your password has to be retyped several times. It is not a requirement though. Kerberos tools come with OpenAFS installation (they are on SLC by default).

kinit -f yourusername@CERN.CH

Note: just kinit should suffice on CERN machines. If you are prompted for your password and the command gives no errors, check htat you have the ticket:

klist

The output should include krbtgt/CERN.CH@CERN.CH.

Add the directory arda.dashboard/bin to your path (this is where build tools reside). Assuming you are in the root of your dashboard installation (not the module but whole dashboard) - usually /dahsboard-head directory, run:

export PATH=$PATH:`pwd`/arda.dashboard/bin

Check that you have all changes committed (and that svn is working). In the root directory of your dashboard module (ex. arda.dashboard.tier0) run:

svn diff

If it shows differences, commit them first! If diff outputs nothing, not even an empty line, it means that everything is uptodate and synchronized and you can proceed. It is advisable to commit from Eclipse or other development environment, if you want to commit manually, please follow this example:

[pcites01] /home/psaiz/eclipse_svn/arda.dashboard.siteview >  svn commit -m 'Putting the cronjob in the postinstall'
Sending        config/build/post_install.sh
Adding         config/cron
Adding         config/cron/dashbCollectorsSSB.sh
Sending        setup.py
Transmitting file data ...
Committed revision 16333.

Release

Proceed as described in the section 3.2 of the manual. In the root directory of your Dashboard module, for example /home/psaiz/eclipse_svn/arda.dashboard.siteview, run:

[pcites01] /home/psaiz/eclipse_svn/arda.dashboard.siteview > python  setup.py  release XX

where XX stands for the release type, --minor (-m) stands for minor version release, --candidate (-c) for a candidate release, please see ARDA Dashboard Manual for details. The release should proceed automatically and interactively. At some point you will need to use vi to enter release notes (you will edit two files total). The command will display new tag dashboard-siteview-0-10-0_rc26, and should end up with a version descriptor: Released version 0.10.0_rc26.

VI Qucik Guide: Press i to enter to the insert mode, type your text, press esc to go to the command mode and ZZ to save.

Output (for ashboard-siteview package) should look like this:

running release
Current module version is 0.10.0_rc25. Released version will be 0.10.0_rc26.
Continue with release? [Y/N]: Y
Tag will be named "dashboard-siteview-0-10-0_rc26"
Continue [Y/N]: Y
Released version 0.10.0_rc26

Building the Package (SLC 5 Version)

For old SLC4 relases, please proceed as described in the Section 3.3 of the ARDA Dashboard Manual.

In SLC5, the packages are built automatically. The build machine check every 5 minutes for changes, so it could take a couple of minutes until the rpm is ready. If the package is a release candidate, it will be available in the unstable repository. Otherwise, it will be in the stable repository

-- PabloSaiz - 01-Oct-2010 -- TomasKubes - 26-Jan-2011 (transformed to "for dummies" version)

Edit | Attach | Watch | Print version | History: r4 < r3 < r2 < r1 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r4 - 2012-02-02 - PabloSaiz
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    ArdaGrid All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2022 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
or Ideas, requests, problems regarding TWiki? use Discourse or Send feedback