1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120
|
Process
==================================================================
0/ **** Check we are not in a high risk period ???
0/ **** DO ***NOT*** switch current link ****************
**** User support will do this, during an arranged system session
**** This is because we have member states, using it for their operations.
**** If we have any scripts in production that are using
**** /usr/local/apps/ecflow/current
**** These make break.
**** This is **very** important
**** IDEALLY we need to educate member states *NOT* to use
**** /usr/local/apps/ecflow/current
----------------------------------------------------------------------
0/ *make sure ecbuild in cmake.sh matches the metabuilder*
0/ check python doc generation
requires that ecflow.so has been built
cd $WK # ecflow root directry
cd Doc/online
make clean;
make html # fix any rst errors in python api
0/ Create the tarball using cmake, in the build directory with
cd $WK # ecflow root directry
rm -rf ../bdir # *REMOVE* build tree
git pull --rebase # make sure we use the latest
./cmake.sh package_source # this will place ecflow tar file in your $SCRATCH
0/ Inform user support, allows user support to build/test rpm
- ** Check the state of bamboo builds and fix.
These may well use different versions of cmake,boost,python,etc
- ** Check the size of tar file **, ensure that have not included redundant files.
<Inform Daniel>
0/ Build release: Two approaches, both use meta-builder:
1/ git flow release start 5.10.0
git_tag=release/5.10.0
Use this approach when multiple people working on the release.
*Push* branch onto stash, otherwise we cannot pull, from the remote machines
- In eclipse, you *may* have to push this branch first Team->Push Branch
*otherwise* the option Team->Push Upstream may well be greyed out.
2/ git flow release start 5.10.0
git flow release finish 5.10.0
git push
git push --tags
git_tag=5.10.0
When single person making release
0/ Update metabuilder/config.yaml master branch to "5.10.0"
Then use the meta builder/master to build/install.
0/ Update Documentation
- https://confluence.ecmwf.int/display/ECFLOW/Release+Notes
- Generate ecflow python API(only required when updating confluence)
- module load python3 # rely on user support to have installed sphinx, make expects sphinx-build on $PATH
- cd $WK/Doc/online; make clean; make html
Sometimes this crashes, Just re-build Pyext, and try again.
conf.py has been configured to look for ecflow.so in build otherwise install dir.
0/ Update WIKI:
This announces the changes in the release
https://confluence.ecmwf.int/display/ECFLOW/Latest+news
In both cases add a tag/label for "news". This make the newly added page
appear in the top half of the latest news
0/ Check attachments:
** The eflow tar ball is automatically upload to confluence
http://confluence.ecmwf.int/display/ECFLOW/Releases
0 Beta releases :
https://confluence.ecmwf.int/display/ECFLOW/Pre-Releases
Add a page with the title of the release.
In both cases add a tag/label for "news". This make the newly added page
appear in the top half of the latest news
0/ Update tag 5new
module load modulemgr
modulemgr -g module -m cca,ccb,cct,ecgb,leap42,lxc,lxg,lxop-dev,sappa,sappb,vsms1 -f -v tag ecflow 5.10.0 5new
0/ Announce release
mail group: ecflow_int@lists.ecmwf.int
Use: ecflow/Doc/misc/Release-Anouncement.txt
Also User Support will send out an email to external users:
https://www.ecmwf.int/r/lists/info/ecflow-announce
AFTER the release
=======================================================================================
o increment the version number in $WK/CMakeLists.txt THEN, run:
sh -x $WK/cmake.sh
This will update the version number for $WK/ACore/src/ecflow_version.h
This file is included in $WK/ACore/src/Version.cpp
It will also update $WK/Pyext/ecflow/__init__.py
Then check this file in, for the other platforms.
0/ record the performance statistics for the release. ( see Doc/misc/test_times )
0/ ** Check the security level of Jira issues for the release.
If there is nothing sensitive, then set security level to None
0/ Update metabuilder server to use the latest server
|