-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/56727/
-----------------------------------------------------------
Review request for Ambari, Alejandro Fernandez, Jayush Luniya, and Sumit
Mohanty.
Bugs: AMBARI-20034
https://issues.apache.org/jira/browse/AMBARI-20034
Repository: ambari
Description
-------
USER to GROUP mapping (hdfs_user -> hadoop_group) should be stack driven
Diffs
-----
ambari-server/src/main/java/org/apache/ambari/server/agent/ExecutionCommand.java
5c4f08e
ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariCustomCommandExecutionHelper.java
b601893
ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java
3b88ac9
ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProvider.java
8a35c98
ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java
13d0993
ambari-server/src/main/java/org/apache/ambari/server/state/UserGroupInfo.java
PRE-CREATION
ambari-server/src/main/java/org/apache/ambari/server/state/ValueAttributesInfo.java
30a1533
ambari-server/src/main/resources/configuration-schema.xsd 1019dd9
ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-ANY/scripts/params.py
a748b33
ambari-server/src/test/python/stacks/2.0.6/configs/default.json 2a27eca
Diff: https://reviews.apache.org/r/56727/diff/
Testing
-------
Manual Testing for Zeppelin.
===========================
Steps:
1. Make changes to
/resources/common-services/ZEPPELIN/0.6.0.2.5/configuration/zeppelin-env.xml,
/resources\/stacks/HDP/2.6/services/ZEPPELIN/configuration/zeppelin-env.xml
```xml
<property>
<name>zeppelin_user</name>
<value>zeppelin</value>
<property-type>USER</property-type>
<description>User zeppelin daemon runs as</description>
<value-attributes>
<type>user</type>
<overridable>false</overridable>
<user-group>
<property>
<type>zeppelin-env</type>
<name>zeppelin_group</name>
</property>
<property>
<type>hadoop-env</type>
<name>proxyuser_group</name>
</property>
</user-group>
</value-attributes>
<on-ambari-upgrade add="true"/>
</property>
```
2. Deploy a cluster with Zeppelin
3. Check commands-json for addition of user_group in hostLevelParams for
following scenarios
a. Start Zeppelin - AmbariManagementControllerImpl code path
b. Restart Zeppelin - AmbariCustomCommandExecutionHelper code path
c. ClientConfigResourceProviderTest - ClientConfigResourceProvider code
path
[root@mradha22-1 data]# grep user_group command-552.json
"user_group": "{\"zeppelin\":[\"zeppelin\",\"users\"]}",
4. Verify if the user_group map is getting appended to the existing
user_group_dict
Comment the hard-coded logic for zeppelin user and group in
stacks/HDP/2.0.6/hooks/before-ANY/scripts/params.py
#if has_zeppelin_master:
#user_to_groups_dict[zeppelin_user] = [zeppelin_group, user_group]
#zeppelin_user =
config['configurations']['zeppelin-env']["zeppelin_user"]
#zeppelin_group =
config['configurations']['zeppelin-env']["zeppelin_group"]
[root@mradha22-1 data]# grep Madhu output-*.txt
output-502.txt\:Madhu defaultdict(<function <lambda> at 0x13880c8>,
{'ambari-qa': ['users'], 'zeppelin': ['zeppelin', 'users']})
2017-02-15 22:21:48,575 - User['hdfs'] {'gid': 'hadoop',
'fetch_nonlocal_groups': True, 'groups': ['hadoop']}
2017-02-15 22:21:48,576 - User['zeppelin'] {'gid': 'hadoop',
'fetch_nonlocal_groups': True, 'groups': ['zeppelin', 'users']}
Thanks,
Madhuvanthi Radhakrishnan