> On Dec. 4, 2017, 4:20 p.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.
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).
- Yussuf
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/64242/#review192705
-----------------------------------------------------------
On Dec. 1, 2017, 7: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, 7: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
>
>