Welcome back to our guide on mastering CI/CD in Qlik Talend Cloud. This is part two of our three-part series where we'll show you how to use GitHub version control to promote changes from development to production.
If you haven't read part one yet, we recommend checking it out first as we'll be building on what we covered there.
In this article, you'll learn how to:
Before we begin, make sure you have the following:
If you need help setting up GitHub version control in Qlik Talend Cloud, check out our blog post on "How to set up GitHub version control in Qlik Talend Cloud" and follow steps 1 and 2.
At the end of part one, you should have two projects both called "GitHub Ingestion (Via Pipelines)" in two data spaces: dev and prod. Having the same name for both projects is crucial for this workflow to function correctly.
Let's start by going into the dev space and opening the dev project.
Next, we'll connect this project to version control:
You'll notice the project now shows 'Main' next to it, and your GitHub repo has some new files.
Let's say a change request has come in asking for all landed table names in Snowflake to be uppercase as part of a data conforming process. We need to adjust our pipeline to accommodate this change.
We'll build this in dev first, then migrate to prod. Here's how:
Using the Qlik GUI, create a new branch:
After pressing OK, you'll see 'main' change to 'CR0001' and a new branch appears in GitHub.
Now we can make the required changes to our pipeline:
I'm adding two transformation rules:See all the assets QTC has created for those 2 tables. The 2x QTC_ prefixed
Onboarding tables, and the teams_ct and teams_current tables with supported views.
Before promoting to production, we can prepare and observe our target (Snowflake):
Notice a new schema was created where you can view all your new changes within that development branch.
In this case, the table names are now uppercase.
Once you're happy with these changes and want to promote them to the prod project, follow these steps:
2. In GitHub, create a pull request (this feature isn't currently available within the Qlik UI)
3. You can build an internal process around this merge request, such as code reviews or a sign-off process
Now that our changes are in the main branch, we need to update the production environment:
4. Before preparing the project, check the onboard tasks to confirm it correctly applied the state of the dev project to prod
As expected, it looks the same and is using the production source and target.
5. Validate to check the changes, then recreate/prepare those changes into prod
6. Within Snowflake, you can now observe that the assets in the production schema have changed to uppercase.
In this guide, you've seen how to promote changes from a dev pipeline to production using GitHub version control. While there are some initial setup steps to connect QTC projects with GitHub, the overall process is straightforward:
In the final part of this series, we'll show you how to accomplish all of the above using only QTC APIs without the GitHub integration.
Need help setting up CI/CD in your Qlik Talend Cloud environment? We've helped over 250 UK businesses get more value from their data. We specialise in Qlik, Snowflake and GitHub integration.
Book a demo call today to see how we can help you implement proper CI/CD processes for your QTC pipelines.