is it possible to have a ci- cd setup to deploy configuration xml files in the itrs active console?
Not from the Active Console, which is a human UI and does not support any API for configuration.
At the “backend” you can build XML configuration files from your automation, using the XSD schema for validation, and signal the Gateway to reload. This can be tricky and technically unsupported as only the GSE, when connected to the Gateway, can be sure of validating and applying the config.
There is support for “centralised configuration” in Obcerv and previous in Gateway Hub, as a way of managing XML resources in one place, and there is an API.
The other mechanism, which is somewhat the reverse of what you want, is Gateway Hooks, which allows for the validation of set-up file invoked by the user and also the processing of XML before being applied to the Gateway.
What kind of process to you see being required for your use cases?
Hi @pgalbavy
Thanks for your reply.
Your answers are really benefiting our itrs usage.
I didn’t understand your 2nd point centralized configuration and 3rd point gateway hooks setup.
Please share us the documentation for these setups if there is any.
We are still in the initial phase checking on how to adopt the cicd pipeline on ITRS include xml file.
We have created the below steps in the initial phase.
- Add, modify common global elements such as rules, samplers, variables, types.
- Design and structure include file (xml).
- Define roles and responsibilities to promote xml.
- Define the tool to create pipeline for test/promote/rollback.
Here are some doc references:
In terms of your questions, there is no supported was to perform items 1 and 2. The Gateway Setup Editor is the only officially supported way of changing / editing the Gateway configuration.
It is possible to do this using an external system but if there are issues then the normal Client Services process will be unable to help you.
The XML/XSD schema for the configuration can be extracted from the Netprobe binary using the command:
netprobe.linux_64 -extract schema schema.xsd
(or whatever - above from memory).
The XSD file can then be used with XML tool chains to validate the XML. XML makes ordering of sections and tags important, so you have to maintain these things through the flow. Note, each release ships with it’s own schema.
As for the way you promote the XML from test/dev to prod, that’s one for CI/CD people, not for me!
Hi @pgalbavy
Thank you for the links.
Can you also please share the documentation on how can we use obcerv for this setup?
Do we have to buy gateway hub separately for our company or does it come with itrs geneos by default?
Obcerv is much the same except for the Gateway command line option changes.
On the Obcerv side you need to install the app: https://docs.itrsgroup.com/docs/obcerv/app/centralised-config/2.1.0/user-guide/install/index.html
If you do not already have Gateway Hub you should not look at it just for this.
tyvm @pgalbavy
we don’t have obcerv as well.
So shall we check on gateway hooks or shall we go for obcerv for this approach?
The Gateway Hooks are going to be more useful to commit changes made in the GSE to a version control system as well as apply any validation rules you choose to have. They will not help on deployment of configurations.
The underlying solution in any case will depend very much on how your system records / expresses the inputs to the configuration process. These will have to then drive an XML builder of some sort that conforms to the schema we support.
These will in turn depend on your platform, the framework you use and the utilities and/or languages you choose to use for coding the solution.
We have talked about support for CMDB systems in the past, internally, but there are too many variables to have a good generic starting point.
Thanks for your patience and replying to my queries.
We are ready for any xml builder, platform, framework and language that you are suggesting for the ci cd approach for the itrs.
In the Initial phase, we are planning to add/modify minimal values in sampler and variables.