IBM Support

Cognos Toolkit GitHub Integration

Cognos GitHub Integration

Store Dashboard JSON, Report XML and other specifications to GitHub and GitHub Enterprise.

What is Cognos Toolkit Integration with GitHub: Source control and collaboration

Cognos Analytics is an AI-fueled business intelligence platform that supports the entire analytics cycle, from discovery to operationalization. As content development grows, so does the demand to keep versions and monitor changes of the reports, dashboards, models, etc.

Why GitHub?

GitHub and GitHub Enterprise is a web-based hosting service for Git repositories to manage source code and revision history, and to track defects, feature requests and tasks. "More than 40 million people use GitHub to discover, fork, and contribute to over 100 million projects". This makes it the most popular source control, with no string attached. To learn more click here.

Add / Push / Commit 

After changes are made to an object in Cognos and validation tests performed, the Developer can easily check in the new specification directly from Cognos Portal.

Each push synchronizes GitHub source with the Cognos object specification.

Creates an entry in GitHub with the developer's signature that indicates who, when and why did the change. This synchronization flow is based on GitHub process, saving the steps to extract the specification from Cognos and creating a file/tree structure in GitHub.

Adds a comment that the Developer provides in Cognos.

In addition, the Cognos System Administrator is able to add/push any new changes (based on DateTime selection) to GitHub through a scripted application or through Cognos Toolkit task.

Supported Cognos Objects  

Reports, Queries, Analysis Dashboards Models/Packages Stories Data Modules Events Templates Explorations

IBM Cognos GitHub Integration

image 2014

Dynamic hierarchy

The extension connects to a predefined GitHub repo. The repo can be set per environment, or a combination of environments. For example /master/Dev, /master/UAT, etc. 

Content Tree is further extended dynamically (at add/push/commit) to match the Cognos Folder/Package hierarchy with same folder names and structure, as they are defined in Cognos Analytics environment.

Update / Push / Commit 

After additional changes are made to an object in Cognos and validation tests performed, the Developer can easily check in the new version specification directly from Cognos Portal. If an entry already exists in GitHub, the application compares GitHub version and the new one. If the new version is the same, it will not be pushed to the repository. If the new version is different, it will be saved as new with the developer's signature that indicates who, when and why did the change (commit message).

Pull  

If previous specification. of the same object is already stored in the GitHub repository, the user will be presented with a list of versions with date/time of commit, user committed and commit message, up to predefined versions. The user can select any of the previous versions and commit back to Cognos Content Store. The current version of the object in Cognos will be overwritten for all users.

image 2012

Download  

Any submitted version of the specification can be downloaded locally to the user's environment. A list of the last (configurable) number of updates are displayed with their commit messages and users that pushed the specification. After selection, the specification is downloaded through the browser. This specification can be modified further or used for manual upload into a different Cognos Environment.

Easy Install and Configuration

Cognos Toolkit GitHub Integration is distributed as Cognos Analytics extension and is easily uploaded to any environment, version 11.x that supports extensions. System Administrators can assign permissions to Groups or individual users to use the extension.

In addition, the implementation can be extended to suit Client additional requirements.

For more information and to request a demo, contact diagtool@ca.ibm.com