DeploymentConfigSpec spec = deploymentConfig.getSpec(); oldReplicas = spec.getReplicas(); spec.setReplicas(replicas); DeploymentConfig updated = resource.patch(deploymentConfig); System.out.println("Updated the DeploymentConfig " + name + " version: " + deploymentConfig.getApiVersion() + " with replicas: " + replicas + " to resourceVersion: " + updated.getMetadata().getResourceVersion()); found.getSpec().setReplicas(oldReplicas);
private void createFromTemplate(OpenShiftRuntimeConfig runtimeConfig) throws OpenShiftClientException { OpenShiftTemplate template = new OpenShiftTemplate(this, runtimeConfig); Map<String, String> parameters = new LinkedHashMap<String, String>(); parameters.putAll(OpenShiftParameters.fromRuntimeConfig(runtimeConfig)); String kieServerContainerDeployment = runtimeConfig.getKieServerContainerDeployment(); if (kieServerContainerDeployment != null && !kieServerContainerDeployment.trim().isEmpty()) { parameters.put(OpenShiftProperty.KIE_SERVER_CONTAINER_DEPLOYMENT.envKey(), kieServerContainerDeployment); } KubernetesList kubeList = template.process(parameters); if (kubeList != null && kubeList.getItems().size() > 0) { try { DeploymentConfig dc = getDeploymentConfig(kubeList, runtimeConfig.getServiceName()); if (dc != null) { dc.getSpec().setReplicas(0); } String prjName = runtimeConfig.getProjectName(); delegate.lists().inNamespace(prjName).create(kubeList); } catch (Throwable t) { throw new OpenShiftClientException(t.getMessage(), t); } } }
private void setReplicas(String id, int replicas) throws InterruptedException { OpenShiftRuntimeId runtimeId = OpenShiftRuntimeId.fromString(id); String prjName = runtimeId.project(); String svcName = runtimeId.service(); Service service = delegate.services().inNamespace(prjName).withName(svcName).get(); DeployableScalableResource<DeploymentConfig, DoneableDeploymentConfig> dcr = getDeploymentConfigResource(service); if (dcr != null) { DeploymentConfig dc = dcr.get(); dc.getSpec().setReplicas(replicas); dcr.replace(dc); dcr.waitUntilReady(buildTimeout, TimeUnit.MILLISECONDS); } }