Planning Analytics

 View Only

PAjs - Working with Github

By Edward Stuart posted Fri January 06, 2023 06:42 AM

Those that have already sampled PAjs will have seen an option to select Github from the main menu:

This is one of the more exciting aspects of the REST API for me, I like the idea of a central controlled repository which can be synchronised across all models. 

You may have already touched on Git as part of the REST API via Managing TM1 Database assets with Git

This requires setting up Git and familiarising yourself with the TM1 Project File to deploy and publish your model, to be honest I've not worked extensively with this as it appears mainly to be about pushing and pulling entire models. You can set files to be ignored but it's focus is to take everything and ask for exclusions rather than only take what you request. Over time I will investigate further but I have not had a use case for this as yet.

My goal, was to read from the IBM Developer Works tutorials/ help files from way back when, which I added to GitHub many moons ago. 

Back to the application and when we select GitHub we see that we have no GitHub Repositories listed:

We "Select New GitHub User Account" and are presented with a form to input a Username:

By default I have added my Username so you can test and review as you wish, when we look at my GitHub repositories listing we can see that I have 6 repositories

When we hit List Repositories in PAjs we can see that I have 5 repositories:

This is because the "PAGitServer" repository is a private repository I was using to test the TM1 Project file mentioned above.

I can review DimensionUsageByCube in GitHub and see the following files listed:

Equally when selecting DimensionUsageByCube we see the same files listed:

If I select one of these files we can see the contents:

At present this is proof of concept, we can access a repository to review code and we can easily POST this data to create a new TurboIntegrator process.

We need to be mindful that the process needs to be structured appropriately, EntityType Process details and the file(s) in GitHub should be parsed to fit.

Over time I hope to provide training/ examples via GitHub pages to make it easy to replicate material within Planning analytics models but I am also hoping this post has identified that REST APIs can be used across a number of applications to interact with IBM Planning Analytics and that a single front end can be created to blend multiple applications together that utilise the same data.