How to control the deployment on production environment?
I'm really new with Pega and I would like to know how it deals with versioning and deployment questions. Here are my main doubts...
1) Once I have finished my development, I have to create a version of my app to deploy it to other environments (test,staging,production). Lets call this first version "V1". If I create a new version (V2) and try to deploy it to an environment that has V1 running cases, how Pega will deal with it? Does it migrate all opened cases to V2 automacally or it will give me an option to keep V1 runing cases on V1 and only new cases will be created on V2.
If someone has a link with additional info/article about this question, I appreciate.
***Updated by Moderator: Vidyaranjan. Removed user added #helpme tag. Apologies for confusion, shouldn't have been an end-user option***
For initial deployment of your application to higher environments, you can use application package wizard to create the product rule (Rule-Admin-Product). For respective deployments, we generally create the product rule manually and deploy the same to higher environments.
In production, we won't maintain two versions of application and in your case, pega will not do any migration on the case objects. Open cases should work on V2 app as well, only things you need to worry of any flow changes (removing assignments), or data modelling and class structure changes.In these cases, Case migration should be handled by applicaition team
As suggested by Bharat, you can create a RAP of your application and deploy it in the higher environment. While creating RAP make sure to select related Data instances and Integration resources so that you don't face any compatibility issues in your higher environments.
In order to better understand how to package your Application kindly go through "Migrating an Application" topic under Administration chapter in CSSA 7.1 course.
There's not the possibility to run two versions of the same application in the same production server, so it forces you migrate running cases to the new application version. Is this right?
If version 1 and version 2 has big changes that impacts Data objects, integrations or any kind of component that is new or was removed from one version to another, the developer needs to be deal with it mannualy. Is this right?
I'll describe an example below, please let me know what will happen on this scenario.
In application version 1, a case with two Stages (Stage 1 and Stage 2) was created. Each stage has 3 Steps.
If the version 2 of the same application removes Step 2-2 from Stage 2, and I have 10 cases running exactly on that step, what will occurs when I install version 2 to those running cases that was running on a removed step?
Reading the article I couldn't find a relationship or image a solution using rule circumstances, maybe I'm wrong, but I don't think it's a solution for what I have. Let wait and see if other members has other ideas.