> On Dec. 4, 2017, 11:20 a.m., Nate Cole wrote:
> > ambari-server/src/main/java/org/apache/ambari/server/bootstrap/SshHostInfo.java
> > Lines 130-132 (patched)
> > <https://reviews.apache.org/r/64242/diff/1/?file=1905504#file1905504line130>
> >
> >     How many URLs are we talking about here.  If more than one, should this 
> > bet a Set?
> 
> Sonia Garudi wrote:
>     ambariRepoUrls is a json string having ambari repo URLs for each os type 
> which is sent from the UI.
> 
> Nate Cole wrote:
>     Can I see an example?
> 
> Sonia Garudi wrote:
>     Example : 
>     
> "[{"os_type":"os1","ambari_repo":"http://ambari-repo1","hosts":["host1","host2"],"ambariRepoUIError":"","hasError":false},{"os_type":"os2","ambari_repo":"http://ambari-repo2","hosts":["host3"],"ambariRepoUIError":"","hasError":false}]";
>     The above json string consists of list of 2 objects; each containing the 
> os_type, ambari repository URL and the list of host names for the 
> corresponding os_type. The 2 other fields(i.e. ambariRepoUIError and 
> hasError) are used for UI validation.
> 
> Nate Cole wrote:
>     This seems strange in that we end up with two different ways to "get" the 
> URL.  One is that when the UI does not recognize an OS, we ask for it and 
> (presumably) save it in ambari.properties.  Seems as though when we should 
> always get the value from ambari.properties and fail if it's not there.  
> Also, why are we setting all this information  If we have a command for 
> host1, host2, why would we need to know that os-type-2 goes on host3?
> 
> Sonia Garudi wrote:
>     The bootstrap.py file first checks if the os type of a host is not same 
> as server os type. If its different it checks for the ambari repo property 
> for that os type in the ambari.properties file. 
>     case 1 : If the property is not found, the bootstrap for that host fails 
> with code 44. The UI prompts for the ambari repo URL for os_type of hosts 
> which fail with code 44. These hosts are bootstrapped with the ambariRepoUrls 
> json string which contains the ambari repo urls. These URLs are then saved in 
> the ambari.properties file for the respective os type.
>     case 2 : If the property is found in the properties file, the 
> installation will continue without showing a prompt for that os_type.
>     
>     The hosts field in each object is used for removal of prompt when a host 
> is removed.
>     Implementation of storing of ambari repo url in properties file in done 
> in upcoming patches.
> 
> Yussuf Shaikh wrote:
>     Hi Nate,
>     
>     Sonia just dumped the data structure used on step3 controller to the 
> bootstrap API, hence it contains the hostnames, but at server side only 
> os_type and corresponding repo URL is used.
>     
>     We can just do away with hosts information in the json data which would 
> look like below:
>     
> [{"os_type":"os1","ambari_repo":"http://ambari-repo1"},{"os_type":"os2","ambari_repo":"http://ambari-repo2"}]";
>     
>     Let us know if you really need to change this in this patch or we could 
> change it in next patch (AMBARI-22394).

I was just looking for clarification of what's in this string.  If it's just a 
singular URL for the repo of that host, or what purpose the structure serves.

Think of it this way.  With no UI interaction at all, what should the 
bootstrapping do?  Would we make people create that odd json structure and pass 
it as a string?  I'm ok with this patch as-is, but we should be careful what is 
really being asked of the API here in the next patch.


- Nate


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/64242/#review192705
-----------------------------------------------------------


On Dec. 1, 2017, 2:47 a.m., Sonia Garudi wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/64242/
> -----------------------------------------------------------
> 
> (Updated Dec. 1, 2017, 2:47 a.m.)
> 
> 
> Review request for Ambari and Nate Cole.
> 
> 
> Bugs: AMBARI-22476
>     https://issues.apache.org/jira/browse/AMBARI-22476
> 
> 
> Repository: ambari
> 
> 
> Description
> -------
> 
> The hosts failing with error code 44 are bootstrapped along with the ambari 
> repository URLs. The required java beans are changed to include the ambari 
> repository URLs to be passed to bootstrap.py.
> 
> 
> Diffs
> -----
> 
>   
> ambari-server/src/main/java/org/apache/ambari/server/bootstrap/BSRunner.java 
> c7976ee5bb48209478258625532e3420973b4b8c 
>   
> ambari-server/src/main/java/org/apache/ambari/server/bootstrap/SshHostInfo.java
>  86888f499f15aa23807067ee1af745525b9d4619 
>   ambari-server/src/main/python/bootstrap.py 
> f1c53ce45316843fd38624536eed656b029a230a 
>   
> ambari-server/src/test/java/org/apache/ambari/server/bootstrap/BootStrapTest.java
>  b9da013524fee556c6faa2f0236d2c0c4b032750 
>   ambari-server/src/test/python/TestBootstrap.py 
> bea47f498cbb523fbe24622c63b48918d433c717 
>   ambari-web/app/controllers/wizard/step3_controller.js 
> 5ff2cdc1b4bb9da20565fe387765b4fc6728e096 
>   ambari-web/test/controllers/wizard/step3_test.js 
> be1affe28fdcdb3404ebd3fb3fc6e61315483ed2 
> 
> 
> Diff: https://reviews.apache.org/r/64242/diff/1/
> 
> 
> Testing
> -------
> 
> Tests were successful in ambari-web and ambari-server.
> 
> 
> Thanks,
> 
> Sonia Garudi
> 
>

Reply via email to