Skip to main content

I am looking for user experiences or ideas on a way to automate deployments of the Thinkwise platform. For this part limited to the steps that are part of Thinkwise, so no external service that do talk to the application.

Feel free to also share if it is not exactly the environment my situation is in, so it could perhaps help other users as well or trigger possibilities. Any other tips are welcome as well

Environment: Azure

Full deployment steps:

  • Disable Azure App service (running Indicium / Universal GUI). Making sure nothing is running instead of only deactivating an application in IAM.

 

  • Scale up Elastic Pool.

 

  • Apply pre-upgrade script(s) on product DB. Only when data needs patching before an upgrade like in a situation a column becomes mandatory and could be empty before.
  • Apply all generated deployment scripts for the product
  • Apply after-upgrade scrip(s) on product DB. Only if any are needed.

 

  • Upgrade Indicium with a newer version.

 

  • Upgrade Universal GUI with a newer version.

 

  • Apply hotfixes on IAM DB
  • Apply Model Sync on IAM;
  • Copy the application to the new version.
  • Create new User Group (if needed).
  • Link Roles to the correct User Group (if needed).
  • Deactivate old applications.
  • Activate new applications.
  • Run Optimze Index on IAM.

 

  • Scale down Elastic Pool.

     
  • Enable Azure App service (running Indicium / Universal GUI)

The structure is currently serial, but I am aware certain steps could run parallel in an automation situation. I am looking forward to your input and thank you in advance for taking the time.

I am currently trying to setup an automatic deployment for Azure with Azure DevOps pipelines. I have not much to share at this point other than that I used to work with an on-premise sql-server and automated the process partially using a sql script. I am, as you, interested in user experiences regarding the subject.


We're also in the process of setting this up, and it's reassuring to see that the deployment steps you’ve outlined match closely with what we want to automate. Specifically, I’m curious to hear any tips regarding Azure DevOps pipelines, as I’m exploring ways to integrate the deployment steps more efficiently.

Overall it seems parallelization is a good idea indeed, particularly steps like scaling up/down the elastic pool, and upgrading the applications, as these could potentially run independently.

I’m looking forward to hearing about others’ experiences with automation for deployments!


We are also in the process of setting this up in Azure. Following this topic.

@Dennis Koopmna 


Reply