Skip to content
This repository has been archived by the owner on Sep 29, 2021. It is now read-only.

Commit

Permalink
Rename job to jobId in DeploymentGroup
Browse files Browse the repository at this point in the history
To be consistent with other classes like Deployment
  • Loading branch information
davidxia committed Jul 15, 2015
1 parent 85edef8 commit 974e580
Show file tree
Hide file tree
Showing 5 changed files with 34 additions and 33 deletions.
Expand Up @@ -30,10 +30,8 @@
import org.jetbrains.annotations.Nullable;

import java.util.List;
import java.util.Map;

import static java.util.Collections.emptyList;
import static java.util.Collections.emptyMap;

/**
* Represents a Helios deployment group.
Expand All @@ -55,39 +53,38 @@
public class DeploymentGroup extends Descriptor {

public static final String EMPTY_NAME = "";
public static final Map<String, String> EMPTY_LABELS = emptyMap();
public static final JobId EMPTY_JOB = null;
public static final JobId EMPTY_JOB_ID = null;

private final String name;
private final List<HostSelector> hostSelectors;
private final JobId job;
private final JobId jobId;
private final RolloutOptions rolloutOptions;

/**
* Create a Job.
*
* @param name The docker name to use.
* @param job The job for the deployment group.
* @param jobId The job ID for the deployment group.
* @param hostSelectors The selectors that determine which agents are part of the deployment
* group.
*/
public DeploymentGroup(
@JsonProperty("name") final String name,
@JsonProperty("hostSelectors") final List<HostSelector> hostSelectors,
@JsonProperty("job") @Nullable final JobId job,
@JsonProperty("job") @Nullable final JobId jobId,
@JsonProperty("rolloutOptions") @Nullable final RolloutOptions rolloutOptions) {
this.name = name;
this.hostSelectors = hostSelectors;
this.job = job;
this.jobId = jobId;
this.rolloutOptions = rolloutOptions;
}

public String getName() {
return name;
}

public JobId getJob() {
return job;
public JobId getJobId() {
return jobId;
}

public List<HostSelector> getHostSelectors() {
Expand All @@ -113,7 +110,7 @@ public boolean equals(final Object o) {

final DeploymentGroup that = (DeploymentGroup) o;

if (job != null ? !job.equals(that.job) : that.job != null) {
if (jobId != null ? !jobId.equals(that.jobId) : that.jobId != null) {
return false;
}
if (hostSelectors != null ? !hostSelectors.equals(that.hostSelectors)
Expand All @@ -135,7 +132,7 @@ public boolean equals(final Object o) {
public int hashCode() {
int result = name != null ? name.hashCode() : 0;
result = 31 * result + (hostSelectors != null ? hostSelectors.hashCode() : 0);
result = 31 * result + (job != null ? job.hashCode() : 0);
result = 31 * result + (jobId != null ? jobId.hashCode() : 0);
result = 31 * result + (rolloutOptions != null ? rolloutOptions.hashCode() : 0);
return result;
}
Expand All @@ -145,7 +142,7 @@ public String toString() {
return "DeploymentGroup{" +
"name='" + name + '\'' +
", hostSelectors=" + hostSelectors +
", job=" + job +
", job=" + jobId +
", rolloutOptions=" + rolloutOptions +
'}';
}
Expand All @@ -154,7 +151,7 @@ public Builder toBuilder() {
final Builder builder = newBuilder();

return builder.setName(name)
.setJob(job)
.setJobId(jobId)
.setHostSelectors(hostSelectors)
.setRolloutOptions(rolloutOptions);
}
Expand All @@ -170,25 +167,33 @@ private Builder() {
private static class Parameters implements Cloneable {

public String name;
public JobId job;
public JobId jobId;
public List<HostSelector> hostSelectors;
public RolloutOptions rolloutOptions;

private Parameters() {
this.name = EMPTY_NAME;
this.job = EMPTY_JOB;
this.jobId = EMPTY_JOB_ID;
this.hostSelectors = emptyList();
this.rolloutOptions = null;
}
}

public String getName() {
return p.name;
}

public Builder setName(final String name) {
p.name = name;
return this;
}

public Builder setJob(final JobId job) {
p.job = job;
public JobId getJobId() {
return p.jobId;
}

public Builder setJobId(final JobId jobId) {
p.jobId = jobId;
return this;
}

Expand All @@ -202,12 +207,8 @@ public Builder setRolloutOptions(final RolloutOptions rolloutOptions) {
return this;
}

public String getName() {
return p.name;
}

public DeploymentGroup build() {
return new DeploymentGroup(p.name, p.hostSelectors, p.job, p.rolloutOptions);
return new DeploymentGroup(p.name, p.hostSelectors, p.jobId, p.rolloutOptions);
}
}

Expand Down
Expand Up @@ -463,7 +463,7 @@ public void rollingUpdate(final DeploymentGroup deploymentGroup, final JobId job
log.info("rolling-update on deployment-group: name={}", deploymentGroup.getName());

final DeploymentGroup updated = deploymentGroup.toBuilder()
.setJob(jobId)
.setJobId(jobId)
.setRolloutOptions(options)
.build();

Expand Down Expand Up @@ -620,10 +620,10 @@ private RollingUpdateTaskResult rollingUpdateAwaitRunning(final DeploymentGroup
final ZooKeeperClient client = provider.get("rollingUpdateAwaitRunning");
final Map<JobId, TaskStatus> taskStatuses = getTaskStatuses(client, host);

if (!taskStatuses.containsKey(deploymentGroup.getJob())) {
if (!taskStatuses.containsKey(deploymentGroup.getJobId())) {
// job hasn't shown up yet, probably still being written
return RollingUpdateTaskResult.TASK_IN_PROGRESS;
} else if (!taskStatuses.get(deploymentGroup.getJob()).getState()
} else if (!taskStatuses.get(deploymentGroup.getJobId()).getState()
.equals(TaskStatus.State.RUNNING)) {
// job isn't running yet

Expand All @@ -648,7 +648,7 @@ private RollingUpdateTaskResult rollingUpdateAwaitRunning(final DeploymentGroup
// the job is running on the host. last thing we have to ensure is that it was
// deployed by this deployment group. otherwise some weird conflict has occurred and we
// won't be able to undeploy the job on the next update.
final Deployment deployment = getDeployment(host, deploymentGroup.getJob());
final Deployment deployment = getDeployment(host, deploymentGroup.getJobId());
if (deployment == null) {
return RollingUpdateTaskResult.error("deployment for this job is very broken in ZK");
} else if (!Objects.equals(deployment.getDeploymentGroupName(), deploymentGroup.getName())) {
Expand All @@ -662,7 +662,7 @@ private RollingUpdateTaskResult rollingUpdateAwaitRunning(final DeploymentGroup

private RollingUpdateTaskResult rollingUpdateDeploy(final DeploymentGroup deploymentGroup,
final String host) {
final Deployment deployment = Deployment.of(deploymentGroup.getJob(), Goal.START,
final Deployment deployment = Deployment.of(deploymentGroup.getJobId(), Goal.START,
Deployment.EMTPY_DEPLOYER_USER, this.name,
deploymentGroup.getName());
final ZooKeeperClient client = provider.get("rollingUpdateDeploy");
Expand All @@ -686,7 +686,7 @@ private RollingUpdateTaskResult rollingUpdateUndeploy(final DeploymentGroup depl
for (final Deployment deployment : getTasks(client, host).values()) {
final boolean isOwnedByDeploymentGroup = Objects.equals(
deployment.getDeploymentGroupName(), deploymentGroup.getName());
final boolean isSameJob = deployment.getJobId().equals(deploymentGroup.getJob());
final boolean isSameJob = deployment.getJobId().equals(deploymentGroup.getJobId());

if (isOwnedByDeploymentGroup || (
isSameJob && deploymentGroup.getRolloutOptions().getMigrate())) {
Expand Down Expand Up @@ -829,7 +829,7 @@ public List<String> getDeploymentGroupHosts(final String name)
@Override
public Job getJob(final JobId id) {
log.debug("getting job: {}", id);
final ZooKeeperClient client = provider.get("getJob");
final ZooKeeperClient client = provider.get("getJobId");
return getJob(client, id);
}

Expand Down
Expand Up @@ -222,7 +222,7 @@ public Response getDeploymentGroupStatus(@PathParam("name") @Valid final String
}

return Response.ok(new DeploymentGroupStatusResponse(
name, status, deploymentGroup.getJob(), deploymentGroupStatus.getError(),
name, status, deploymentGroup.getJobId(), deploymentGroupStatus.getError(),
result, deploymentGroupStatus))
.build();
} catch (final DeploymentGroupDoesNotExistException e) {
Expand Down
Expand Up @@ -79,7 +79,7 @@ int run(final Namespace options, final HeliosClient client, final PrintStream ou
for (final HostSelector hostSelector : deploymentGroup.getHostSelectors()) {
out.printf(" %s%n", hostSelector.toPrettyString());
}
out.printf("Job: %s%n", deploymentGroup.getJob());
out.printf("Job: %s%n", deploymentGroup.getJobId());
}

return 0;
Expand Down
Expand Up @@ -62,7 +62,7 @@ public class DeploymentGroupInspectCommandTest {
HostSelector.parse("foo=bar"),
HostSelector.parse("baz=qux"));
private static final DeploymentGroup DEPLOYMENT_GROUP = DeploymentGroup.newBuilder()
.setName(NAME).setHostSelectors(HOST_SELECTORS).setJob(JOB).build();
.setName(NAME).setHostSelectors(HOST_SELECTORS).setJobId(JOB).build();

private final Namespace options = mock(Namespace.class);
private final HeliosClient client = mock(HeliosClient.class);
Expand Down

0 comments on commit 974e580

Please sign in to comment.