Bulk export/import of reload tasks in client-managed Qlik Sense
The open source tool Ctrl-Q can be used to do bulk export/import of reload tasks in client-managed Qlik Sense Enterprise on Windows.
The latest version of the open source tool Ctrl-Q can both export full reload task definitions to a CSV or Excel file, as well as import tasks from such files.
Might seem like a trivial thing but it's really a game-changing enabler for lots of interesting use cases:
- Backup all tasks to a file once per day. Makes it trivial to recover accidentally deleted reload tasks.
- Ensure DEV, TEST and PROD Qlik Sense servers have the same ETL chains set up.
- Deploy the same set of tasks to multiple Sense environments.
- Define ETL chains in a Git controlled definition file that is automatically sent to Sense whenever updated. Something like DevOps for reload tasks.
Ctrl-Q tries to be as opaque as possible, while at the same time offer a lot of flexibility. A single command should perform some high-value task that would be difficult and/or time consuming to do manually.
Exporting all reload tasks to a CSV file (Excel also possible) looks like this (using PowerShell, Sense server is found at 192.168.100.109):
.\ctrl-q.exe task-get ` --auth-type cert ` --host 192.168.100.109 ` --auth-user-dir Internal ` --auth-user-id sa_api ` --output-format table ` --output-dest file ` --output-file-name tasks.csv ` --output-file-format csv
Great, with a complete definition of all reload tasks now available in tasks.csv, we can create new tasks based on the info in that file:
.\ctrl-q.exe task-import ` --auth-type cert ` --host 192.168.100.109 ` --auth-cert-file ./cert/client.pem ` --auth-cert-key-file ./cert/client_key.pem ` --auth-user-dir Internal ` --auth-user-id sa_api ` --file-type csv ` --file-name tasks.csv
Ctrl-Q supports anything you can do with respect to reload tasks in the QMC, plus some more. It's for example possible to link a newly created reload task to either some other newly created reload task, or to an already existing reload task.
Does it work? Yep, check out this video: