Release procedures for frontier-related software

The Frontier system has many releasable pieces to it, and here are the procedures for each piece for developers to use.

This is what is on this page:

Client

To be moved here, but for now at http://frontier.cern.ch/dist/FrontierProjectNotes.html

Servlet

To be moved here, but for now at http://frontier.cern.ch/dist/FrontierProjectNotes.html

Tarballs

frontier-squid tarball

  1. Update the SRC and RELEASE variables in squid/Makefile
  2. Set an environment variable for the new version, for example:
    FSQUIDVER=4.4-1
    
  3. If it is a new upstream squid version, do these steps
    SQUIDVER="`echo $FSQUIDVER|sed 's/-.*//'`"
    cd ~/src/frontier/tarballs/frontier-squid4/distrib
    git rm squid-*.tar.gz*
    rm -rf squid-*
    wget http://www.squid-cache.org/Versions/v4/squid-$SQUIDVER.tar.gz
    wget http://www.squid-cache.org/Versions/v4/squid-$SQUIDVER.tar.gz.asc
    git add squid-$SQUIDVER.tar.gz*
    gpg --verify squid-$SQUIDVER.tar.gz.asc squid-$SQUIDVER.tar.gz
    cd /tmp
    tar xzf $OLDPWD/squid-$SQUIDVER.tar.gz
    cd squid-$SQUIDVER
    scl enable devtoolset-2 "./configure --disable-wccp"
    scl enable devtoolset-2 make
    
    Then compare /tmp/squid-$SQUIDVER/src/squid.conf.documented to squid/files/postinstall/squid.conf.documented and update it and the corresponding squid.conf.proto with the things that have changed (at minimum, the version number will always change).
  4. Add notes in the RELEASE_NOTES file for the new version.
  5. Commit all changes into git
  6. Create a new version tag for the new release and push to the repository, for example:
    git tag frontier-squid-$FSQUIDVER
    git push
    git push --tags
    
  7. scp RELEASE_NOTES dbfrontier@frontier.cern.ch:dist/frontier-squid-releasenotes.txt
  8. Create a tarball:
    mkdir /tmp/extract
    cd /tmp/extract
    wget -qO- "https://gitlab.cern.ch/frontier/tarballs/frontier-squid4/repository/archive.tar.gz?ref=frontier-squid-$FSQUIDVER"|tar xzf -
    mv * frontier-squid-$FSQUIDVER
    tar cvf ../frontier-squid-$FSQUIDVER.tar.gz frontier-squid-$FSQUIDVER
    cd ..
    rm -rf extract
    
  9. scp /tmp/frontier-squid-$FSQUIDVER.tar.gz dbfrontier@frontier.cern.ch:dist
  10. Update InstallSquidTarball twiki with new version

frontier-awstats tarball

Basically similar to the frontier-squid tarball except without the copy of the release notes or twiki update. The only user is the rpm.

RPMs

Frontier rpm releases have these steps in common (replace "package" with individual package name):

  1. If updating the tomcat version in frontier-tomcat, compare its conf/server.xml with src/conf/server.xml.O. If there are changes, update server.xml.O and server.xml.proto.
  2. Commit your changes to git.
  3. Make sure you have created a working directory according to the instructions under "Building frontier rpms" step 1, a directory called "rpms" where each repository for doc, scripts, and all frontier-* packages are checked out under their own name.
  4. Update frontier-package/SPECS/frontier-package.spec with the new version, release4source, and releasenum, and commit to git.
  5. If the spec file has a %changelog, add a new entry and commit to git, otherwise edit frontier-package/doc/frontier-packageRELEASE_NOTES with the new version number and release notes, and commit that to git.
  6. Do git push to upload changes to the git server.
  7. In directory frontier-package/scripts on an SL6-based system, run ../../scripts/rpmbuild_.sh including entering your passphrase for the signature.
  8. In the same directory, run ../../scripts/rpm2web.sh /home/dbfrontier/dist/rpms-debug to publish the release to the cernvm-frontier-debug repo. You need to be on a machine on which you can do 'sudo -u dbfrontier' and which is set up with an ssh key to be able to scp from that account to dbfrontier@frontier.cern.ch.
  9. In the same directory, run ../../scripts/rpm2web.sh to install to the regular cernvm-frontier repo. Answer "yes" to the prompt.
  10. In the same directory, run ../../scripts/gittag.sh to create the release tag.
  11. Send a release announcement to frontier-talk@cern.ch.
Edit | Attach | Watch | Print version | History: r32 < r31 < r30 < r29 < r28 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r32 - 2019-04-08 - DaveDykstra
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Frontier All webs login

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