diff options
author | Jon Bratseth <bratseth@gmail.com> | 2021-06-25 16:42:33 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@gmail.com> | 2021-06-25 16:42:33 +0200 |
commit | 7990aee76b24173acaf0ec8b5f6796717853b65a (patch) | |
tree | 1b4a1ac8a0062d290d6d03301fdcd334d11feed8 /config-provisioning/src | |
parent | 923fa8c4de0e27cda81e9bf8b7ef3d0c916d1954 (diff) |
Enlarge remote disks to smallest lergal size if smaller is wanted
Diffstat (limited to 'config-provisioning/src')
3 files changed, 16 insertions, 20 deletions
diff --git a/config-provisioning/src/main/java/com/yahoo/config/provision/Cloud.java b/config-provisioning/src/main/java/com/yahoo/config/provision/Cloud.java index 78ed8c9b60d..09807c74bb9 100644 --- a/config-provisioning/src/main/java/com/yahoo/config/provision/Cloud.java +++ b/config-provisioning/src/main/java/com/yahoo/config/provision/Cloud.java @@ -59,7 +59,7 @@ public class Cloud { private boolean reprovisionToUpgradeOs = false; private boolean requireAccessControl = false; - private Builder() {} + public Builder() {} public Builder name(CloudName name) { this.name = name; diff --git a/config-provisioning/src/main/java/com/yahoo/config/provision/Flavor.java b/config-provisioning/src/main/java/com/yahoo/config/provision/Flavor.java index 6a7158c1c21..c47dca66409 100644 --- a/config-provisioning/src/main/java/com/yahoo/config/provision/Flavor.java +++ b/config-provisioning/src/main/java/com/yahoo/config/provision/Flavor.java @@ -24,8 +24,6 @@ public class Flavor { /** The hardware resources of this flavor */ private final NodeResources resources; - private final double minCpuCores; - private final Optional<FlavorOverrides> flavorOverrides; /** Creates a *host* flavor from configuration */ @@ -40,34 +38,31 @@ public class Flavor { Optional.empty(), Type.valueOf(flavorConfig.environment()), true, - flavorConfig.cost(), - flavorConfig.minCpuCores()); + flavorConfig.cost()); } /** Creates a *node* flavor from a node resources spec */ public Flavor(NodeResources resources) { - this(resources.toString(), resources, Optional.empty(), Type.DOCKER_CONTAINER, false, 0, resources.vcpu()); + this(resources.toString(), resources, Optional.empty(), Type.DOCKER_CONTAINER, false, 0); } /** Creates a *host* flavor for testing */ public Flavor(String name, NodeResources resources) { - this(name, resources, Optional.empty(), Flavor.Type.VIRTUAL_MACHINE, true, 0, resources.vcpu()); + this(name, resources, Optional.empty(), Flavor.Type.VIRTUAL_MACHINE, true, 0); } - private Flavor(String name, - NodeResources resources, - Optional<FlavorOverrides> flavorOverrides, - Type type, - boolean configured, - int cost, - double minCpuCores) { + public Flavor(String name, + NodeResources resources, + Optional<FlavorOverrides> flavorOverrides, + Type type, + boolean configured, + int cost) { this.name = Objects.requireNonNull(name, "Name cannot be null"); this.resources = Objects.requireNonNull(resources, "Resources cannot be null"); this.flavorOverrides = Objects.requireNonNull(flavorOverrides, "Flavor overrides cannot be null"); this.type = Objects.requireNonNull(type, "Type cannot be null"); this.configured = configured; this.cost = cost; - this.minCpuCores = minCpuCores; } public Flavor with(FlavorOverrides flavorOverrides) { @@ -75,7 +70,7 @@ public class Flavor { throw new IllegalArgumentException("Cannot override non-configured flavor"); NodeResources newResources = resources.withDiskGb(flavorOverrides.diskGb().orElseGet(resources::diskGb)); - return new Flavor(name, newResources, Optional.of(flavorOverrides), type, true, cost, minCpuCores); + return new Flavor(name, newResources, Optional.of(flavorOverrides), type, true, cost); } public Flavor with(NodeResources resources) { diff --git a/config-provisioning/src/main/java/com/yahoo/config/provision/NodeFlavors.java b/config-provisioning/src/main/java/com/yahoo/config/provision/NodeFlavors.java index c3b2bd9f69a..829be798eb7 100644 --- a/config-provisioning/src/main/java/com/yahoo/config/provision/NodeFlavors.java +++ b/config-provisioning/src/main/java/com/yahoo/config/provision/NodeFlavors.java @@ -26,10 +26,11 @@ public class NodeFlavors { @Inject public NodeFlavors(FlavorsConfig config) { - HashMap<String, Flavor> b = new HashMap<>(); - for (Flavor flavor : toFlavors(config)) - b.put(flavor.name(), flavor); - this.configuredFlavors = Collections.unmodifiableMap(b); + this(toFlavors(config)); + } + + public NodeFlavors(Collection<Flavor> flavors) { + configuredFlavors = flavors.stream().collect(Collectors.toUnmodifiableMap(f -> f.name(), f -> f)); } public List<Flavor> getFlavors() { |