如果文件夹中没有任何内容,则詹金斯管道退出

时间:2018-12-05 12:38:51

标签: jenkins jenkins-pipeline pipeline

我正在寻找一种方法来告诉詹金斯,如果某个特定文件夹中没有文件,他将取消作业并将其标记为不稳定。

有人可以帮我吗?我认为可以通过if else查询解决整个问题。

stage('Building') {
    if nothing in the folder {
        exit
        echo '[FAILURE] Failed to build'
        currentBuild.result = 'FAILURE'
    }
}

2 个答案:

答案 0 :(得分:1)

您可以尝试以下操作:

def isDirEmpty() { def myDirectory = sh(script: "ls", returnStdout: true).trim() println(myDirectory) return null == myDirectory || "".equals(myDirectory) }

根据我的经验,使用sh是找出此问题的最安全方法

答案 1 :(得分:0)

这是一种跨平台的方法,用于检查目录是否为空,但是,如果您将其沙箱化,则应启用File(String)签名:

<html>
<body>
    <!--<div><button name="locationdiv" onclick="getLocation()">Get Location</button> </div>-->
    <div><button name="citydiv" onclick="getCity()">Current City</button> </div>
</body>    
<script>


    function getCity(){

        const url = "https://nominatim.openstreetmap.org/reverse?format=json&lat=12.93&lon=80.17&zoom=18&addressdetails=1";
        const req = new XMLHttpRequest();
        req.responseType = 'json';
        req.open("GET", url, true);
        req.send();
        var jsonResponse = JSON.parse(req.responseText);
        var newElement2  = document.createElement("div");
        newElement2.innerHTML = Http.responseJSON.address.country;
        document.body.appendChild(newElement2);}

</script>