----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/41348/#review110256 -----------------------------------------------------------
Ship it! ambari-server/src/main/resources/scripts/takeover_config_merge.py (line 167) <https://reviews.apache.org/r/41348/#comment170066> type in blueprint. - Sid Wagle On Dec. 14, 2015, 2:47 p.m., Andrew Onischuk wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/41348/ > ----------------------------------------------------------- > > (Updated Dec. 14, 2015, 2:47 p.m.) > > > Review request for Ambari and Sid Wagle. > > > Bugs: AMBARI-14366 > https://issues.apache.org/jira/browse/AMBARI-14366 > > > Repository: ambari > > > Description > ------- > > _Background_: > > * a lot of node cluster Ambari takeover needs to address the problem of > host based configs merged to create default Ambari configs. > * The scope of this task is to provide a script that reads a dir structure > for all configs. **For now only site.xml** since env files cannot be parsed, > we might need to handle yaml files in later version. > * It produces a output of all the problems / conflicts found along with a > configuration.json which can be directly incorporated in a cluster > **blueprint** > > _Tasks_: > > * Please find the attached patch with a partial script that you can start > from (Really basic foundation patch). > * Assume that user has copied all the configs in a directory, example: > /tmp/my-master-configs/etc/hadoop/conf, > /tmp/my-master-configs/etc/hbase/conf, > /etc/my-slave-configs/hadoop/conf and so on. (There could be 5 core-site from > different master / slave / client) > > * Parse these files and merge them into a map of configs that can be > exported to json based on following rules: > * If propertyA is found in core-site1 and core-site2 with same value, add > it to the map > * If propertyA is found in core-site1 only, add it to the map > * If propertyA is found in core-site1 and core-site2 with different > value, add it to an output file with same name as the config-type, as a > conflict. > Sample file (Choose appropriate formatting of choice) :: > > > core-site-conflicts.txt :: > || Conflicts || > | propertyA | <path-to-config-file> | value | > | propertyA | <path-to-config-file> | value | > > > * **Note**: Single run should generate all the conflicts, if no conflicts > found generate the json file > * Provide ability to force output and also a verbose mode to log every > step > > > Diffs > ----- > > ambari-server/src/main/resources/scripts/takeover_config_merge.py > PRE-CREATION > > Diff: https://reviews.apache.org/r/41348/diff/ > > > Testing > ------- > > mvn clean test > > > Thanks, > > Andrew Onischuk > >
