Skip to main content

Deployment Framework

Announcements
Action-Packed Learning Awaits! QlikWorld 2023. April 17 - 20 in Las Vegas: REGISTER NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
bmenicucci
Creator
Creator

Automatically Software Versioning

Hello experts,

I'm a management consultant, usually developing applications for my customers in a QDF environment and I'd like to know if there is the chance to automatically give a "version number" to a specific container; as an example, pretend I have the container "CUST1" for a customer and in that one I have the "2.DEV" container with the typical Sense folder structure. Once I'm happy with the integrations made, I'll release it to the customer and I would like to find a way to automatically give it a number (or a reference), as it was a software "build".

Do anyone of you have faced and solved such a situation?

Thank you very much!

Brunello

2 Replies
johanlindell
Partner - Creator II
Partner - Creator II

Hi Brunello,

I make Inline tables that has the comments and then assing verion number for each line. This is an easy way to keep everything in the document, see below.

As a further improvement to this process we have a script that creates text files with the below tables and a qlikview document that reads this. This way we can see which "changes" are and what phase (Development, Test, Production). Also we use a simple vb-script that copies a file from one environment to the next, Dev -> Test -> Production while making a rotating backup of the files that are in the target environment.

All working very conviniently. . I have attached the scripts for you to have a look at.

QUALIFY *;

ChangeLog:

LOAD *,

RecNo() as Row;

LOAD * Inline [

Date;      Name;                Change

2016-11-21; Johan Lindell, Vimur; Moved Inventory location Id - order head to order head file

2016-06-09; Johan Lindell, Vimur; Added data updated functionlity

2016-06-09; Johan Lindell, Vimur; Added new changelog

] (delimiter is ';');

Todo:

LOAD * Inline [

Date;      Name;    To do

2017-04-04; Johan Lindell, Vimur; Remove Production value current and Production value history (new fields available / used).

2017-04-04; Johan Lindell, Vimur; Move Season Age History / outlet write off to Season or Article table.

] (delimiter is ';');

// 2016-01-20; Johan Lindell, Vimur; Things todo...

Issues:

LOAD * Inline [

Date;      Name;    Issue

] (delimiter is ';');

// 2016-01-20; Johan Lindell, Vimur; Issues...

UNQUALIFY *;

$(Include=$(vG.SharedCustomPath)11.versioninfo.qvs);

bmenicucci
Creator
Creator
Author

Hello Johan,

thanks for your time and your suggestions: very impressive and helpful! For sure I'll take something from it

In the meantime, I set up the following workflow:

1. develop and edit scripts in VSCODE, using QDF environment

2. commit changes toa GIT repository from VSCODE

3. get a version number using git tags

git describe --tags >version.txt

4. creating the following file:

[versioninfo]:

     LOAD @1 AS Value FROM [lib://MYFOLDERDEV/3.Include\6.Custom\3.Load\version.txt]

    (txt, codepage is 1252, no labels, delimiter is '\t', msq);

     LET vVersion = FieldValue('Value',1);

     DROPTABLE[versioninfo];

5. push the committed changes to the PROD folder

Perhaps not the best, however it seems to work!

Have a nice day

Brunello