In our Qlik Sense app development life-cycle, we are thinking that there must be a way to build a Continuous Integration/Continuous Deployment pipeline and include some basic automated testing within the promotion workflow.
1) Determine how to integrate Qlik with a Source Control (like BitBucket) to ensure apps are source controlled
2) Determine if it would be possible to have more than one developer working on one app at the same time. Would Bit Bucket be able to determine and solve merge conflicts?
3) Research and POC an eventual CI\CD pipeline for Qlik to be able to automatically promote apps across environments, potentially by making use of Qlik APIs
Can you please refer to current best practices and assets we can leverage in building a continuous deployment pipeline for Qlik Sense?
We have been using a product called Platform Manager http://platformmanager.com successfully for several years mainly for version control, but I, like you, am now interested in leveraging the product to build a true CI/CD pipeline. I investigated many other options re version control and PM is much simpler than trying to check qlik applications into various other systems manually.
Hi @daveatkins , this is a long desired feature and the qlik gods may here us some day. But for the moment my most apreciated workaround ist: 1. relocate all the script into .qvs files so each app only consists of one line :
2. structuring all scripts in a well organzied directory e.g. Environment/Streamname/Appname/ 3. using git since the .qvs files are simple texte format and can easily be merged and integrated in other CI steps.
the ugly part ist, that changes in the apps itself can not be versioned as easily as the script. So here you have to just override or do some shady workarounds with daily/monthly subfolders or somehting like that.
If you found help, mark the correct answer and give some likes to ALL contributors, that tried to help.
thanks; the Platform Manager software handles the ugly part you describe; now I just need to figure out if we can orchestrate that part. For example I know I can create a "release" in PM which associates multiple applications and allows promoting them all at once to staging and then production environments. The other nightmare aspect is that typically, qlik applications depend on other development work such as ETL and stored procedures, so I do not know if we can get everything into one nice package for deployments. And 90% of daily work is responding to unplanned issues so very challenging to get to devops approach.