Embedded Java Configuration can be Difficult
Embedded Java configuration files can present some problems when you begin your journey into Continuous deployment. Keeping track and knowing what’s in them is just the beginning of the confusion. Continuous deployment requires that you hammer out all of the low level, gritty details of your process, including the management of embedded Java configuration files. which change in your configuration files as they move across the pipeline. Things like loglevels, connection pools, xml-files and .properties, need different versions depending on the state of your continuous delivery pipeline.
Eventually, everyone figures out a way to deal with these embedded Java configuration updates but none are elegant. Some teams offload as many as possible to the application server, but then you must deal with server configuration settings outside your deployment process. Another approach is to replace the settings files programmatically before deploying. Some solutions even store multiple configuration files in the war for each state. Doing this relies on some really smart developers to keep all in order.
The good news, if you are using DeployHub, either the Open Source or Pro, you can build the management of your embedded Java configuration files into your deployment logic. Check out this demo on how to address the problem of managing embedded Java configurations across the continuous delivery pipeline, updated by continuous deployment.
Software deployments into mixed environments are complex. Correct component versions must be bundled into an application package version. The application version must be safely delivered onto all endpoints, whether cloud, container, virtual or physical. Multiple applications from different teams, database updates, IT infrastructure, and endpoint configurations must be carefully choreographed.
You need an agile release process that is self-service, repeatable, transparent, and integrated into the continuous delivery pipeline. It needs to allow each team to fully control their environments. DeployHub simply delivers a better way of doing release automation without the hype, as well as being both open source and agentless. Good stuff. Easy.