DescriptionConstraints changes
This is meant to represent the shortest path to a releasable constraints
mechanism. All default-* keys work as before, and override constraints;
instability warnings are printed for all of them; and this rev should deal
correctly with nodes written by older revs.
Making constraints and default-* work at the same time necessitated the
inclusion of the ec2/arch constraints in this branch, rather than smearing
fixes specific to that across more than one branch; less than ideal but
hopefully still digestible.
This should be merged together with pa-start-machine-constraints.
Changelist follows; in constraints:
* "arch" constraint now defaults to "amd64"
* don't-care-what-arch can be chosen with "arch=any"
* don't-care-what-cpu and -mem now also accept "any" for consistency's sake
* "arch" constraint no longer overlaps with "ec2-instance-type"
* _InstanceType now has an "hvm" field, set to true for cluster instances
* specifically to support old node formats:
* empty constraints are now considered valid, for backward compatibility
* can_satisfy always returns false when either Constraints is incomplete
...in state:
* all get_constraints methods now happily return empty constraints on
missing data; this is not robustly testable, because creating a new
constraints-bearing state without constraints at all is just a plain
error, but I verify that a node that is somehow missing its constraints
still returns an empty Constraints object.
...in the environments config schema:
* all default-* keys now warn once per path per process, and print more
detailed information once per message per process. ie, every bad key will
trigger a short warning; detailed fix instructions will be printed once.
...and in ec2:
* get_image_id now expects an "hvm" param, which comes from the "hvm" field
of the chosen instance type
* new get_machine_spec function wraps get_current_ami and get_instance_type
for convenience in real code
https://code.launchpad.net/~fwereade/juju/fix-cluster-instances/+merge/98450
(do not edit description out of merge proposal)
Patch Set 1 #Patch Set 2 : Constraints changes #Patch Set 3 : Constraints changes #Patch Set 4 : Constraints changes #Patch Set 5 : Constraints changes #
MessagesTotal messages: 3
|