hudson.model.AbstractProject.getTrigger()方法的使用及代码示例

x33g5p2x  于2022-01-15 转载在 其他  
字(10.8k)|赞(0)|评价(0)|浏览(71)

本文整理了Java中hudson.model.AbstractProject.getTrigger()方法的一些代码示例,展示了AbstractProject.getTrigger()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。AbstractProject.getTrigger()方法的具体详情如下:
包路径:hudson.model.AbstractProject
类名称:AbstractProject
方法名:getTrigger

AbstractProject.getTrigger介绍

[英]Gets the specific trigger, or null if the propert is not configured for this job.
[中]获取特定触发器,如果未为此作业配置属性,则为null。

代码示例

代码示例来源:origin: jenkinsci/jenkins

@Override public SCMTrigger getSCMTrigger() {
  return delegate.asProject().getTrigger(SCMTrigger.class);
}
@Override public Collection<? extends SCM> getSCMs() {

代码示例来源:origin: jenkinsci/gerrit-trigger-plugin

/**
 * Set/mock the supplied trigger onto the supplied {@link AbstractProject} instance.
 * @param trigger The trigger.
 * @param project The project.
 */
public static void setTrigger(GerritTrigger trigger, AbstractProject project) {
  when(project.getTrigger(GerritTrigger.class)).thenReturn(trigger);
  HashMap<TriggerDescriptor, Trigger<?>> triggers = new HashMap<TriggerDescriptor, Trigger<?>>();
  triggers.put(new GerritTrigger.DescriptorImpl(), trigger);
  PowerMockito.when(project.getTriggers()).thenReturn(triggers);
}

代码示例来源:origin: jenkinsci/jenkins

/**
 * Schedules a polling of this project.
 * @see SCMTriggerItem#schedulePolling
 */
public boolean schedulePolling() {
  if(isDisabled())    return false;
  SCMTrigger scmt = getTrigger(SCMTrigger.class);
  if(scmt==null)      return false;
  scmt.run();
  return true;
}

代码示例来源:origin: jenkinsci/gerrit-trigger-plugin

/**
 * Sets GerritTrigger interested in specifed gerrit event.
 * @param patchsetCreated patch set.
 */
public void makeGerritInterestedInEvent(PatchsetCreated patchsetCreated) {
  GerritTrigger upstreamGerritTriggerMock = mock(GerritTrigger.class);
  when(abstractProjectDependencyMock.getTriggers()).thenReturn(
      Collections.<TriggerDescriptor, Trigger<?>>singletonMap(
          new GerritTrigger.DescriptorImpl(), upstreamGerritTriggerMock));
  when(abstractProjectDependencyMock.getTrigger(GerritTrigger.class)).thenReturn(upstreamGerritTriggerMock);
  when(upstreamGerritTriggerMock.isInteresting(patchsetCreated)).thenReturn(true);
}

代码示例来源:origin: jenkinsci/gitlab-plugin

GitLabPushTrigger trigger = project.getTrigger(GitLabPushTrigger.class);
if (trigger != null) {
  if (trigger.addCiMessage) {
GitLabPushTrigger trigger = project.getTrigger(GitLabPushTrigger.class);
if (trigger != null) {
  if (trigger.addNoteOnMergeRequest) {

代码示例来源:origin: jenkinsci/gerrit-trigger-plugin

/**
 * Create a queue item caused by the specified gerritCause.
 * @param gerritCause The gerritCause
 * @param dependency The dependency project list in a comma-separated string to add to the queue item.
 * @return the queue item
 */
private Queue.Item createItem(GerritCause gerritCause, String dependency) {
  List<Action> actions = new ArrayList<Action>();
  actions.add(new CauseAction(gerritCause));
  abstractProjectMock = mock(AbstractProject.class);
  when(abstractProjectMock.getTrigger(GerritTrigger.class)).thenReturn(gerritTriggerMock);
  when(abstractProjectMock.getTriggers()).thenReturn(triggers);
  abstractProjectDependencyMock = mock(AbstractProject.class);
  when(abstractProjectDependencyMock.getTrigger(GerritTrigger.class)).thenReturn(gerritTriggerMock);
  when(gerritTriggerMock.getDependencyJobsNames()).thenReturn(dependency);
  when(jenkinsMock.getItem(eq(dependency), any(Item.class), Item.class)).thenReturn(abstractProjectDependencyMock);
  ItemGroup abstractProjectDependencyMockParent = mock(ItemGroup.class);
  when(abstractProjectDependencyMockParent.getFullName()).thenReturn("");
  when(abstractProjectDependencyMock.getParent()).thenReturn(abstractProjectDependencyMockParent);
  when(abstractProjectDependencyMock.getName()).thenReturn(dependency);
  WaitingItem waitingItem = PowerMockito.spy(new WaitingItem(Calendar.getInstance(),
      abstractProjectMock, actions));
  when(waitingItem.getInQueueSince()).thenReturn(System.currentTimeMillis()
      - TimeUnit.SECONDS.toMillis(GerritDefaultValues.DEFAULT_BUILD_SCHEDULE_DELAY));
  return waitingItem;
}

代码示例来源:origin: timols/jenkins-gitlab-merge-request-builder-plugin

public static GitlabBuildTrigger getTrigger(AbstractProject project) {
  Trigger trigger = project.getTrigger(GitlabBuildTrigger.class);
  if (trigger == null || !(trigger instanceof GitlabBuildTrigger)) {
    return null;
  }
  return (GitlabBuildTrigger) trigger;
}

代码示例来源:origin: org.jenkins-ci.main/jenkins-core

@Override public SCMTrigger getSCMTrigger() {
  return delegate.asProject().getTrigger(SCMTrigger.class);
}
@Override public Collection<? extends SCM> getSCMs() {

代码示例来源:origin: org.jenkins-ci.main/jenkins-core

/**
 * Schedules a polling of this project.
 * @see SCMTriggerItem#schedulePolling
 */
public boolean schedulePolling() {
  if(isDisabled())    return false;
  SCMTrigger scmt = getTrigger(SCMTrigger.class);
  if(scmt==null)      return false;
  scmt.run();
  return true;
}

代码示例来源:origin: org.jvnet.hudson.main/hudson-core

/**
 * Schedules a polling of this project.
 */
public boolean schedulePolling() {
  if(isDisabled())    return false;
  SCMTrigger scmt = getTrigger(SCMTrigger.class);
  if(scmt==null)      return false;
  scmt.run();
  return true;
}

代码示例来源:origin: hudson/hudson-2.x

/**
 * Schedules a polling of this project.
 */
public boolean schedulePolling() {
  if(isDisabled())    return false;
  SCMTrigger scmt = getTrigger(SCMTrigger.class);
  if(scmt==null)      return false;
  scmt.run();
  return true;
}

代码示例来源:origin: org.eclipse.hudson/hudson-core

/**
 * Schedules a polling of this project.
 */
public boolean schedulePolling() {
  if (isDisabled()) {
    return false;
  }
  SCMTrigger scmt = getTrigger(SCMTrigger.class);
  if (scmt == null) {
    return false;
  }
  scmt.run();
  return true;
}

代码示例来源:origin: org.eclipse.hudson.main/hudson-core

/**
 * Schedules a polling of this project.
 */
public boolean schedulePolling() {
  if (isDisabled()) {
    return false;
  }
  SCMTrigger scmt = getTrigger(SCMTrigger.class);
  if (scmt == null) {
    return false;
  }
  scmt.run();
  return true;
}

代码示例来源:origin: KostyaSha/github-integration-plugin

/**
 * support matrix plugin.
 *
 * @see JobInfoHelpers#triggerFrom(hudson.model.Job, java.lang.Class)
 */
@CheckForNull
public static <T extends Trigger> T triggerFrom(final Job<?, ?> job, Class<T> tClass) {
  Job<?, ?> guessJob;
  if (job instanceof MatrixConfiguration) {
    guessJob = ((MatrixConfiguration) job).getParent();
  } else {
    guessJob = job;
  }
  if (guessJob instanceof AbstractProject<?, ?>) {
    final AbstractProject<?, ?> abstractProject = (AbstractProject<?, ?>) guessJob;
    return abstractProject.getTrigger(tClass);
  } else if (guessJob instanceof ParameterizedJobMixIn.ParameterizedJob) {
    ParameterizedJobMixIn.ParameterizedJob pJob = (ParameterizedJobMixIn.ParameterizedJob) guessJob;
    for (Trigger candidate : pJob.getTriggers().values()) {
      if (tClass.isInstance(candidate)) {
        return tClass.cast(candidate);
      }
    }
  }
  return null;
}

代码示例来源:origin: jenkinsci/gerrit-trigger-plugin

/**
 * Remove "Gerrit event" as a trigger in all jobs selecting this server.
 */
private void removeGerritTriggerInJobs() {
  for (Job job : getConfiguredJobs()) {
    if (!(job instanceof AbstractProject)) {
      logger.warn("Unable to remove Gerrit Trigger ffrom job [" + job.getName() + "]. "
          + " This feature is only supported for AbstractProject types e.g. Freestyle Jobs.");
      return;
    }
    AbstractProject project = (AbstractProject)job;
    GerritTrigger trigger = (GerritTrigger)project.getTrigger(GerritTrigger.class);
    trigger.stop();
    try {
      project.removeTrigger(trigger.getDescriptor());
    } catch (IOException e) {
      logger.error("Error removing Gerrit trigger from job [" + job.getName()
          + "]. Please check job config");
    }
    trigger = null;
    try {
      job.save();
    } catch (IOException e) {
      logger.error("Error saving configuration of job [" + job.getName()
          + "] while trying to remove Gerrit server [" + name + "]. Please check job config.");
    }
  }
}

代码示例来源:origin: jenkinsci/gerrit-trigger-plugin

/**
 * Test that it should not block item without GerritTrigger configured.
 */
@Test
public void shouldNotBlockItemWithoutGerritTrigger() {
  Item item = createItemWithOneSlave(new PatchsetCreated());
  when(abstractProjectMock.getTrigger(GerritTrigger.class)).thenReturn(null);
  assertNull("Build should not be blocked", dispatcher.canRun(item));
}

代码示例来源:origin: jenkinsci/gerrit-trigger-plugin

/**
 * Test that it should not block item without GerritTrigger configured.
 */
@Test
public void shouldNotBlockItemWithoutGerritTrigger() {
  Queue.Item item = createItem(new PatchsetCreated(), null);
  when(abstractProjectMock.getTrigger(GerritTrigger.class)).thenReturn(null);
  assertNull("Build should not be blocked", dispatcher.canRun(item));
}

代码示例来源:origin: jenkinsci/gerrit-trigger-plugin

/**
 * Tests a scenario when one build is successful and configured to be skipped.
 * Expected outcome is that
 * {@link BuildMemory.MemoryImprint#wereAllBuildsSuccessful()} will return true
 * As before the skip vote feature was implemented.
 */
@Test
public void testWereAllBuildsSuccessfulOneSuccessfulAndSkipped() {
  PatchsetCreated event = Setup.createPatchsetCreated();
  BuildMemory instance = new BuildMemory();
  SkipVote skipVote = new SkipVote(true, false, false, false);
  GerritTrigger trigger = mock(GerritTrigger.class);
  when(trigger.getSkipVote()).thenReturn(skipVote);
  when(project.getTrigger(eq(GerritTrigger.class))).thenReturn(trigger);
  triggers.put(descriptor, trigger);
  when(build.getResult()).thenReturn(Result.SUCCESS);
  instance.started(event, build);
  instance.completed(event, build);
  MemoryImprint memoryImprint = instance.getMemoryImprint(event);
  assertTrue(memoryImprint.wereAllBuildsSuccessful());
}

代码示例来源:origin: jenkinsci/gerrit-trigger-plugin

/**
 * Tests a scenario when one build is unstable and configured to be skipped.
 * Expected outcome is that
 * {@link BuildMemory.MemoryImprint#wereAllBuildsSuccessful()} will return false and
 * {@link BuildMemory.MemoryImprint#wereAnyBuildsUnstable()} will return true.
 * As before the skip vote feature was implemented.
 */
@Test
public void testWereAllBuildsSuccessfulOneUnstableAndSkipped() {
  PatchsetCreated event = Setup.createPatchsetCreated();
  BuildMemory instance = new BuildMemory();
  SkipVote skipVote = new SkipVote(false, false, true, false);
  GerritTrigger trigger = mock(GerritTrigger.class);
  when(trigger.getSkipVote()).thenReturn(skipVote);
  when(project.getTrigger(eq(GerritTrigger.class))).thenReturn(trigger);
  triggers.put(descriptor, trigger);
  when(build.getResult()).thenReturn(Result.UNSTABLE);
  instance.started(event, build);
  instance.completed(event, build);
  MemoryImprint memoryImprint = instance.getMemoryImprint(event);
  assertFalse(memoryImprint.wereAllBuildsSuccessful());
  assertTrue(memoryImprint.wereAnyBuildsUnstable());
}

代码示例来源:origin: jenkinsci/promoted-builds-plugin

protected void post2(BuildListener listener) throws Exception {
  if (getTarget() == null) {
    listener.error("No Promotion target, cannot save target or update status");
    return;
  }
  if(getResult()== Result.SUCCESS)
    getStatus().onSuccessfulPromotion(Promotion.this);
  // persist the updated build record
  getTarget().save();
  if (getResult() == Result.SUCCESS) {
    // we should evaluate any other pending promotions in case
    // they had a condition on this promotion
    PromotedBuildAction pba = getTarget().getAction(PromotedBuildAction.class);
    for (PromotionProcess pp : pba.getPendingPromotions()) {
      pp.considerPromotion2(getTarget());
    }
    // tickle PromotionTriggers
    for (AbstractProject<?,?> p : JenkinsHelper.getInstance().getAllItems(AbstractProject.class)) {
      PromotionTrigger pt = p.getTrigger(PromotionTrigger.class);
      if (pt!=null)
        pt.consider(Promotion.this);
    }
  }
}

相关文章

微信公众号

最新文章

更多

AbstractProject类方法