APAR status
Closed as program error.
Error description
Given an application process that first attempts to install a Component and then launches a Rollback (replace with previous version) if the installation fails, the compliance of the environment remains unchanged if both the the installation of the new version and the rollback to the previous version fail. Steps to reproduce: 1. Create a Component Comp1 with a Component process of type deployment. For simplicity, make the process contain just a manual task, so you can easily control if the process succeeds or fails. 2. Create an Application with an Application process and add the Component to the Application. 3. In the Application process, add a step of type Install Component and use the component and process defined in step 1. 4. If the Install Component fails, ad a step of type Rollback, with the condition: Replace with previous version. Use the same component and process defined in step 1. 5. Add an Environment with an Agent and the Component created in step 1. 6. Create v1 and v2 versions for the Component. 7. Deploy v1 to the Environment. When the Install step pops us the Manual Task, accept to make the process succeed. Result: Compliance is 1/1 and v1 appears deployed to the environment. 8. Deploy v2 to the Environment. When the Install step pops us the Manual Task, Reject to make the process fail. 9. When the Rollback step pops us the Manual Task, Reject to make the process fail. Results: At the end, the process fails globally. However the Compliance of the Environment is still 1/1 and it looks like v1 is deployed. In general, no assumption can be made about what is still actually deployed to the environment, so one would reasonably expect a Compliance of 0/1 and that v1 is no longer appearing in the Resource Inventory, since the failed installation of v2 and the failed rollback of v1 might have left the system in an unpredictable state.
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: * * All end users on all supported browsers. * **************************************************************** * PROBLEM DESCRIPTION: * * Given an application process that first attempts to install * * a * * Component and then launches a Rollback (replace with * * previous * * version) if the installation fails, the compliance of the * * environment remains unchanged if both the the installation * * of * * the new version and the rollback to the previous version * * fail. * * * * Steps to reproduce: * * * * 1. Create a Component Comp1 with a Component process of type * * deployment. For simplicity, make the process contain just a * * manual task, so you can easily control if the process * * succeeds * * or fails. * * * * 2. Create an Application with an Application process and add * * the * * Component to the Application. * * * * 3. In the Application process, add a step of type Install * * Component and use the component and process defined in step * * 1. * * * * 4. If the Install Component fails, ad a step of type * * Rollback, * * with the condition: Replace with previous version. Use the * * same * * component and process defined in step 1. * * * * 5. Add an Environment with an Agent and the Component * * created in * * step 1. * * * * 6. Create v1 and v2 versions for the Component. * * * * 7. Deploy v1 to the Environment. When the Install step pops * * us * * the Manual Task, accept to make the process succeed. * * * * Result: Compliance is 1/1 and v1 appears deployed to the * * environment. * * * * 8. Deploy v2 to the Environment. When the Install step pops * * us * * the Manual Task, Reject to make the process fail. * * * * 9. When the Rollback step pops us the Manual Task, Reject to * * make the process fail. * * * * Results: * * * * At the end, the process fails globally. However the * * Compliance * * of the Environment is still 1/1 and it looks like v1 is * * deployed. * * * * In general, no assumption can be made about what is still * * actually deployed to the environment, so one would * * reasonably * * expect a Compliance of 0/1 and that v1 is no longer * * appearing in * * the Resource Inventory, since the failed installation of v2 * * and * * the failed rollback of v1 might have left the system in an * * unpredictable state. * **************************************************************** * RECOMMENDATION: * * Fixed in version 7.0.4.2 * ****************************************************************
Problem conclusion
Fix is provided in IBM UrbanCode Deploy 7.0.4.2
Temporary fix
Comments
APAR Information
APAR number
PH11564
Reported component name
UC DEPLOY
Reported component ID
5725M5400
Reported release
702
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2019-04-29
Closed date
2019-12-03
Last modified date
2019-12-03
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
UC DEPLOY
Fixed component ID
5725M5400
Applicable component levels
[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SS4GSP","label":"IBM UrbanCode Deploy"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"702","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
03 December 2019