This page describe how new release tarball are created from the Git repository. Please have a look at the [[releasing]] for the overall process. //If one only wants to publish a snapshot tarball, one can skip the first step, and use the snapshot branch on the archive server.// ===== Tag the new version ===== The 1st step is to tag the current commit in the repository for the new version workstation $ git checkout 2.5 Before anything, we pull any last commit from origin, and push our last changes workstation $ REMOTE=github # or REMOTE=origin workstation $ git pull --rebase workstation $ git push $REMOTE 2.5 Then we can safely tag our new version workstation $ VERSION=2.5.3 workstation $ git tag -s $VERSION -m $VERSION (For release candidate, we use VERSION=2.5.3+rc3 for instance) This requires your GPG settings to correctly set in Git: you must use the __exact__ same identity in OAR's Git settings as set in your GPG key (otherwise Git wont find your GPG key). Once this is done, //git describe// should return the new version, as follows: workstation $ git describe 2.5.3 ===== Generate the tarball ===== You can now generate the tarball using the //make_tarball// script: workstation $ make tarball Using the Git repository '/home/neyron/scm/OAR/oar' Using the Git tree-ish '2.5' ../tarballs/oar-2.5.3.tar.gz ===== Push the tag to origin ===== If everything went well so far, you can push the release tag to OAR git repository workstation $ git push $REMOTE --tags -n To git+ssh://capitn@scm.gforge.inria.fr//gitroot/oar/oar.git * [new tag] 2.5.3 -> 2.5.3 if the dry-run looks ok, push for real workstation $ git push $REMOTE --tags Counting objects: 1, done. Writing objects: 100% (1/1), 800 bytes, done. Total 1 (delta 0), reused 0 (delta 0) To git+ssh://capitn@scm.gforge.inria.fr//gitroot/oar/oar.git * [new tag] 2.5.3 -> 2.5.3 ===== Publish the tarball ===== The before-generated tarball must now be pushed to the archive server (only possible if your SSH key is authorized for connecting to the archive server), in one of the branches: testing or stable. workstation $ VERSION=2.5.3 workstation $ FTP=ftpmaster@oar-ftp.lig workstation $ scp ../tarballs/oar-$VERSION.tar.gz \ $FTP:oar-ftp.imag.fr/oar/sources/testing/ Generate the checksums: workstation $ ssh $FTP \ "cd oar-ftp.imag.fr/oar/sources/testing/ && md5sum oar-$VERSION.tar.gz > oar-$VERSION.tar.gz.md5sum && sha1sum oar-$VERSION.tar.gz > oar-$VERSION.tar.gz.sha1sum" If we are releasing a stable version, symlink the files from the testing directory to the stable directory: workstation $ ssh $FTP \ "cd oar-ftp.imag.fr/oar/sources/stable/ && for f in oar-$VERSION.tar.gz oar-$VERSION.tar.gz.md5sum oar-$VERSION.tar.gz.sha1sum; do ln -s ../testing/\$f . ; done" That's it ! ===== Test ! ===== You should now see the new tarball listed in http://oar-ftp.imag.fr/oar/sources/