Difference between revisions of "Release Checklist"

From Liberty Eiffel Wiki
Jump to navigation Jump to search
m
 
(6 intermediate revisions by one other user not shown)
Line 1: Line 1:
This is WIP. Please update if you think of any missing detail. The target is to include all necessary command line commands (where applicable)
+
This page is a WIP. Please update it if you think of any missing detail. The target is to include all necessary command line commands (where applicable)
   
 
* cleanup Testsuite
 
* cleanup Testsuite
Line 16: Line 16:
 
smarteiffel/commands/run.e
 
smarteiffel/commands/run.e
 
edc-new, edc
 
edc-new, edc
lib/mmi?
+
lib/mmi
 
effect tool
 
effect tool
 
src/staging
 
src/staging
Line 24: Line 24:
 
** echo "bell" > ~/branch on ETs account
 
** echo "bell" > ~/branch on ETs account
 
** change website/et/html_templates/head.html to make ET output tell people which branch is being tested...
 
** change website/et/html_templates/head.html to make ET output tell people which branch is being tested...
  +
* adapt changelog (in work/packaging/debian.skel/debian/) in bell branch (remove ~dev tag)
 
* create release candidate
 
* create release candidate
 
git tag <release_name>-rc1
 
git tag <release_name>-rc1
git push --follow-tags upstream
+
git push --tags upstream
 
* on ETs account...
 
* on ETs account...
 
work/packaging/build_debian.sh -rc1
 
work/packaging/build_debian.sh -rc1
Line 33: Line 34:
 
scp -p et32@et32:Liberty/work/packaging/debs/* ~/Liberty/work/packaging/debs_i386/
 
scp -p et32@et32:Liberty/work/packaging/debs/* ~/Liberty/work/packaging/debs_i386/
 
reprepro --basedir ~/Liberty/website/apt includedeb rc liberty-eiffel-tools_2016~dev~rc1_i386.deb
 
reprepro --basedir ~/Liberty/website/apt includedeb rc liberty-eiffel-tools_2016~dev~rc1_i386.deb
  +
* create doc tarballs
  +
check for next release
  +
work/build_doc.sh -plain -zip
  +
make doc.liberty-eiffel.org point to the released docs
 
* create tarball and put on FTP server
 
* create tarball and put on FTP server
 
download the tag tarball from http://git.savannah.gnu.org/cgit/liberty-eiffel.git
 
download the tag tarball from http://git.savannah.gnu.org/cgit/liberty-eiffel.git
Line 38: Line 43:
 
scp bell-rc1.tar.gz ramack@dl.sv.gnu.org:/srv/download/liberty-eiffel/
 
scp bell-rc1.tar.gz ramack@dl.sv.gnu.org:/srv/download/liberty-eiffel/
 
* collect RC feedback on our mailing list
 
* collect RC feedback on our mailing list
  +
* adapt changelog (in work/packaging/debian.skel/debian/) in bell branch (fix release version and date, without SNAPSHOT)
 
* create the final release tag
 
* create the final release tag
 
git tag <release_name>
 
git tag <release_name>
Line 44: Line 50:
 
* create tarball and put on FTP server
 
* create tarball and put on FTP server
 
see above for rc
 
see above for rc
* write announce email to our mailing list and as news entry on savannah
+
* write announce email
  +
** to our mailing list
  +
** on http://lists.gnu.org/archive/html/info-gnu/
  +
** as news entry on savannah
  +
** https://en.wikipedia.org/wiki/LibertyEiffel - stable release docs
  +
** https://directory.fsf.org/wiki/Liberty-eiffel
  +
** adapt changelog (in work/packaging/debian.skel/debian/) in master branch (readd ~dev tagged version)
 
* switch ET back to use the master branch
 
* switch ET back to use the master branch
 
** echo "master" > ~/branch on ETs account
 
** echo "master" > ~/branch on ETs account

Latest revision as of 21:11, 30 August 2018

This page is a WIP. Please update it if you think of any missing detail. The target is to include all necessary command line commands (where applicable)

  • cleanup Testsuite
  • update LIBERTY_VERSION
  • create new bootstrap germ code
resources/smarteiffel-germ/make_germ.sh
  • create a local branch for the next release
git branch bell
  • create a bell branch in the github repo (via web interface?)
  • push it to savannah
git checkout bell
git push upstream bell
  • remove all tools and libraries which are not sufficiently mature to be included in the release
    • for Bell these are:
cluster smarteiffel/generation/run
smarteiffel/commands/run.e
edc-new, edc
lib/mmi
effect tool
src/staging
src/lib/net/ezmq
wrappers: cairo, database/postgresql, ewlc, llvm, zmq, xml
  • switch ET to use the new branch
    • echo "bell" > ~/branch on ETs account
    • change website/et/html_templates/head.html to make ET output tell people which branch is being tested...
  • adapt changelog (in work/packaging/debian.skel/debian/) in bell branch (remove ~dev tag)
  • create release candidate
git tag <release_name>-rc1
git push --tags upstream
  • on ETs account...
work/packaging/build_debian.sh -rc1
work/packaging/build_debian.sh -rc1 -deploy
ssh et32@et32 "cd $LibertyBase && git fetch origin && git checkout $gitBranch && git merge --ff-only FETCH_HEAD && $LibertyBase/work/packaging/build_debian.sh -rc1"
scp -p et32@et32:Liberty/work/packaging/debs/* ~/Liberty/work/packaging/debs_i386/
reprepro --basedir ~/Liberty/website/apt includedeb rc liberty-eiffel-tools_2016~dev~rc1_i386.deb
  • create doc tarballs
check for next release
work/build_doc.sh -plain -zip
make doc.liberty-eiffel.org point to the released docs
  • create tarball and put on FTP server
download the tag tarball from http://git.savannah.gnu.org/cgit/liberty-eiffel.git
work/strip_tgz.sh bell-rc1.tar.gz
scp bell-rc1.tar.gz ramack@dl.sv.gnu.org:/srv/download/liberty-eiffel/
  • collect RC feedback on our mailing list
  • adapt changelog (in work/packaging/debian.skel/debian/) in bell branch (fix release version and date, without SNAPSHOT)
  • create the final release tag
git tag <release_name>
  • create release debian packages
see above, use -release instead of -rc1
  • create tarball and put on FTP server
see above for rc