int freeCapacityInFlavorEquivalence(Flavor flavor) { if (!hasCapacityFor(ResourceCapacity.of(flavor))) return 0; double memoryFactor = Math.floor(memory/flavor.getMinMainMemoryAvailableGb()); double cpuFactor = Math.floor(cpu/flavor.getMinCpuCores()); double diskFactor = Math.floor(disk/flavor.getMinDiskAvailableGb()); double aggregateFactor = Math.min(memoryFactor, cpuFactor); aggregateFactor = Math.min(aggregateFactor, diskFactor); return (int)aggregateFactor; }
static ResourceCapacity of(Flavor flavor) { ResourceCapacity capacity = new ResourceCapacity(); capacity.memory = flavor.getMinMainMemoryAvailableGb(); capacity.cpu = flavor.getMinCpuCores(); capacity.disk = flavor.getMinDiskAvailableGb(); return capacity; }
void subtract(Node node) { memory -= node.flavor().getMinMainMemoryAvailableGb(); cpu -= node.flavor().getMinCpuCores(); disk -= node.flavor().getMinDiskAvailableGb(); }
ResourceCapacity(Node node) { memory = node.flavor().getMinMainMemoryAvailableGb(); cpu = node.flavor().getMinCpuCores(); disk = node.flavor().getMinDiskAvailableGb(); }
private void setHwInfo(ProtonConfig.Builder builder) { builder.hwinfo.disk.size((long)nodeFlavor.getMinDiskAvailableGb() * GB); builder.hwinfo.disk.shared(nodeFlavor.getType().equals(Flavor.Type.DOCKER_CONTAINER)); builder.hwinfo.memory.size((long)nodeFlavor.getMinMainMemoryAvailableGb() * GB); builder.hwinfo.cpu.cores((int)nodeFlavor.getMinCpuCores()); }
if (node.flavor().getDescription() != null && ! node.flavor().getDescription().isEmpty()) object.setString("description", node.flavor().getDescription()); object.setDouble("minCpuCores", node.flavor().getMinCpuCores()); if (node.flavor().cost() > 0) object.setLong("cost", node.flavor().cost());