community
community copied to clipboard
Create "zwe upgrade" for automated upgrade
https://github.com/zowe/community/issues/1882 touches upon problems and unknowns when upgrading zowe servers manually.
Some of the problems seem to require a user reading documentation to learn what actions need to be taken depending on the version they are upgrading FROM and TO.
If we internally record this information in a standardized way, such as knowing that version X made a change that must trigger a keystore upgrade, then we could make a tool that contains such information, so that if version X is between the FROM and TO versions, that zwe upgrade would know to not skip over any upgrade actions during an upgrade.
upgrade challenge #1: what zwe init commands need to be re-run?
[ {version: "2.6", requires: [ "apfauth", "mvs" ]}, {version: "2.7", requires: [ "apfauth", "mvs" ]}, {version: "2.8", requires: [ "apfauth", "mvs" ]}, {version: "2.9", requires: [ "apfauth", "mvs", "certificate" ]}, {version: "2.10", requires: [ "apfauth", "mvs" ]}, ]
- zwe upgrade -c zowe.yaml
- it reads workspace to find old version
- it reads runtime dir to find new version
- it reads the above config file in runtime dir to find gap between versions
example: if from=2.7 and to=2.10, we see in total they need zwe init [ "apfauth", "mvs", "certificate" ]
challenge #2: does the workspace need to change?
challenge #3: does the config need to change? answer: no, zowe + components should be using defaults.yaml, so defaults ARE the upgrade... Sean working on this