This document gives an overwiev about the current implementation of the patch management in the console.
Apply Patch
Applying a patch is done using a wizard which consists of the following steps.
Steps
- Shutdown Servers
- Shutdown Pending
- Unable to Shutdown Servers (Error / Timeout)
- Select Patch
- Confirm Patch
- Apply Pending
- Patch Applied Successfully
- Conflict
- Other Error
After "Patch Applied Successfully" the user can decide to restart the system. This happens after the wizard is closed, though.
Path
Here are the possible paths thru the wizard. Please note that the user can cancel the wizard at any step. I'm using Graphviz to describe the paths. For those who are familiar with graphviz or want to play around with different paths, I've include the source. A double border marks an entry point to the wizard, a dashed line stands for an ongoing progress and red and green colors are used for error and success state.
digraph apply { /* fonts */ graph [fontname="Helvetica"]; node [fontname="Helvetica"]; edge [fontname="Helvetica"]; /* actual workflow */ stop_servers -> stopping; stopping -> select_patch; stopping -> stopped_failed; stopped_failed -> select_patch; stop_servers -> select_patch; select_patch -> applying; applying -> success; applying -> conflict; applying -> error; conflict -> applying; error -> select_patch; /* style */ stop_servers [label="Shutdown Servers",peripheries=2]; stopping [label="Shutdown Pending",style=dashed]; stopped_failed [label="Unable to\nShutdown Servers",fontcolor="#cc0000",color="#cc0000"]; select_patch [label="Select Patch",peripheries=2]; applying [label="Apply Pending",style=dashed]; success [label="Patch Applied\nSuccessfully",fontcolor="#009900",color="#009900"]; conflict [label="Conflict",fontcolor="#cc0000",color="#cc0000"]; error [label="Other Error",fontcolor="#cc0000",color="#cc0000"]; }
Rollback Patch
Patch rollback uses a similar wizard.
Steps
- Shutdown Servers
- Shutdown Pending
- Unable to Shutdown Servers (Error / Timeout)
- Choose Options for Rollback
- Rollback Pending
- Patch Rolled Back Successfully
- Error
Like in "Apply Patch" the user can choose to restart the system after the patch was successfully rolled back.
Path
digraph rollback { /* fonts */ graph [fontname="Helvetica"]; node [fontname="Helvetica"]; edge [fontname="Helvetica"]; /* actual workflow */ stop_servers -> stopping; stopping -> choose_options; stopping -> stopped_failed; stopped_failed -> choose_options; stop_servers -> choose_options; choose_options -> confirm_rollback; confirm_rollback -> rolling_back; rolling_back -> success; rolling_back -> error; error -> choose_options; /* style */ stop_servers [label="Shutdown Servers",peripheries=2]; stopping [label="Shutdown Pending",style=dashed]; stopped_failed [label="Unable to\nShutdown Servers",fontcolor="#cc0000",color="#cc0000"]; choose_options [label="Choose Options\nfor Rollback",peripheries=2]; confirm_rollback [label="Confrim Rollback"] rolling_back [label="Rollback Pending",style=dashed]; success [label="Patch Rolled Back\nSuccessfully",fontcolor="#009900",color="#009900"]; error [label="Error",fontcolor="#cc0000",color="#cc0000"]; }
Comments