Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

per-component upgrade lifecycle hook #1338

Open
1000TurquoisePogs opened this issue May 5, 2020 · 0 comments
Open

per-component upgrade lifecycle hook #1338

1000TurquoisePogs opened this issue May 5, 2020 · 0 comments
Labels
enhancement New feature or request v2

Comments

@1000TurquoisePogs
Copy link
Member

1000TurquoisePogs commented May 5, 2020

When a user upgrades from zowe version A to version B, existing configuration can take on new meaning, and new configuration may be required which ideally should be automated whenever possible.

Consider, what happens to the following during an upgrade:

  • The contents of the workspace directory. Do they need to change?
  • The contents of the user's zowe.yaml. Does it need to change?
  • Does one component become replaced by another if one is the successor of another? If so, what happens to their configs?

Some of these questions can only be answered by components themselves. Its impossible to bake all knowledge of all components into zwe.

Currently ever user runs "zwe init" during a zowe install, and I believe this would be done during an upgrade as well (Though, certain "init" actions only need to be done once or at least only when there's a change, so a "zwe upgrade" command may be better!)

During such a command, we could run through the components to see if they have an upgrade to perform.

Consider adding a commands.upgrade to the manifest.yaml of components

That command would be given the version zowe was coming FROM, the current zowe.yaml & all its env vars, and therefore the path to the workspace too.

Such a command would be expected to automate config when possible, AND send some return code back to zwe that states whether or not the upgrade is COMPLETE or FAILED or NEEDS MANUAL STEPS

Keep in mind: if a component just wants to update its default yaml config, none of this is needed. Instead, there will eventually be the ability for a component to ship a "defaults.yaml" file within it and its presence/absence and changes will all be handled automatically when an upgrade occurs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request v2
Projects
Status: New
Development

No branches or pull requests

1 participant