It appears to have been an unusually quiet month, but that could be a reflection of the OIC release cycle as we’ll probably hear about the next feature set updates late in July.
Earlier in 2017, the Oracle A-Team released a Python library that abstracts the ICS REST API to make some management tasks that you may wish to perform easier. For example, identifying a set of integrations and activating or deactivating them, or simply importing and exporting them. In this Definitive Tip, we will look at the REPL tool and its benefits. The REPL tool can be downloaded here.
Getting setup on Windows at least is a little fiddly as you need to install Python and then depending upon your version of Python update the installer and retrieve a number of additional libraries. REPL itself is available here.
Good development practises such as configuration management and naming conventions have been a topic of conversation a number of times recently for us when it comes to ICS. In this post we will look at what configuration management means to ICS and the application of naming standards.
Why Configuration Management?
So why do we need configuration management with a tool such as ICS? The question depends on what stage of the software lifecycle you are, but a few reasons:
- As a developer there have been occasions where we have tried to optimise something and then decided to reverted back to the last secured state in configuration control.
- Deleted something and then regretted it, whilst desktops have the concept of paper basket to recover from, not so in ICS.
- If your providing packages of ICS functionality you may have different released versions – so need to keep master copies of every version available to refer to.
- Sometimes we get ‘configuration drift’ – and therefore need to have a reference point to compare to. This allows us to determine the drift and if it is appropriate to reset an environment. Whilst this may sound less significant, it is enough of a problem for tools like Puppet to incorporate the ability.
- Tracking what versions of integrations are running in a development vs production environment.