Hi Taher

inline
On 05/07/2017 18:41, Taher Alkhateeb wrote:
I faced something similar in the past (Not related to OFBiz). Many
systems require different paths of configuration depending on
different deployment scenarios.

There are multiple types of configurations I can think of including:
- platform dependent configurations (it depends on your server and the
environment)
- Sensitive information like passwords
- platform independent (test vs deployment environments for example)
That was exactly our analyze, and we thought about environment variable to be a good place to store private platform dependent configurations. Hosting just manage an environment file to "source" before launching OFBiz.

I think the first two do not belong to the code base. And so the best
option for such problems that I used in the past is templates
(whatever technology you choose). Templates + Build system +
environment variables substantially simplify deployment when compared
with patches that are highly dependent on the current state of the
code base.
True !

Now for the third kind (platform independent like multiple targets)
maybe we can get some good ideas from ruby-on-rails [1]. Essentially
we can tweak the build system and add a few environment files to allow
for multiple target environments.
We currently make use of git branches that jenkins merge when deploying. We are just starting using it, but we are satisfied... That offers the ability to developers to customize these configurations with no need to have access to the environment and no impact on deployment process.

Thanks Taher for your feedback

Gil

[1] http://guides.rubyonrails.org/configuring.html


Reply via email to