当前位置: 首页>>代码示例>>Java>>正文


Java SCMHead类代码示例

本文整理汇总了Java中jenkins.scm.api.SCMHead的典型用法代码示例。如果您正苦于以下问题:Java SCMHead类的具体用法?Java SCMHead怎么用?Java SCMHead使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


SCMHead类属于jenkins.scm.api包,在下文中一共展示了SCMHead类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: isExcluded

import jenkins.scm.api.SCMHead; //导入依赖的package包/类
/**
 * {@inheritDoc}
 */
@Override
public boolean isExcluded(@NonNull SCMSourceRequest request, @NonNull SCMHead head) {
    if (head instanceof BranchSCMHead && request instanceof GiteaSCMSourceRequest) {
        for (GiteaPullRequest p : ((GiteaSCMSourceRequest) request).getPullRequests()) {
            // only match if the pull request is an origin pull request
            if (p.getBase().getRepo().getOwner().getUsername()
                    .equalsIgnoreCase(p.getHead().getRepo().getOwner().getUsername())
                    && p.getBase().getRepo().getName().equalsIgnoreCase(p.getHead().getRepo().getName())
                    && p.getHead().getRef().equals(head.getName())) {
                return true;
            }
        }
    }
    return false;
}
 
开发者ID:jenkinsci,项目名称:gitea-plugin,代码行数:19,代码来源:BranchDiscoveryTrait.java

示例2: given__child_file__when__content__then__contents_returned

import jenkins.scm.api.SCMHead; //导入依赖的package包/类
@Test
public void given__child_file__when__content__then__contents_returned() throws Exception {
    ASFGitSCMFileSystem fs = new ASFGitSCMFileSystem(serverRootUrl + "/maven.git", new SCMHead("master"), null);
    assertThat(fs.getRoot().child(".gitignore").contentAsString(), is("target/\n"
            + ".project\n"
            + ".classpath\n"
            + ".settings/\n"
            + ".svn/\n"
            + "bin/\n"
            + "# Intellij\n"
            + "*.ipr\n"
            + "*.iml\n"
            + ".idea\n"
            + "out/\n"
            + ".DS_Store\n"
            + "/bootstrap\n"
            + "/dependencies.xml\n"
            + ".java-version\n"));
}
 
开发者ID:stephenc,项目名称:asf-gitpubsub-jenkins-plugin,代码行数:20,代码来源:ASFGitSCMFileTest.java

示例3: isAutomaticBuild

import jenkins.scm.api.SCMHead; //导入依赖的package包/类
@SuppressWarnings("SimplifiableIfStatement")
private boolean isAutomaticBuild(GitLabSCMSource source, SCMHead head) {
    if (head instanceof TagSCMHead) {
        return source.getSourceSettings().getTagMonitorStrategy().getBuild();
    }

    if (head instanceof GitLabSCMBranchHead) {
        return !((GitLabSCMBranchHead) head).hasMergeRequest() || source.getSourceSettings().getBranchMonitorStrategy().getBuildBranchesWithMergeRequests();
    }

    if (head instanceof GitLabSCMMergeRequestHead) {
        return isAutomaticBuild(source, (GitLabSCMMergeRequestHead) head);
    }

    return true;
}
 
开发者ID:Argelbargel,项目名称:gitlab-branch-source-plugin,代码行数:17,代码来源:GitLabSCMBranchBuildStrategy.java

示例4: retrieve

import jenkins.scm.api.SCMHead; //导入依赖的package包/类
@Nonnull
private List<Action> retrieve(@Nonnull SCMRevisionImpl revision, @CheckForNull SCMHeadEvent event, @Nonnull TaskListener listener) throws IOException, InterruptedException {
    List<Action> actions = new ArrayList<>();

    String hash = revision.getHash();
    Action linkAction = GitLabLinkAction.toCommit(source.getProject(), hash);
    actions.add(linkAction);

    SCMHead head = revision.getHead();
    if (head instanceof GitLabSCMMergeRequestHead) {
        actions.add(createHeadMetadataAction(head.getName(), ((GitLabSCMMergeRequestHead) head).getSource(), hash, linkAction.getUrlName()));
    } else if (head instanceof GitLabSCMHead) {
        actions.add(createHeadMetadataAction(head.getName(), (GitLabSCMHead) head, hash, linkAction.getUrlName()));
    }

    if (event instanceof GitLabSCMEvent) {
        actions.add(new GitLabSCMCauseAction(((GitLabSCMEvent) event).getCause()));
    }

    return actions;
}
 
开发者ID:Argelbargel,项目名称:gitlab-branch-source-plugin,代码行数:22,代码来源:SourceActions.java

示例5: getBranch

import jenkins.scm.api.SCMHead; //导入依赖的package包/类
@Nonnull
@Override
public Branch getBranch(@Nonnull P project) {
    BranchProjectProperty property = project.getProperty(BranchProjectProperty.class);

    /*
     * Ugly hackish stuff, in the event that the user configures a branch project directly, thereby removing the
     * BranchProjectProperty.  The property must exist and we can't bash the @Nonnull return value restriction!
     *
     * Fudge some generic Branch with the expectation that indexing will soon reset the Branch with proper values,
     * or that it will be converted to Branch.Dead and the guessed values for sourceId and properties won't matter.
     */
    if (property == null) {
        Branch branch = new Branch("unknown", new SCMHead(project.getDisplayName()), project.getScm(),
                Collections.<BranchProperty>emptyList());
        setBranch(project, branch);
        return branch;
    }

    return property.getBranch();
}
 
开发者ID:jenkinsci,项目名称:multi-branch-project-plugin,代码行数:22,代码来源:TemplateDrivenBranchProjectFactory.java

示例6: doRun

import jenkins.scm.api.SCMHead; //导入依赖的package包/类
/** {@inheritDoc} */
@Override
protected Result doRun(BuildListener listener)
    throws IOException, InterruptedException {

  // Attach an SCMRevisionAction with our revision
  {
    final SCMHead head = getParent().getBranch().getHead();
    final SCMSource source = getParent().getSource();
    final SCMRevision revision = source.fetch(head, listener);
    TestBuild.this.addAction(new SCMRevisionAction(checkNotNull(revision)));
  }

  try {
    project.innerItem.scheduleBuild2(0,
        new Cause.UpstreamCause(TestBuild.this)).get();
  } catch (ExecutionException e) {
    return Result.FAILURE;
  }
  return Result.SUCCESS;
}
 
开发者ID:jenkinsci,项目名称:yaml-project-plugin,代码行数:22,代码来源:TestBuild.java

示例7: build

import jenkins.scm.api.SCMHead; //导入依赖的package包/类
@Override
public PerforceScm build(SCMHead head, SCMRevision revision) {
	if (head instanceof P4Head && revision instanceof P4Revision) {
		P4Head perforceHead = (P4Head) head;
		P4Revision perforceRevision = (P4Revision) revision;

		// Build workspace from 'head' paths
		List<P4Path> paths = perforceHead.getPaths();
		Workspace workspace = getWorkspace(paths);

		// Build populate from revision
		String pin = perforceRevision.getRef().toString();
		Populate populate = new GraphHybridImpl(true, pin, null);
		PerforceScm scm = new PerforceScm(getCredential(), workspace, null, populate, getBrowser());
		return scm;
	} else {
		throw new IllegalArgumentException("SCMHead and/or SCMRevision not a Perforce instance!");
	}
}
 
开发者ID:p4paul,项目名称:p4-jenkins,代码行数:20,代码来源:GlobalLibraryScmSource.java

示例8: getPullRequest

import jenkins.scm.api.SCMHead; //导入依赖的package包/类
public static PullRequestSCMHead getPullRequest(@Nonnull final Job job) throws Exception {
    PullRequestSCMHead head = (PullRequestSCMHead) SCMHead.HeadByItem.findHead(job);
    if (head == null) {
        throw new IllegalStateException("Build is not a pull request");
    }
    return head;
}
 
开发者ID:aaronjwhiteside,项目名称:pipeline-github,代码行数:8,代码来源:GitHubHelper.java

示例9: start

import jenkins.scm.api.SCMHead; //导入依赖的package包/类
@Override
public void start(final WorkflowJob project, final boolean newInstance) {
    super.start(project, newInstance);
    // we only care about pull requests
    if (SCMHead.HeadByItem.findHead(project) instanceof PullRequestSCMHead) {
        DescriptorImpl.jobs.put(getKey(project), project);
    }
}
 
开发者ID:aaronjwhiteside,项目名称:pipeline-github,代码行数:9,代码来源:IssueCommentTrigger.java

示例10: getKey

import jenkins.scm.api.SCMHead; //导入依赖的package包/类
private String getKey(final WorkflowJob project) {
    GitHubSCMSource scmSource = (GitHubSCMSource) SCMSource.SourceByItem.findSource(project);
    PullRequestSCMHead scmHead = (PullRequestSCMHead) SCMHead.HeadByItem.findHead(project);

    return String.format("%s/%s/%d",
            scmSource.getRepoOwner(),
            scmSource.getRepository(),
            scmHead.getNumber());
}
 
开发者ID:aaronjwhiteside,项目名称:pipeline-github,代码行数:10,代码来源:IssueCommentTrigger.java

示例11: forRun

import jenkins.scm.api.SCMHead; //导入依赖的package包/类
@Nonnull
@Override
public Collection<GlobalVariable> forRun(final Run<?, ?> run) {
    if (run == null) {
        return Collections.emptyList();
    }
    SCMHead scmHead = SCMHead.HeadByItem.findHead(run.getParent());
    if (scmHead instanceof PullRequestSCMHead) {
        Collection<GlobalVariable> result = new LinkedList<>();
        result.add(new PullRequestGlobalVariable());
        return result;
    }
    return Collections.emptyList();
}
 
开发者ID:aaronjwhiteside,项目名称:pipeline-github,代码行数:15,代码来源:GitHubPipelineGlobalVariables.java

示例12: headsFor

import jenkins.scm.api.SCMHead; //导入依赖的package包/类
/**
 * {@inheritDoc}
 */
@NonNull
@Override
public Map<SCMHead, SCMRevision> headsFor(GiteaSCMSource source) {
    String ref = getPayload().getRef();
    ref = ref.startsWith(Constants.R_HEADS) ? ref.substring(Constants.R_HEADS.length()) : ref;
    BranchSCMHead h = new BranchSCMHead(ref);
    return Collections.<SCMHead, SCMRevision>singletonMap(h,
            StringUtils.isNotBlank(getPayload().getAfter())
                    ? new BranchSCMRevision(h, getPayload().getAfter()) : null);
}
 
开发者ID:jenkinsci,项目名称:gitea-plugin,代码行数:14,代码来源:GiteaPushSCMEvent.java

示例13: GiteaSCMSourceRequest

import jenkins.scm.api.SCMHead; //导入依赖的package包/类
/**
 * Constructor.
 *
 * @param source   the source.
 * @param context  the context.
 * @param listener the listener.
 */
GiteaSCMSourceRequest(SCMSource source, GiteaSCMSourceContext context, TaskListener listener) {
    super(source, context, listener);
    fetchBranches = context.wantBranches();
    fetchTags = context.wantTags();
    fetchOriginPRs = context.wantOriginPRs();
    fetchForkPRs = context.wantForkPRs();
    originPRStrategies = fetchOriginPRs && !context.originPRStrategies().isEmpty()
            ? Collections.unmodifiableSet(EnumSet.copyOf(context.originPRStrategies()))
            : Collections.<ChangeRequestCheckoutStrategy>emptySet();
    forkPRStrategies = fetchForkPRs && !context.forkPRStrategies().isEmpty()
            ? Collections.unmodifiableSet(EnumSet.copyOf(context.forkPRStrategies()))
            : Collections.<ChangeRequestCheckoutStrategy>emptySet();
    Set<SCMHead> includes = context.observer().getIncludes();
    if (includes != null) {
        Set<Long> pullRequestNumbers = new HashSet<>(includes.size());
        Set<String> branchNames = new HashSet<>(includes.size());
        Set<String> tagNames = new HashSet<>(includes.size());
        for (SCMHead h : includes) {
            if (h instanceof BranchSCMHead) {
                branchNames.add(h.getName());
            } else if (h instanceof PullRequestSCMHead) {
                pullRequestNumbers.add(Long.parseLong(((PullRequestSCMHead) h).getId()));
                if (SCMHeadOrigin.DEFAULT.equals(h.getOrigin())) {
                    branchNames.add(((PullRequestSCMHead) h).getOriginName());
                }
            } else if (h instanceof TagSCMHead) { // TODO replace with concrete class when tag support added
                tagNames.add(h.getName());
            }
        }
        this.requestedPullRequestNumbers = Collections.unmodifiableSet(pullRequestNumbers);
        this.requestedOriginBranchNames = Collections.unmodifiableSet(branchNames);
        this.requestedTagNames = Collections.unmodifiableSet(tagNames);
    } else {
        requestedPullRequestNumbers = null;
        requestedOriginBranchNames = null;
        requestedTagNames = null;
    }
}
 
开发者ID:jenkinsci,项目名称:gitea-plugin,代码行数:46,代码来源:GiteaSCMSourceRequest.java

示例14: headsFor

import jenkins.scm.api.SCMHead; //导入依赖的package包/类
/**
 * {@inheritDoc}
 */
@NonNull
@Override
public Map<SCMHead, SCMRevision> headsFor(GiteaSCMSource source) {
    String ref = getPayload().getRef();
    ref = ref.startsWith(Constants.R_HEADS) ? ref.substring(Constants.R_HEADS.length()) : ref;
    BranchSCMHead h = new BranchSCMHead(ref);
    return Collections.<SCMHead, SCMRevision>singletonMap(h, new BranchSCMRevision(h, getPayload().getSha()));
}
 
开发者ID:jenkinsci,项目名称:gitea-plugin,代码行数:12,代码来源:GiteaCreateSCMEvent.java

示例15: GiteaSCMBuilder

import jenkins.scm.api.SCMHead; //导入依赖的package包/类
/**
 * Constructor.
 *
 * @param source   the {@link GiteaSCMSource}.
 * @param head     the {@link SCMHead}
 * @param revision the (optional) {@link SCMRevision}
 */
public GiteaSCMBuilder(@NonNull GiteaSCMSource source,
                       @NonNull SCMHead head, @CheckForNull SCMRevision revision) {
    super(
            head,
            revision,
            checkoutUriTemplate(null, source.getServerUrl(), null, null)
                    .set("owner", source.getRepoOwner())
                    .set("repository", source.getRepository())
                    .expand(),
            source.getCredentialsId()
    );
    this.context = source.getOwner();
    serverUrl = source.getServerUrl();
    repoOwner = source.getRepoOwner();
    repository = source.getRepository();
    sshRemote = source.getSshRemote();
    // now configure the ref specs
    withoutRefSpecs();
    String repoUrl;
    if (head instanceof PullRequestSCMHead) {
        PullRequestSCMHead h = (PullRequestSCMHead) head;
        withRefSpec("+refs/pull/" + h.getId() + "/head:refs/remotes/@{remote}/" + head
                .getName());
        repoUrl = repositoryUrl(h.getOriginOwner(), h.getOriginRepository());
    } else {
        withRefSpec("+refs/heads/" + head.getName() + ":refs/remotes/@{remote}/" + head.getName());
        repoUrl = repositoryUrl(repoOwner, repository);
    }
    // pre-configure the browser
    withBrowser(new GiteaBrowser(repoUrl));
}
 
开发者ID:jenkinsci,项目名称:gitea-plugin,代码行数:39,代码来源:GiteaSCMBuilder.java


注:本文中的jenkins.scm.api.SCMHead类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。