If you are unable to create a new account, please email support@bspsoftware.com

 

News:

MetaManager - Administrative Tools for IBM Cognos
Pricing starting at $2,100
Download Now    Learn More

Main Menu

Version Control for Cognos Reports

Started by pakhi, 22 May 2017 05:18:48 AM

Previous topic - Next topic

pakhi

Hi Team - Please assist to help me for using GIT version control tool for cognos reports. If there is any issues/challenge then also please let me know.

MFGF

Quote from: pakhi on 22 May 2017 05:18:48 AM
Hi Team - Please assist to help me for using GIT version control tool for cognos reports. If there is any issues/challenge then also please let me know.

Hi,

It's going to be an entirely manual (and therefore cumbersome) process to use GIT version control for your Cognos reports. You will essentially need to grab the XML spec for every report and check them out / in manually, then put processes in place to prevent authors from editing a report without first having gone through the manual check-out process.

Honestly, I'd recommend something fully integrated with Cognos, such as BSP's Integrated Control Suite: http://www.bspsoftware.com/products/ics/

One of the BSP guys will hopefully be along shortly to offer help... :)

Cheers!

MF.
Meep!

pakhi


Eric.Pleiss

Pakhi,
We would be more than happy to demo our of our version control software, Integrated Control Suite, with you and potentially set you up with a trial version.  Please send me an email,
eric.pleiss@avnet.com, and we can get things started.

-
Eric R. Pleiss
Avnet BSP Software
eric.pleiss@avnet.com

dougp

#4
Motio CI also does version control.

Using Git correctly will be difficult.  It will be easier if you are using it for version tracking rather than source control.

I don't use BSP or Motio products at this time.  I have devised a system wherein I use SQL and PowerShell to export the XML report specs from Team Content, then use Windows Shadow Copy to store the last 64 "versions" of each report.  My purpose is minor disaster recovery.  (A user deleted a report or someone changed a report without coordinating with his coworker first.)  Unfortunately, a "version" in that context is one backup -- and Windows is doing one per day, not one per change.  I could complicate my process by involving Git or SVN, but it would still be only for versioned backups, not actual source control.  And it still wouldn't be real-time.

grv87

All proposed tools - Motio CI and BSP (and NetVisn) - have one serious fault. They are isolated solutions.

Correct solution should be able to be integrated into common CI/CD process, with CI server (like Jenkins) testing and deploying all changes - database, model, reports etc.
Otherwise there always will be inconsistent deployments, manual synchronization, and incidents. No DevOps ever.
Isolated solution is dead end.
Good solution should store the code in common repositories (like git), and have either a command-line tool and/or a plugin for CI server.
It's interesting that neither IBM nor none of these suppliers consider this, and we, users, have to implement the good solution by ourselves.

Cognos Toolkit GitHub Integration looks promising, but it implements only a single step, and for GitHub only.

dougp

Way to pick up a dead thread!

Since my last post, I have updated my process to use git rather than Windows Shadow Copy.  I use tidy.exe to clean the xml files so I can get a diff that's useful to a human, then push the content to the remote repo.  My query from the Content Store captures additions and modifications most days, but does a full wipe and rewrite on Sundays to get the deletes.

...but it's still not source control.  It's just a better source tracker than I had before.

The right way to do this, other than purchasing a product like Motio CI or BSP Integrated Control Suite, would be:
Edit the report in a development environment.
Report | Copy report to clipboard
Paste it into a text editor.
Perform other edits (like tidying the xml).
Save
Add, Commit, Push to the remote repo.
When it's time to deploy, run a Java or C# program that uses the Cognos SDK to publish the report to the correct location in Cognos.

That way names and dates are associated with the changes (all I get now is dates), and a valid deployment process can be implemented.

I use Azure DevOps (formerly Microsoft TFS) with git for source control and deployments for other (non-Cognos) work.  But since deployments can include PowerShell scripts, anything is possible.

But all of that is a lot of work to develop and a hassle for the report authors.  And I'll bet that the vendor software that does this follows similar processes, uses similar tools, and adds features to make it even easier.  For example, I believe Motio CI handles source control right within the Cognos environment, making it invisible to the users.

The question is:  Since you're locked into Cognos, why are you afraid of getting locked into another vendor product that only works with Cognos?  To me, the only question is funding (which I don't have).

anime4tw

Dougp - Would you be willing to share more specifics on how you automate the process of pulling the XML from Cognos?

dougp

You can see some of my work at https://github.com/dougpulse/Cognos.  Keep in mind that this is NOT the way IBM recommends using or managing IBM Cognos Analytics.  Use at your own risk.

piyushbhadouriya

Quote from: dougp on 26 May 2020 11:57:46 AM
You can see some of my work at https://github.com/dougpulse/Cognos.  Keep in mind that this is NOT the way IBM recommends using or managing IBM Cognos Analytics.  Use at your own risk.

how much time it took to develop this kind of solution? we are planning to do a cost benefit analysis between Motio/BSP or some inhouse solution. Your input would be valuable.

dougp

How long did it take me, or how long will it take you?

I didn't keep track of how many hours I spent on this.

Your experience will depend upon the knowledge and resources you have available.  Factors include:
Your understanding of the Content Store database
Your ability to write SQL using a recursive CTE to convert data with recursive relationships into something that looks like a folder structure.
Your ability to write PowerShell or some other scripting language wire up the process.
Your computer resources (long-running scripts = frustration during development)
Your permissions in Cognos, the database server, the file system...
Your ability to find web-based resources.  (documentation, code samples, etc.)

I see a pattern emerging...


If I remember correctly, Motio CI is about $3200/year and includes version control.  Of course, you'll need more storage for the data it produces/stores, so that's a cost.  I don't know if it will require more CPU or RAM beyond what you already have.  And then you'll need someone who knows how to make Motio CI work properly.  (Even after the license cost, no software is free to run.  It requires a babysitter.)

So I guess the question is do you want someone to develop and maintain your own process, or do you want someone to maintain a vendor's process?