Alex Soto created KARAF-6733:
--------------------------------

             Summary:  Inject values from files in config files
                 Key: KARAF-6733
                 URL: https://issues.apache.org/jira/browse/KARAF-6733
             Project: Karaf
          Issue Type: Improvement
          Components: karaf
    Affects Versions: 4.2.8
            Reporter: Alex Soto


Currently, I can have the following in a configuration file:
 
     org.ops4j.pax.web.ssl.password={color:#2a00ff}${env:MYPASSWORD}{color}
 
And,  as the documentation states: 
{quote}Environment variables can be referenced inside configuration files using 
the syntax {{${env:<name>}}} (e.g. {{property=${env:FOO}}} will set "property" 
to the value of the enviroment variable "FOO"). {quote}
 
Karaf will use the value from the environment variable. It's all good, but... 
 
When used with Docker secrets, this forces you to copy the secret from the 
default location "/run/secrets/" to an environment variable. 
 
This is a proposal to add a Karaf mechanism to inject values from files in 
config files. For example: 
 
    
org.ops4j.pax.web.ssl.password={color:#2a00ff}${file:/run/secrets/mypassword}{color}
 
So, when Karaf’s see the prefix _$file:_  it will get the content of the file 
and use it as the value of the configuration key.
 
This way:
 
  1) I don’t have to write a complex script to copy the secret into the 
environment variable, and
  2) the secret is only in one place.
 
 
(prefix "file" is just for illustration, it can be something else)
 
 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to