@Override protected ReplicaSet createClone(ReplicaSet obj, String newName, String newDeploymentHash) { return new ReplicaSetBuilder(obj) .editMetadata() .withResourceVersion(null) .withName(newName) .endMetadata() .editSpec() .withReplicas(0) .editSelector().addToMatchLabels(DEPLOYMENT_KEY, newDeploymentHash).endSelector() .editTemplate().editMetadata().addToLabels(DEPLOYMENT_KEY, newDeploymentHash).endMetadata().endTemplate() .endSpec() .build(); }
@Override protected ReplicaSet setReplicas(ReplicaSet obj, int replicas) { return new ReplicaSetBuilder(obj).editSpec().withReplicas(replicas).endSpec().build(); }
}).collect(Collectors.toList()); ReplicaSetBuilder replicaSetBuilder = new ReplicaSetBuilder(); List<LocalObjectReference> imagePullSecrets = getImagePullSecrets(settings); Map componentSizing = deploymentEnvironment.getCustomSizing().get(serviceName); .withNewMetadata() .withName(replicaSetName) .withNamespace(namespace) .endMetadata() .withNewSpec() .withReplicas(retrieveKubernetesTargetSize(componentSizing)) .withNewSelector() client.extensions().replicaSets().inNamespace(namespace).create(replicaSetBuilder.build());
public ReplicaSet getReplicaSet(ResourceConfig config, List<ImageConfiguration> images) { return new ReplicaSetBuilder() .withMetadata(createRsMetaData(config)) .withSpec(createRsSpec(config, images)) .build(); }
@Override public void visit(ReplicaSetBuilder o) { ReplicaSet s = o.build(); if (canWriteTriggers(s)) { o.withMetadata(getMetaEnrichedWithTriggers(s.getMetadata(), o)); } } });
@Override protected ObjectMeta getOrCreateMetadata(ReplicaSetBuilder item) { return item.hasMetadata() ? item.buildMetadata() : item.withNewMetadata().endMetadata().buildMetadata(); } }
@Override public void visit(ReplicaSetBuilder item) { ReplicaSetFluent.SpecNested<ReplicaSetBuilder> spec = item.getSpec() == null ? item.withNewSpec() : item.editSpec(); ReplicaSetSpecFluent.TemplateNested<ReplicaSetFluent.SpecNested<ReplicaSetBuilder>> template = spec.getTemplate() == null ? spec.withNewTemplate() : spec.editTemplate(); template.endTemplate().endSpec(); } });
@Override public void visit(ReplicaSetBuilder resource) { ReplicaSetFluent.MetadataNested<ReplicaSetBuilder> metadata = resource.editMetadata(); if (metadata == null) { resource.withNewMetadata().withName(defaultName).endMetadata(); } else { if (StringUtils.isBlank(metadata.getName())) { metadata.withName(defaultName).endMetadata(); } } } });
}).collect(Collectors.toList()); ReplicaSetBuilder replicaSetBuilder = new ReplicaSetBuilder(); List<LocalObjectReference> imagePullSecrets = getImagePullSecrets(settings); Map componentSizing = deploymentEnvironment.getCustomSizing().get(serviceName); .withNewMetadata() .withName(replicaSetName) .withNamespace(namespace) .endMetadata() .withNewSpec() .withReplicas(retrieveKubernetesTargetSize(componentSizing)) .withNewSelector() client.extensions().replicaSets().inNamespace(namespace).create(replicaSetBuilder.build());
@Override public ReplicaSet updateImage(String image) { ReplicaSet oldRC = get(); if (oldRC == null) { throw new KubernetesClientException("Existing replica set doesn't exist"); } if (oldRC.getSpec().getTemplate().getSpec().getContainers().size() > 1) { throw new KubernetesClientException("Image update is not supported for multicontainer pods"); } if (oldRC.getSpec().getTemplate().getSpec().getContainers().size() == 0) { throw new KubernetesClientException("Pod has no containers!"); } Container updatedContainer = new ContainerBuilder(oldRC.getSpec().getTemplate().getSpec().getContainers().iterator().next()).withImage(image).build(); ReplicaSetBuilder newRCBuilder = new ReplicaSetBuilder(oldRC); newRCBuilder.editMetadata().withResourceVersion(null).endMetadata() .editSpec().editTemplate().editSpec().withContainers(Collections.singletonList(updatedContainer)) .endSpec().endTemplate().endSpec(); return new ReplicaSetRollingUpdater(client, config, namespace).rollUpdate(oldRC, newRCBuilder.build()); }