GitHub/OneStream Integration

liyinan357
New Contributor III

Does anyone have experience leveraging GitHub or any other code version control tool to manage Business Rules with OneStream?

Assuming we have a remote Git repository on GitHub that keep track of all of our business rules. How do we push the code from remote repository to OneStream? Or in other words how do we run git command to push/pull. In this context, we want to assume there is file system on cloud store all the business rules in file format. 

If there is no file system on OneStream, how are the Business Rules managed on cloud? Any pointers will be appreciated.

We found a way to update the Business Rule table: xml_data in Application Database. But we are seeking for better options.

 

 

2 ACCEPTED SOLUTIONS

Unfortunately, that won't show up in OS business rules. But it is part of that. If you are in VB, when you type that in, the IntelliSense should give you options.

ckattookaran_0-1727205630019.png

 

View solution in original post

so in this case, it is not a zip file, and your zipfilebytes can be nothing

View solution in original post

12 REPLIES 12

Even if you try to update the xml_data in the database, I don't think that will take effect without a cache reset. What we do here at our firm is we create a tool that will automatically run a pipeline that pushes the rule into the server from DEVOps. I hope OS comes up with a solution for us. I'm creating an XML and pushing that into the server. It works, but it won't work if MFA is enabled and only M2M. There are a lot of limitations, but it works for our development purposes. But we move dashboard objects, rules DM jobs, Metadata, workflow profiles and it works.

Thank you for the reply.

Push xml into what server? How does it work? Are the Business rules actual files in OS? Where are they stored? Very confused but also interested in how you made it work. Would you be able to share a little bit more details? 

So here is the idea, when devops pull requests are approved, what we do is generate a OneStream XML file that can be now loaded into OS. You can automatically load any application or system XML files in OS once they are physically on the server. So please read the file from the DevOps server, pass that whole file as a string, and pass it to an extender rule. The rule will then read the contents of the file that is now passed as a string, get the existing business rule, find out what shared assemblies are there, and use that to create the appropriate type of business rule XML file (Dashboard extender rule are different from finance rules, so on and so forth) and store it in the OS server; from there you can use the loadxml method to load it as a business rule.

I get the most of what you said. I just didn't find loadxml method. Could you pls provide the reference of that method: loadxml? Many thanks!

look for XmlLoadWcf.StartLoadXml

Still can't find it. we are using 8.4 version of OneStream. 

Is it under OneStream.Shared.Wcf for you?

Unfortunately, that won't show up in OS business rules. But it is part of that. If you are in VB, when you type that in, the IntelliSense should give you options.

ckattookaran_0-1727205630019.png

 

I typed this in vb and it seems no problem when clicking compile. Though I didn't get any prompt as I type. Need to test the functionality. 

How did you find out about this function?

There used to be (not sure if it is still around a zip file for API documentation, it is a help file and this was there.

I have a 7.0.1 API Doc. Looking into it now. Really appreciate your help. Very helpful!

so in this case, it is not a zip file, and your zipfilebytes can be nothing

tschilling
New Contributor III

It is honestly my biggest gripe about the platform, especially for those of us who use it as a true platform.  Multi object deployments are extremely painful with Git Integration.  Really wish they would come out with support for it.