Reusing single deployment manager pipeline for multiple deployments
Can you please give some feedback on how can I update CICD as per my requirement.
I have 4 working environments: Dev -> Staging -> UAT -> Production and separate Orchestration server for Deployment manager (all Pega 7.4.0)
Consider the below scenario:
I'm developing code for Sprint 1 of the project
Basic functionality is developed in Rulseset version: 01-01-01 and is deployed from Dev to SIT through CICD pipeline (Pipeline 1). Now, pipeline 1 cannot be processed till UAT window is reached.
There are bugs raised on SIT that we are fixing in Rule set version: 01-01-02 and is deployed from Dev to SIT through CICD pipeline (Pipeline 2). Now, pipeline 2 also cannot be processed till UAT window is reached.
And we have final bug fix patch in Rule set version: 01-01-03. Again deployed to SIT using CICD pipeline (Pipeline 3). Pipeline 3 also cannot be processed till UAT window is reached.
On the day of UAT window, I process all the 3 pipelines (Pipeline 1, 2 & 3) using Deployment manager. Now, during UAT there are bugs raised by business users. This needs to be deployed from Dev -> SIT -> UAT (Rule set version: 01-01-04). (Creating Pipeline 4).
On the day of Production code press, I will process all the Pipelines using deployment manager.
Can you please suggest an efficient way for deployments using Deployment manager where I can update the Product on the fly without creating multiple deployment pipelines?
Thanks in advance.
***Edited by Moderator Marissa to update Content Type from Discussion to Question***
While using the same pipeline for multiple deployments by just updating the product rule.
But in case when a deployment is already queued onto higher environment waiting for deployment manager's approval; and I am queuing another deployment it goes into Waiting stage on the previous environment.
I have below environments:
Dev -> Staging -> User Acceptance -> Production
If a deployment is pending at User acceptance environment and I am initiating another deployment; product gets deployed to Staging and then goes into Waiting; instead of going to User Acceptance stage for deployment Manager's approval.