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)