public void setBaseImage(String deploymentName, String providerName, String baseImageName, BaseImage newBaseImage) { BakeryDefaults bakeryDefaults = getBakeryDefaults(deploymentName, providerName); for (int i = 0; i < bakeryDefaults.getBaseImages().size(); i++) { BaseImage baseImage = (BaseImage) bakeryDefaults.getBaseImages().get(i); if (baseImage.getNodeName().equals(baseImageName)) { bakeryDefaults.getBaseImages().set(i, newBaseImage); return; } } throw new HalException(new ConfigProblemBuilder(Severity.FATAL, "BaseImage \"" + baseImageName + "\" wasn't found").build()); }
public void setBaseImage(String deploymentName, String providerName, String baseImageName, BaseImage newBaseImage) { BakeryDefaults bakeryDefaults = getBakeryDefaults(deploymentName, providerName); for (int i = 0; i < bakeryDefaults.getBaseImages().size(); i++) { BaseImage baseImage = (BaseImage) bakeryDefaults.getBaseImages().get(i); if (baseImage.getNodeName().equals(baseImageName)) { bakeryDefaults.getBaseImages().set(i, newBaseImage); return; } } throw new HalException(new ConfigProblemBuilder(Severity.FATAL, "BaseImage \"" + baseImageName + "\" wasn't found").build()); }
@RequestMapping(value = "/defaults/baseImage/", method = RequestMethod.POST) DaemonTask<Halconfig, Void> addBaseImage(@PathVariable String deploymentName, @PathVariable String providerName, @ModelAttribute ValidationSettings validationSettings, @RequestBody Object rawBaseImage) { BaseImage baseImage = objectMapper.convertValue( rawBaseImage, Providers.translateBaseImageType(providerName) ); // TODO(lwander): Would be good to indicate when an added base image id conflicts with an existing base image id. return GenericUpdateRequest.<BaseImage>builder(halconfigParser) .stagePath(halconfigDirectoryStructure.getStagingPath(deploymentName)) .updater(b -> bakeryService.addBaseImage(deploymentName, providerName, b)) .validator(() -> bakeryService.validateBaseImage(deploymentName, providerName, baseImage.getBaseImage().getId())) .description("Add " + baseImage.getNodeName() + " base image") .build() .execute(validationSettings, baseImage); } }