2017-01-23 9 views
0

古いビルドをクリーンアップするジョブをスケジュールしたいので、以下のスクリプトを設定しましたが、Jenkinsのスクリプトコンソールで動作し、Jenkinsのジョブ設定では動作しません。ジョブを実行しながら、私はエラーの下に取得しています:CloudbeeとJenkinsで古いビルドをクリーンアップする方法は?

Processing provided DSL script ERROR: (script, line 5) No such property: Jenkins for class: script Finished: FAILURE.my scripts is"

コード:

MAX_BUILDS = 2 
for (job in Jenkins.instance.items) { 
    println job.name 

    def recent = job.builds.limit(MAX_BUILDS) 

    for (build in job.builds) { 
    if (!recent.contains(build)) { 
     println "Preparing to delete: " + build 
     build.delete() 
    } 
    } 
} 

答えて

0

ジェンキンススクリプトコンソールは自動的にパッケージjenkins.*jenkins.model.*hudson.*、そしてhudson.model.*をインポートします。しかし、仕事DSLが自動的にこれらのパッケージをインポートしません、あなたはあなたのスクリプトの先頭

import jenkins.* 
import jenkins.model.* 
import hudson.* 
import hudson.model.* 

// your script 

でしかし、単に、例えば、あなたが必要なクラスをインポートするには、きれいになることをしなければなりませんjenkins.model.Jenkins

import jenkins.model.Jenkins 

// your script 
+0

今私のスクリプトがエラーを投げて罰金が、マルチブランチプロジェクトですので、おかげでdaspilker uがplsはマルチブランチプロジェクトを除外する方法上記のスクリプトに私を助けることができます –

関連する問題