-
Notifications
You must be signed in to change notification settings - Fork 27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
parent location
in YAML dominates child location
due to start
behaviour
#1377
Comments
test demonstrating this in io.brooklyn.camp.brooklyn.EmptySoftwareProcessYamlTest.testWithAppAndEntityLocations() |
also alluded to in docs wrt |
This behaviour has now changed - see @ahgittin 's email to the dev@brooklyn mailing list, subject "Locations defined on child items -- Inheriting and overriding locations" on "14/01/2016, 15:52". |
not sure whether this is a bug, but it's a bit surprising and wanted to open it for discussion
currently if you supply yaml such as
the
SoftwareProcess
entity (empty in this case but same for any) provisions the VM against "loopback on app". it ends up having two locations against it, the first being the provisioning location for localhost ("on entity") due to its being set there at creation time, and the second being anSshMachineLocation
in the byon ("loopback on app"), due to the byon provisioning being passed in tostart
.the behaviour in
SoftwareProcess.start
that it prefers locations passed in is sensible enough, and the behaviour at theAbstractApplication.start
that it passes its locations to startable children is sensible enough, but the end result is surprising.IOW i'd have expected any of:
SoftwareProcess
this would not be allowed)but not
0. ignore the child
what it suggests larger is that perhaps we're being wrong-headed with
start(Location)
being such a strong pattern. maybeAbstractApplication.start()
behaviour should just pass through to children, not attempting to pick up locations defined there, putting the onus onchild.start
who, when he is looking for a location, will if nothing is passed in or locally specified, walk his ancestor hierarchy.this would effectively switch behaviour from 0 to 2.
i think that would be a pretty easy code change and would have no impact in normal cases. and on top of that we could where desired implement 1 or 3 instead, of course.
thoughts?
The text was updated successfully, but these errors were encountered: