簡體   English   中英

如何引用詹金斯全球共享庫

[英]How to Reference A Jenkins Global Shared Library

在審查了文檔 ,關於SO的許多問題並嘗試了十幾種不同的腳本配置之后,我不知道如何引用共享的Groovy庫。 我像這樣添加了庫:

Jenkins庫配置

這似乎正在工作。 我像這樣引用腳本:

Jenkins腳本參考構建

您可以在其中看到錯誤消息:

腳本1:1:無法解析類庫,無法找到用於注解的類@第1行,第1列。@Library('sonarQubeAPI')_

腳本代碼(我認為並不重要)如下所示:

import groovy.json.JsonSlurper

class SonarQubeAPI{
    static string getVersion(){
        return "1.0";
    }

    static void getSonarStatus(projectKey){
        def sonarQubeUserToken = "USERTOKEN";
        def projectStatusUrl = "pathtosonarqube/api/qualitygates/project_status?projectKey=" + projectKey;

        println("Retrieving project status for " + projectKey);

        def json = getJson(sonarQubeUserToken, projectStatusUrl);

        def jsonSlurper = new JsonSlurper();
        def object = jsonSlurper.parseText(json);

        println(object.projectStatus.status);
    }

    static string getJson(userToken, url){
        def authString  = "${userToken}:".getBytes().encodeBase64().toString();

        def conn = url.toURL().openConnection();
        conn.setRequestProperty( "Authorization", "Basic ${authString}" );

        return conn.content.text;
    }
}

我可能只是一個魔術人物,但我似乎無法將其鎖定。

共享庫是Jenkins Pipelines的功能,而不是Jenkins(核心)本身的功能。 您只能在管道作業(和子類型(例如多分支管道))中使用它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM