[ 
https://issues.apache.org/jira/browse/AMBARI-17745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alejandro Fernandez updated AMBARI-17745:
-----------------------------------------
    Description: 
Today, we allow configs to contain values like {code}{{variable}}{code} that 
are interpreted by loading variables from params.py, params_linux.py, or 
status_params.py

This type of code is very dangerous because if the config gets saved in the DB, 
and then the user upgrades the stack or changes the value, or Ambari modifies 
the variable name, then it will be broken.

The fact that python code cannot then rename a variable is an extremely poor 
design choice.
We should remove the dynamic interpretation of {code}{{python_variable}}{code}.
We only need to be able to read from other configs saved in the DB.


  was:
Today, we allow configs to contain values like {{variable}} that are 
interpreted by loading variables from params.py, params_linux.py, or 
status_params.py

This type of code is very dangerous because if the config gets saved in the DB, 
and then the user upgrades the stack or changes the value, or Ambari modifies 
the variable name, then it will be broken.

The fact that python code cannot then rename a variable is an extremely poor 
design choice.
We should remove the dynamic interpretation of {{python_variable}}.
We only need to be able to read from other configs saved in the DB.



> Disallow {{variable}} in configs that load variables from python files since 
> very error-prone and not maintainable
> ------------------------------------------------------------------------------------------------------------------
>
>                 Key: AMBARI-17745
>                 URL: https://issues.apache.org/jira/browse/AMBARI-17745
>             Project: Ambari
>          Issue Type: Story
>          Components: stacks
>    Affects Versions: 2.4.0
>            Reporter: Alejandro Fernandez
>             Fix For: trunk
>
>
> Today, we allow configs to contain values like {code}{{variable}}{code} that 
> are interpreted by loading variables from params.py, params_linux.py, or 
> status_params.py
> This type of code is very dangerous because if the config gets saved in the 
> DB, and then the user upgrades the stack or changes the value, or Ambari 
> modifies the variable name, then it will be broken.
> The fact that python code cannot then rename a variable is an extremely poor 
> design choice.
> We should remove the dynamic interpretation of 
> {code}{{python_variable}}{code}.
> We only need to be able to read from other configs saved in the DB.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to