@RequestMapping(value = "/cluster/{clusterName:.+}", method = RequestMethod.DELETE) DaemonTask<Halconfig, Void> deleteCluster(@PathVariable String deploymentName, @PathVariable String providerName, @PathVariable String clusterName, @ModelAttribute ValidationSettings validationSettings) { return GenericDeleteRequest.builder(halconfigParser) .stagePath(halconfigDirectoryStructure.getStagingPath(deploymentName)) .deleter(() -> clusterService.deleteCluster(deploymentName, providerName, clusterName)) .validator(() -> clusterService.validateAllClusters(deploymentName, providerName)) .description("Delete the " + clusterName + " cluster") .build() .execute(validationSettings); }
@RequestMapping(value = "/", method = RequestMethod.GET) DaemonTask<Halconfig, List<Cluster>> clusters(@PathVariable String deploymentName, @PathVariable String providerName, @ModelAttribute ValidationSettings validationSettings) { return GenericGetRequest.<List<Cluster>>builder() .getter(() -> clusterService.getAllClusters(deploymentName, providerName)) .validator(() -> clusterService.validateAllClusters(deploymentName, providerName)) .description("Get all " + providerName + " clusters") .build() .execute(validationSettings); }
@RequestMapping(value = "/cluster/{clusterName:.+}", method = RequestMethod.GET) DaemonTask<Halconfig, Cluster> cluster(@PathVariable String deploymentName, @PathVariable String providerName, @PathVariable String clusterName, @ModelAttribute ValidationSettings validationSettings) { return GenericGetRequest.<Cluster>builder() .getter(() -> clusterService.getProviderCluster(deploymentName, providerName, clusterName)) .validator(() -> clusterService.validateCluster(deploymentName, providerName, clusterName)) .description("Get " + clusterName + " cluster") .build() .execute(validationSettings); }
public Cluster getProviderCluster(String deploymentName, String providerName, String clusterName) { NodeFilter filter = new NodeFilter().setDeployment(deploymentName).setProvider(providerName).setCluster(clusterName); return getCluster(filter, clusterName); }
@RequestMapping(value = "/cluster/{clusterName:.+}", method = RequestMethod.PUT) DaemonTask<Halconfig, Void> setCluster(@PathVariable String deploymentName, @PathVariable String providerName, @PathVariable String clusterName, @ModelAttribute ValidationSettings validationSettings, @RequestBody Object rawCluster) { Cluster cluster = objectMapper.convertValue( rawCluster, Providers.translateClusterType(providerName) ); return GenericUpdateRequest.<Cluster>builder(halconfigParser) .stagePath(halconfigDirectoryStructure.getStagingPath(deploymentName)) .updater(c -> clusterService.setCluster(deploymentName, providerName, clusterName, c)) .validator(() -> clusterService.validateCluster(deploymentName, providerName, cluster.getName())) .description("Edit the " + clusterName + " cluster") .build() .execute(validationSettings, cluster); }
@RequestMapping(value = "/", method = RequestMethod.POST) DaemonTask<Halconfig, Void> addCluster(@PathVariable String deploymentName, @PathVariable String providerName, @ModelAttribute ValidationSettings validationSettings, @RequestBody Object rawCluster) { Cluster cluster = objectMapper.convertValue( rawCluster, Providers.translateClusterType(providerName) ); return GenericUpdateRequest.<Cluster>builder(halconfigParser) .stagePath(halconfigDirectoryStructure.getStagingPath(deploymentName)) .updater(c -> clusterService.addCluster(deploymentName, providerName, c)) .validator(() -> clusterService.validateCluster(deploymentName, providerName, cluster.getName())) .description("Add the " + cluster.getName() + " cluster") .build() .execute(validationSettings, cluster); } }
public Cluster getProviderCluster(String deploymentName, String providerName, String clusterName) { NodeFilter filter = new NodeFilter().setDeployment(deploymentName).setProvider(providerName).setCluster(clusterName); return getCluster(filter, clusterName); }
public Cluster getAnyProviderCluster(String deploymentName, String clusterName) { NodeFilter filter = new NodeFilter().setDeployment(deploymentName).withAnyProvider().setCluster(clusterName); return getCluster(filter, clusterName); }
public Cluster getAnyProviderCluster(String deploymentName, String clusterName) { NodeFilter filter = new NodeFilter().setDeployment(deploymentName).withAnyProvider().setCluster(clusterName); return getCluster(filter, clusterName); }