Discussion:
Imagine if you had a TDI (SDI) compiler that you could include in your DevOps pipeline...
(too old to reply)
Eddie Hartman
2018-08-20 14:04:28 UTC
Permalink
...imagine no more! I have written a python script that assembles an SDI/TDI project (i.e. in your workspace) into the monolithic Config xml file that the Server needs to run.

In addition to creating the Config file, it also lets you specify the Solution Instance name for the resulting Config, as well as enabling the flag for all Property stores to auto-rewrite as necessary in order to encrypt protected property values that are in clear text. If you execute the tool with no arguments then you get the usage message.

So If you have time then I would love to get feedback and help in making this tool useful for everybody out there who wants SDI/TDI to play nicely in their CI/CD pipelines :)

https://github.com/eddiehartman/configify.git

Enjoy!
/Eddie
Franzw
2018-08-24 13:20:57 UTC
Permalink
Post by Eddie Hartman
...imagine no more! I have written a python script that assembles an SDI/TDI project (i.e. in your workspace) into the monolithic Config xml file that the Server needs to run.
In addition to creating the Config file, it also lets you specify the Solution Instance name for the resulting Config, as well as enabling the flag for all Property stores to auto-rewrite as necessary in order to encrypt protected property values that are in clear text. If you execute the tool with no arguments then you get the usage message.
So If you have time then I would love to get feedback and help in making this tool useful for everybody out there who wants SDI/TDI to play nicely in their CI/CD pipelines :)
https://github.com/eddiehartman/configify.git
Enjoy!
/Eddie
Just a silly question - why is this not an AL ???

<duck and run>
Regards
Franz Wolfhagen
Eddie Hartman
2018-08-24 18:57:14 UTC
Permalink
Post by Franzw
Post by Eddie Hartman
...imagine no more! I have written a python script that assembles an SDI/TDI project (i.e. in your workspace) into the monolithic Config xml file that the Server needs to run.
In addition to creating the Config file, it also lets you specify the Solution Instance name for the resulting Config, as well as enabling the flag for all Property stores to auto-rewrite as necessary in order to encrypt protected property values that are in clear text. If you execute the tool with no arguments then you get the usage message.
So If you have time then I would love to get feedback and help in making this tool useful for everybody out there who wants SDI/TDI to play nicely in their CI/CD pipelines :)
https://github.com/eddiehartman/configify.git
Enjoy!
/Eddie
Just a silly question - why is this not an AL ???
<duck and run>
Regards
Franz Wolfhagen
Good question, Franz. Of course that was my first impulse. However, using a script (e.g. Python) makes it easier to invoke from a DevOps pipeline. I am working on one: a Bluemix Toolchain to deploy an SDI (aka TDI) solution to the IBM cloud :)

The pipeline will start by grabbing the workspace Project folder from IBM github (am using the eGit plugin in the CE), followed by 'compiling' it to a Config xml. Following pipeline steps clone a pre-built image for TDI and copy the .xml to the images <soldir>/configs folder so the config is auto-loaded when the SDI container starts up. This new image which includes the Config is then deployed to the cloud and powered up. As many instances as I want, even growing based on demand.

I've built CI/CD pipelines for Java and Node-based apps, so now it's SDI's turn :D

/Eddie
Eddie Hartman
2018-08-24 19:00:55 UTC
Permalink
Post by Eddie Hartman
Post by Franzw
Post by Eddie Hartman
...imagine no more! I have written a python script that assembles an SDI/TDI project (i.e. in your workspace) into the monolithic Config xml file that the Server needs to run.
In addition to creating the Config file, it also lets you specify the Solution Instance name for the resulting Config, as well as enabling the flag for all Property stores to auto-rewrite as necessary in order to encrypt protected property values that are in clear text. If you execute the tool with no arguments then you get the usage message.
So If you have time then I would love to get feedback and help in making this tool useful for everybody out there who wants SDI/TDI to play nicely in their CI/CD pipelines :)
https://github.com/eddiehartman/configify.git
Enjoy!
/Eddie
Just a silly question - why is this not an AL ???
<duck and run>
Regards
Franz Wolfhagen
Good question, Franz. Of course that was my first impulse. However, using a script (e.g. Python) makes it easier to invoke from a DevOps pipeline. I am working on one: a Bluemix Toolchain to deploy an SDI (aka TDI) solution to the IBM cloud :)
The pipeline will start by grabbing the workspace Project folder from IBM github (am using the eGit plugin in the CE), followed by 'compiling' it to a Config xml. Following pipeline steps clone a pre-built image for TDI and copy the .xml to the images <soldir>/configs folder so the config is auto-loaded when the SDI container starts up. This new image which includes the Config is then deployed to the cloud and powered up. As many instances as I want, even growing based on demand.
I've built CI/CD pipelines for Java and Node-based apps, so now it's SDI's turn :D
/Eddie
Part of my motivation for this that SDI/TDI solutions should be welcomed by the DevOps team(s) at a client site. The other motivator is that this same technique can be used to deploy to VMWare images or even bare metal servers. I have a feeling it can shave both time and manual mistakes off deployments.

/Eddie

Loading...