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


Java AbstractBuild.getUrl方法代码示例

本文整理汇总了Java中hudson.model.AbstractBuild.getUrl方法的典型用法代码示例。如果您正苦于以下问题:Java AbstractBuild.getUrl方法的具体用法?Java AbstractBuild.getUrl怎么用?Java AbstractBuild.getUrl使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在hudson.model.AbstractBuild的用法示例。


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

示例1: perform

import hudson.model.AbstractBuild; //导入方法依赖的package包/类
@Override
public boolean perform(AbstractBuild build, Launcher launcher, BuildListener listener) {
    // The global configuration, used to fetch the instance url
    JenkinsLocationConfiguration globalConfig = new JenkinsLocationConfiguration();

    // Create a new webhook payload
    DiscordWebhook wh = new DiscordWebhook(this.webhookURL);

    if (this.webhookURL.isEmpty()) {
        // Stop the plugin from continuing when the webhook URL isn't set. Shouldn't happen due to form validation
        listener.getLogger().println("The Discord webhook is not set!");
        return true;
    }

    if (this.enableUrlLinking && (globalConfig.getUrl() == null || globalConfig.getUrl().isEmpty())) {
        // Disable linking when the instance URL isn't set
        listener.getLogger().println("Your Jenkins URL is not set (or is set to localhost)! Disabling linking.");
        this.enableUrlLinking = false;
    }

    if (this.sendOnStateChange) {
        if (build.getResult().equals(build.getPreviousBuild().getResult())) {
            // Stops the webhook payload being created if the status is the same as the previous
            return true;
        }
    }

    boolean buildStatus = build.getResult().isBetterOrEqualTo(Result.SUCCESS);
    wh.setTitle(build.getProject().getDisplayName() + " #" + build.getId());

    String descriptionPrefix;

    // Adds links to the description and title if enableUrlLinking is enabled
    if (this.enableUrlLinking) {
        String url = globalConfig.getUrl() + build.getUrl();
        descriptionPrefix = "**Build:** "
            + getMarkdownHyperlink(build.getId(), url)
            + "\n**Status:** "
            + getMarkdownHyperlink(build.getResult().toString().toLowerCase(), url);
        wh.setURL(url);
    } else {
        descriptionPrefix = "**Build:** "
                + build.getId()
                + "\n**Status:** "
                + build.getResult().toString().toLowerCase();
    }

    wh.setDescription(new EmbedDescription(build, globalConfig, descriptionPrefix, this.enableArtifactList).toString());
    wh.setStatus(buildStatus);

    if (this.enableFooterInfo) wh.setFooter("Jenkins v" + build.getHudsonVersion() + ", " + getDescriptor().getDisplayName() + " v" + getDescriptor().getVersion());

    try { wh.send(); }
    catch (WebhookException e) { e.printStackTrace(); }

    return true;
}
 
开发者ID:jammehcow,项目名称:jenkins-discord,代码行数:58,代码来源:WebhookPublisher.java

示例2: EmbedDescription

import hudson.model.AbstractBuild; //导入方法依赖的package包/类
public EmbedDescription(AbstractBuild build, JenkinsLocationConfiguration globalConfig, String prefix, boolean enableArtifactsList) {
    String artifactsURL = globalConfig.getUrl() + build.getUrl() + "artifact/";
    this.prefix = prefix;
    this.changesList.add("\n**Changes:**\n");
    if (enableArtifactsList) this.artifactsList.add("\n**Artifacts:**\n");
    Object[] changes = build.getChangeSet().getItems();

    if (changes.length == 0) {
        this.changesList.add("\n*No changes.*\n");
    } else {
        for (Object o : changes) {
            ChangeLogSet.Entry entry = (ChangeLogSet.Entry) o;
            String commitID = (entry.getParent().getKind().equalsIgnoreCase("svn")) ? entry.getCommitId() : entry.getCommitId().substring(0, 6);

            this.changesList.add("   - ``" + commitID + "`` *" + entry.getMsg() + " - " + entry.getAuthor().getFullName() + "*\n");
        }
    }

    if (enableArtifactsList) {
        //noinspection unchecked
        List<Run.Artifact> artifacts = build.getArtifacts();
        if (artifacts.size() == 0) {
            this.artifactsList.add("\n*No artifacts saved.*");
        } else {
            for (Run.Artifact artifact : artifacts) {
                this.artifactsList.add(" - " + artifactsURL + artifact.getHref() + "\n");
            }
        }
    }

    while (this.getCurrentDescription().length() > maxEmbedStringLength) {
        if (this.changesList.size() > 5) {
            // Dwindle the changes list down to 5 changes.
            while (this.changesList.size() != 5) this.changesList.removeLast();
        } else if (this.artifactsList.size() > 1) {
            this.artifactsList.clear();
            this.artifactsList.add(artifactsURL);
        } else {
            // Worst case scenario: truncate the description.
            this.finalDescription = this.getCurrentDescription().substring(0, maxEmbedStringLength - 1);
            return;
        }
    }

    this.finalDescription = this.getCurrentDescription();
}
 
开发者ID:jammehcow,项目名称:jenkins-discord,代码行数:47,代码来源:EmbedDescription.java


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