Esempio n. 1
0
 @Test
 public void testFailAutomaticFix() throws InterruptedException {
   listener.reset(11, 0, 0);
   tasks.fail("T1");
   tasks.run();
   assertThat(listener.stateChangedLatch.await(6, TimeUnit.SECONDS), is(true));
   assertThat(listener.stateChangedCount, is(11));
   assertThat(machine.getState().getIds(), contains(States.READY));
 }
Esempio n. 2
0
  public JobConfig toJobConfig(CRJob crJob) {
    JobConfig jobConfig = new JobConfig(crJob.getName());
    if (crJob.getEnvironmentVariables() != null)
      for (CREnvironmentVariable crEnvironmentVariable : crJob.getEnvironmentVariables()) {
        jobConfig.getVariables().add(toEnvironmentVariableConfig(crEnvironmentVariable));
      }

    List<CRTask> crTasks = crJob.getTasks();
    Tasks tasks = jobConfig.getTasks();
    if (crTasks != null)
      for (CRTask crTask : crTasks) {
        tasks.add(toAbstractTask(crTask));
      }

    Tabs tabs = jobConfig.getTabs();
    if (crJob.getTabs() != null)
      for (CRTab crTab : crJob.getTabs()) {
        tabs.add(toTab(crTab));
      }

    Resources resources = jobConfig.resources();
    if (crJob.getResources() != null)
      for (String crResource : crJob.getResources()) {
        resources.add(new Resource(crResource));
      }

    ArtifactPlans artifactPlans = jobConfig.artifactPlans();
    if (crJob.getArtifacts() != null)
      for (CRArtifact crArtifact : crJob.getArtifacts()) {
        artifactPlans.add(toArtifactPlan(crArtifact));
      }

    ArtifactPropertiesGenerators artifactPropertiesGenerators = jobConfig.getProperties();
    if (crJob.getArtifactPropertiesGenerators() != null)
      for (CRPropertyGenerator crPropertyGenerator : crJob.getArtifactPropertiesGenerators()) {
        artifactPropertiesGenerators.add(
            new ArtifactPropertiesGenerator(
                crPropertyGenerator.getName(),
                crPropertyGenerator.getSrc(),
                crPropertyGenerator.getXpath()));
      }

    if (crJob.isRunOnAllAgents()) jobConfig.setRunOnAllAgents(true);
    else {
      Integer count = crJob.getRunInstanceCount();
      if (count != null) jobConfig.setRunInstanceCount(count);
      // else null - meaning simple job
    }

    if (crJob.getTimeout() != null) jobConfig.setTimeout(Integer.toString(crJob.getTimeout()));
    // else null - means default server-wide timeout

    return jobConfig;
  }
Esempio n. 3
0
  @Test
  public void testFailManualFix() throws InterruptedException {
    listener.reset(11, 0, 0);
    tasks.fail("T2");
    tasks.run();
    assertThat(listener.stateChangedLatch.await(6, TimeUnit.SECONDS), is(true));

    Map<Object, Object> variables = machine.getExtendedState().getVariables();
    assertThat(variables.size(), is(3));

    assertThat(machine.getState().getIds(), contains(States.ERROR, States.MANUAL));
    listener.reset(1, 0, 0);
    tasks.fix();
    assertThat(listener.stateChangedLatch.await(6, TimeUnit.SECONDS), is(true));
    assertThat(machine.getState().getIds(), contains(States.READY));
  }
Esempio n. 4
0
 public void doTask(CancellationToken executorCancelToken) {
   CancellationToken currentCancelToken = cancelToken;
   currentCancelToken =
       currentCancelToken != null
           ? Cancellation.anyToken(executorCancelToken, currentCancelToken)
           : executorCancelToken;
   Tasks.executeTaskWithCleanup(currentCancelToken, task, cleanupTask);
 }
 protected void setUp() throws Exception {
   super.setUp();
   serializer = new NdmSerializer();
   method = new Method();
   deeracTasks = new Tasks();
   UserTaskList userTaskList = new UserTaskList();
   deeracTasks.setUserTaskList(userTaskList);
 }
Esempio n. 6
0
  @Test
  public void testRunTwice() throws InterruptedException {
    listener.reset(9, 0, 0);
    tasks.run();
    assertThat(listener.stateChangedLatch.await(6, TimeUnit.SECONDS), is(true));
    assertThat(machine.getState().getIds(), contains(States.READY));

    Map<Object, Object> variables = machine.getExtendedState().getVariables();
    assertThat(variables.size(), is(3));

    listener.reset(9, 0, 0);
    tasks.run();
    assertThat(listener.stateChangedLatch.await(6, TimeUnit.SECONDS), is(true));
    assertThat(machine.getState().getIds(), contains(States.READY));

    variables = machine.getExtendedState().getVariables();
    assertThat(variables.size(), is(3));
  }
Esempio n. 7
0
  public void sendAllTheInfos(View view) {
    // static SQLiteDatabase
    // openDatabase("https://dl.dropboxusercontent.com/u/18285008/database.db", null,
    // OPEN_READWRITE);
    EditText activity = (EditText) findViewById(R.id.editText);
    EditText briefDescription = (EditText) findViewById(R.id.editText2);
    EditText owner = (EditText) findViewById(R.id.editText3);
    EditText frequency = (EditText) findViewById(R.id.editText4);
    String act = activity.getText().toString();
    String bd = briefDescription.getText().toString();
    String own = owner.getText().toString();
    String hz = frequency.getText().toString();
    int achezee = Integer.parseInt(hz);
    Tasks name = new Tasks();
    name.inputTask(act, own, bd, Group, achezee);
    // db.addTask(name);

  }
Esempio n. 8
0
  /** Test of getProjectStatus method, of class Project. */
  @Test
  public void testGetProjectStatus() {
    try {
      System.out.println("getProjectStatus");
      Project instance = new Project();
      instance.setId("112");
      Tasks t = new Tasks("1", "1");
      t.setProjectID("112");
      t.setStatus("inProgress");
      Reference.tasks = new ArrayList<Tasks>();
      Reference.tasks.add(t);
      String expResult = "In Progress";

      String result = instance.getProjectStatus();
      System.out.println("EXP result: " + expResult + "; " + result);
      assertEquals(expResult, result);
    } catch (Exception e) {
      fail("GetProjectStatus(), exception");
    }
  }
  private void initData() throws IOException, ParseException {

    ArrayTaskList ud = new ArrayTaskList();
    TaskIO.readBinary(ud, dataFile);

    Calendar c = Calendar.getInstance();
    c.setTime(new Date());
    String forTime = format.format(c.getTime());
    c.add(Calendar.DATE, 7);
    String toTime = format.format(c.getTime());
    LinkedTaskList ud2 = (LinkedTaskList) Tasks.incoming(ud, forTime, toTime);

    for (Task l : ud2) {
      userData2.add(l);
    }
    Collections.sort(userData2, new TaskComparator());
  }
  /**
   * (uppest/2/uppest-stage/1) |------------------> upper-peer ------- |
   * ...................................|............................................... | . | . [
   * uppest-stage ............................|...................... {bar.zip
   * uppest/upper-peer/downer} V . uppest uppest-stage-2 ------> upper ------> downer ------>
   * downest {foo.zip uppest/upper/downer} (uppest/1/uppest-stage-2/1) uppest-stage-3 ]
   *
   * <p>.... :: fetch artifact call ---> :: material dependency
   */
  @Test
  public void shouldCreateWork_withAncestorFetchArtifactCalls_resolvedToRelevantStage()
      throws Exception {
    configHelper.addPipeline("uppest", "uppest-stage");
    configHelper.addStageToPipeline("uppest", "uppest-stage-2");
    PipelineConfig uppest = configHelper.addStageToPipeline("uppest", "uppest-stage-3");

    configHelper.addPipeline("upper", "upper-stage");
    DependencyMaterial upper_sMaterial =
        new DependencyMaterial(
            new CaseInsensitiveString("uppest"), new CaseInsensitiveString("uppest-stage-2"));
    PipelineConfig upper =
        configHelper.setMaterialConfigForPipeline("upper", upper_sMaterial.config());

    configHelper.addPipeline("upper-peer", "upper-peer-stage");
    DependencyMaterial upperPeer_sMaterial =
        new DependencyMaterial(
            new CaseInsensitiveString("uppest"), new CaseInsensitiveString("uppest-stage"));
    PipelineConfig upperPeer =
        configHelper.setMaterialConfigForPipeline("upper-peer", upperPeer_sMaterial.config());

    configHelper.addPipeline("downer", "downer-stage");
    DependencyMaterial downer_sUpperMaterial =
        new DependencyMaterial(
            new CaseInsensitiveString("upper"), new CaseInsensitiveString("upper-stage"));
    configHelper.setMaterialConfigForPipeline("downer", downer_sUpperMaterial.config());
    DependencyMaterial downer_sUpperPeerMaterial =
        new DependencyMaterial(
            new CaseInsensitiveString("upper-peer"), new CaseInsensitiveString("upper-peer-stage"));
    PipelineConfig downer =
        configHelper.addMaterialToPipeline("downer", downer_sUpperPeerMaterial.config());

    configHelper.addPipeline("downest", "downest-stage");
    DependencyMaterial downest_sMaterial =
        new DependencyMaterial(
            new CaseInsensitiveString("downer"), new CaseInsensitiveString("downer-stage"));
    configHelper.setMaterialConfigForPipeline("downest", downest_sMaterial.config());
    Tasks allFetchTasks = new Tasks();
    allFetchTasks.add(
        new FetchTask(
            new CaseInsensitiveString("uppest/upper/downer"),
            new CaseInsensitiveString("uppest-stage"),
            new CaseInsensitiveString("unit"),
            "foo.zip",
            "bar"));
    allFetchTasks.add(
        new FetchTask(
            new CaseInsensitiveString("uppest/upper-peer/downer"),
            new CaseInsensitiveString("uppest-stage"),
            new CaseInsensitiveString("unit"),
            "bar.zip",
            "baz"));
    configHelper.replaceAllJobsInStage(
        "downest",
        "downest-stage",
        new JobConfig(
            new CaseInsensitiveString("fetcher"),
            new Resources("fetcher"),
            new ArtifactPlans(),
            allFetchTasks));
    PipelineConfig downest =
        goConfigService
            .getCurrentConfig()
            .pipelineConfigByName(new CaseInsensitiveString("downest"));

    DefaultSchedulingContext defaultSchedulingCtx =
        new DefaultSchedulingContext(DEFAULT_APPROVED_BY);
    Pipeline uppestInstanceForUpper =
        instanceFactory.createPipelineInstance(
            uppest, modifySomeFiles(uppest), defaultSchedulingCtx, md5, new TimeProvider());
    dbHelper.savePipelineWithStagesAndMaterials(uppestInstanceForUpper);
    dbHelper.passStage(uppestInstanceForUpper.findStage("uppest-stage"));
    Stage upper_sMaterialStage =
        dbHelper.scheduleStage(
            uppestInstanceForUpper, uppest.getStage(new CaseInsensitiveString("uppest-stage-2")));
    dbHelper.passStage(upper_sMaterialStage);

    Pipeline uppestInstanceForUpperPeer =
        instanceFactory.createPipelineInstance(
            uppest,
            modifySomeFiles(uppest),
            new DefaultSchedulingContext("super-hero"),
            md5,
            new TimeProvider());
    dbHelper.savePipelineWithStagesAndMaterials(uppestInstanceForUpperPeer);
    Stage upperPeer_sMaterialStage = uppestInstanceForUpperPeer.findStage("uppest-stage");
    dbHelper.passStage(upperPeer_sMaterialStage);

    Pipeline upperInstance =
        instanceFactory.createPipelineInstance(
            upper,
            buildCauseForDependency(upper_sMaterial, upper_sMaterialStage),
            defaultSchedulingCtx,
            md5,
            new TimeProvider());
    dbHelper.savePipelineWithStagesAndMaterials(upperInstance);
    Stage downer_sUpperMaterialStage = upperInstance.findStage("upper-stage");
    dbHelper.passStage(downer_sUpperMaterialStage);

    Pipeline upperPeerInstance =
        instanceFactory.createPipelineInstance(
            upperPeer,
            buildCauseForDependency(upperPeer_sMaterial, upperPeer_sMaterialStage),
            defaultSchedulingCtx,
            md5,
            new TimeProvider());
    dbHelper.savePipelineWithStagesAndMaterials(upperPeerInstance);
    Stage downer_sUpperPeerMaterialStage = upperPeerInstance.findStage("upper-peer-stage");
    dbHelper.passStage(downer_sUpperPeerMaterialStage);

    MaterialRevisions downer_sMaterialRevisions =
        new MaterialRevisions(
            materialRevisionForDownstream(downer_sUpperMaterial, downer_sUpperMaterialStage),
            materialRevisionForDownstream(
                downer_sUpperPeerMaterial, downer_sUpperPeerMaterialStage));

    Pipeline downerInstance =
        instanceFactory.createPipelineInstance(
            downer,
            BuildCause.createManualForced(downer_sMaterialRevisions, loserUser),
            defaultSchedulingCtx,
            md5,
            new TimeProvider());
    dbHelper.savePipelineWithStagesAndMaterials(downerInstance);
    Stage downest_sMaterialStage = downerInstance.findStage("downer-stage");
    dbHelper.passStage(downest_sMaterialStage);

    Pipeline downestInstance =
        instanceFactory.createPipelineInstance(
            downest,
            buildCauseForDependency(downest_sMaterial, downest_sMaterialStage),
            defaultSchedulingCtx,
            md5,
            new TimeProvider());
    dbHelper.savePipelineWithStagesAndMaterials(downestInstance);

    buildAssignmentService.onTimer();
    AgentConfig agentConfig = AgentMother.localAgent();
    agentConfig.addResource(new Resource("fetcher"));
    BuildWork work = (BuildWork) buildAssignmentService.assignWorkToAgent(agent(agentConfig));

    List<Builder> builders = work.getAssignment().getBuilders();
    FetchArtifactBuilder fooZipFetch = (FetchArtifactBuilder) builders.get(0);
    assertThat(fooZipFetch.artifactLocator(), is("uppest/1/uppest-stage/latest/unit/foo.zip"));
    FetchArtifactBuilder barZipFetch = (FetchArtifactBuilder) builders.get(1);
    assertThat(barZipFetch.artifactLocator(), is("uppest/2/uppest-stage/1/unit/bar.zip"));
  }
Esempio n. 11
0
 /* Creates and returns a copy of this object. */
 public Object clone() {
   Tasks bean = new Tasks();
   bean.taskId = this.taskId;
   bean.storyFk = this.storyFk;
   int taskCommentLength = -1;
   if (this.taskComment != null) taskCommentLength = this.taskComment.length;
   if (taskCommentLength > 0) {
     byte[] taskCommentArray = new byte[taskCommentLength];
     bean.taskComment = taskCommentArray;
     System.arraycopy(this.taskComment, 0, taskCommentArray, 0, taskCommentLength);
   }
   bean.taskStatusFk = this.taskStatusFk;
   bean.taskType = this.taskType;
   if (this.tDateCreation != null)
     bean.tDateCreation = (java.util.Date) this.tDateCreation.clone();
   if (this.tDateInprogress != null)
     bean.tDateInprogress = (java.util.Date) this.tDateInprogress.clone();
   if (this.tDateValidation != null)
     bean.tDateValidation = (java.util.Date) this.tDateValidation.clone();
   if (this.tDateDone != null) bean.tDateDone = (java.util.Date) this.tDateDone.clone();
   bean.onairTime = this.onairTime;
   bean.estimatedTime = this.estimatedTime;
   bean.doneTime = this.doneTime;
   bean.personFk = this.personFk;
   bean.visible = this.visible;
   return bean;
 }