.setTaskId(TaskID.newBuilder().setValue(taskId.toString())); bldr.addResources(portsResource.get()); bldr.addResources(MesosUtils.getCpuResource(desiredTaskResources.getCpus(), requiredRole)); bldr.addResources(MesosUtils.getMemoryResource(desiredTaskResources.getMemoryMb(), requiredRole)); bldr.addResources(MesosUtils.getDiskResource(desiredTaskResources.getDiskMb(), requiredRole)); bldr.setAgentId(offerHolder.getOffers().get(0).getAgentId()); bldr.setName(taskRequest.getRequest().getId()); bldr.setLabels(labelsBuilder); TaskInfo task = bldr.build();
bldr.setCommand(commandBldr);
bldr.setExecutor(ExecutorInfo.newBuilder() .setCommand(commandBuilder.build()) .setExecutorId(ExecutorID.newBuilder().setValue(task.getDeploy().getCustomExecutorId().or(idGenerator.getNextExecutorId()))) bldr.setData(ByteString.copyFromUtf8(objectMapper.writeValueAsString(executorData))); } catch (JsonProcessingException e) { LOG.warn("Unable to process executor data {} for task {} as json (trying as string)", executorData, taskId.getId(), e); bldr.setData(ByteString.copyFromUtf8(executorData.toString())); bldr.setData(ByteString.copyFromUtf8(task.getDeploy().getCommand().get()));
.setTaskId(TaskID.newBuilder().setValue(taskId.toString())); bldr.addResources(portsResource.get()); bldr.addResources(MesosUtils.getCpuResource(desiredTaskResources.getCpus(), requiredRole)); bldr.addResources(MesosUtils.getMemoryResource(desiredTaskResources.getMemoryMb(), requiredRole)); bldr.addResources(MesosUtils.getDiskResource(desiredTaskResources.getDiskMb(), requiredRole)); bldr.setAgentId(offerHolder.getOffers().get(0).getAgentId()); bldr.setName(taskRequest.getRequest().getId()); bldr.setLabels(labelsBuilder); TaskInfo task = bldr.build();
bldr.setExecutor(ExecutorInfo.newBuilder() .setCommand(commandBuilder.build()) .setExecutorId(ExecutorID.newBuilder().setValue(task.getDeploy().getCustomExecutorId().or(idGenerator.getNextExecutorId()))) bldr.setData(ByteString.copyFromUtf8(objectMapper.writeValueAsString(executorData))); } catch (JsonProcessingException e) { LOG.warn("Unable to process executor data {} for task {} as json (trying as string)", executorData, taskId.getId(), e); bldr.setData(ByteString.copyFromUtf8(executorData.toString())); bldr.setData(ByteString.copyFromUtf8(task.getDeploy().getCommand().get()));
bldr.setCommand(commandBldr);
final String sleepSeconds = Optional.ofNullable(System.getenv("SLEEP_SECONDS")).orElse("15"); return TaskInfo.newBuilder() .setName(taskId) .setTaskId( TaskID.newBuilder() .setValue(taskId) .setAgentId(agentId) .setCommand( CommandInfo.newBuilder() .setEnvironment(Environment.newBuilder() .setValue("env | sort && sleep $SLEEP_SECONDS") .addResources(Resource.newBuilder() .setName("cpus") .setRole(cpusRole) .setType(Value.Type.SCALAR) .setScalar(Value.Scalar.newBuilder().setValue(cpus))) .addResources(Resource.newBuilder() .setName("mem") .setRole(memRole) .setType(Value.Type.SCALAR) .setScalar(Value.Scalar.newBuilder().setValue(mem))) .build();
SingularityTask getSizeOptimizedTask(SingularityMesosTaskHolder taskHolder) { if (configuration.isStoreAllMesosTaskInfoForDebugging()) { return taskHolder.getTask(); } SingularityTask task = taskHolder.getTask(); TaskInfo.Builder mesosTask = taskHolder.getMesosTask().toBuilder(); mesosTask.clearData(); List<MesosOfferObject> offers = task.getOffers() .stream() .map(MesosOfferObject::sizeOptimized) .collect(Collectors.toList()); SingularityTaskRequest taskRequest = task.getTaskRequest(); if (task.getTaskRequest().getDeploy().getExecutorData().isPresent()) { SingularityDeployBuilder deploy = task.getTaskRequest().getDeploy().toBuilder(); deploy.setExecutorData(Optional.absent()); taskRequest = new SingularityTaskRequest(task.getTaskRequest().getRequest(), deploy.build(), task.getTaskRequest().getPendingTask()); } return new SingularityTask(taskRequest, task.getTaskId(), offers, mesosProtosUtils.taskFromProtos(mesosTask.build()), task.getRackId()); }
protected SingularityTask prepTask(SingularityRequest request, SingularityDeploy deploy, long launchTime, int instanceNo, boolean separateHosts, Optional<String> runId) { SingularityPendingTask pendingTask = buildPendingTask(request, deploy, launchTime, instanceNo, runId); SingularityTaskRequest taskRequest = new SingularityTaskRequest(request, deploy, pendingTask); Offer offer; if (separateHosts) { offer = createOffer(125, 1024, 2048, String.format("slave%s", instanceNo), String.format("host%s", instanceNo)); } else { offer = createOffer(125, 1024, 2048); } SingularityTaskId taskId = new SingularityTaskId(request.getId(), deploy.getId(), launchTime, instanceNo, offer.getHostname(), "rack1"); TaskID taskIdProto = TaskID.newBuilder().setValue(taskId.toString()).build(); TaskInfo taskInfo = TaskInfo.newBuilder() .setAgentId(offer.getAgentId()) .setExecutor(ExecutorInfo.newBuilder().setExecutorId(ExecutorID.newBuilder().setValue("executorID"))) .setTaskId(taskIdProto) .setName("name") .build(); SingularityTask task = new SingularityTask(taskRequest, taskId, Collections.singletonList(mesosProtosUtils.offerFromProtos(offer)), mesosProtosUtils.taskFromProtos(taskInfo), Optional.of("rack1")); taskManager.savePendingTask(pendingTask); return task; }
/** * <code>repeated .mesos.v1.TaskInfo unacknowledged_tasks = 1;</code> */ public Builder addUnacknowledgedTasks( org.apache.mesos.v1.Protos.TaskInfo.Builder builderForValue) { if (unacknowledgedTasksBuilder_ == null) { ensureUnacknowledgedTasksIsMutable(); unacknowledgedTasks_.add(builderForValue.build()); onChanged(); } else { unacknowledgedTasksBuilder_.addMessage(builderForValue.build()); } return this; } /**
/** * <code>repeated .mesos.v1.TaskInfo unacknowledged_tasks = 1;</code> */ public Builder addUnacknowledgedTasks( int index, org.apache.mesos.v1.Protos.TaskInfo.Builder builderForValue) { if (unacknowledgedTasksBuilder_ == null) { ensureUnacknowledgedTasksIsMutable(); unacknowledgedTasks_.add(index, builderForValue.build()); onChanged(); } else { unacknowledgedTasksBuilder_.addMessage(index, builderForValue.build()); } return this; } /**
/** * <code>repeated .mesos.v1.TaskInfo unacknowledged_tasks = 1;</code> */ public Builder setUnacknowledgedTasks( int index, org.apache.mesos.v1.Protos.TaskInfo.Builder builderForValue) { if (unacknowledgedTasksBuilder_ == null) { ensureUnacknowledgedTasksIsMutable(); unacknowledgedTasks_.set(index, builderForValue.build()); onChanged(); } else { unacknowledgedTasksBuilder_.setMessage(index, builderForValue.build()); } return this; } /**
/** * <code>required .mesos.v1.TaskInfo task = 1;</code> */ public Builder setTask( org.apache.mesos.v1.Protos.TaskInfo.Builder builderForValue) { if (taskBuilder_ == null) { task_ = builderForValue.build(); onChanged(); } else { taskBuilder_.setMessage(builderForValue.build()); } bitField0_ |= 0x00000001; return this; } /**
SingularityTask getSizeOptimizedTask(SingularityMesosTaskHolder taskHolder) { if (configuration.isStoreAllMesosTaskInfoForDebugging()) { return taskHolder.getTask(); } SingularityTask task = taskHolder.getTask(); TaskInfo.Builder mesosTask = taskHolder.getMesosTask().toBuilder(); mesosTask.clearData(); List<MesosOfferObject> offers = task.getOffers() .stream() .map(MesosOfferObject::sizeOptimized) .collect(Collectors.toList()); SingularityTaskRequest taskRequest = task.getTaskRequest(); if (task.getTaskRequest().getDeploy().getExecutorData().isPresent()) { SingularityDeployBuilder deploy = task.getTaskRequest().getDeploy().toBuilder(); deploy.setExecutorData(Optional.absent()); taskRequest = new SingularityTaskRequest(task.getTaskRequest().getRequest(), deploy.build(), task.getTaskRequest().getPendingTask()); } return new SingularityTask(taskRequest, task.getTaskId(), offers, mesosProtosUtils.taskFromProtos(mesosTask.build()), task.getRackId()); }
protected SingularityTask prepTask(SingularityRequest request, SingularityDeploy deploy, long launchTime, int instanceNo, boolean separateHosts, Optional<String> runId) { SingularityPendingTask pendingTask = buildPendingTask(request, deploy, launchTime, instanceNo, runId); SingularityTaskRequest taskRequest = new SingularityTaskRequest(request, deploy, pendingTask); Offer offer; if (separateHosts) { offer = createOffer(125, 1024, 2048, String.format("slave%s", instanceNo), String.format("host%s", instanceNo)); } else { offer = createOffer(125, 1024, 2048); } SingularityTaskId taskId = new SingularityTaskId(request.getId(), deploy.getId(), launchTime, instanceNo, offer.getHostname(), "rack1"); TaskID taskIdProto = TaskID.newBuilder().setValue(taskId.toString()).build(); TaskInfo taskInfo = TaskInfo.newBuilder() .setAgentId(offer.getAgentId()) .setExecutor(ExecutorInfo.newBuilder().setExecutorId(ExecutorID.newBuilder().setValue("executorID"))) .setTaskId(taskIdProto) .setName("name") .build(); SingularityTask task = new SingularityTask(taskRequest, taskId, Collections.singletonList(mesosProtosUtils.offerFromProtos(offer)), mesosProtosUtils.taskFromProtos(taskInfo), Optional.of("rack1")); taskManager.savePendingTask(pendingTask); return task; }