2017-03-11 6 views
1

Jenkinsサーバーの/tmpディレクトリのディレクトリ名(absパスではなく)をActive choice Reactive parameter Pluginを使用してJenkinsドロップダウンディレクトリに表示したいとします。Jenkinsドロップダウンでディレクトリ名を表示する方法

以下のコードを使用して表示しました。 しかし、出力にそのパスと共に表示されていました。

例えば出力:

を/ tmp /にdirectory1
を/ tmp/directory2

私はディレクトリのパスなし:(として出力を必要とする)

にdirectory1
ディレクトリ2

「アクティブな選択反応パラメータプラグイン」のグルーヴィーなスクリプト部分で使用されるコード

import groovy.io.FileType 

def list = [] 

def dir = new File("/tmp/") 
dir.eachFileRecurse (FileType.FILES) { file -> 
    list << file 
} 

list.each { 
    println it.path 
} 
+0

あなたは 'println it.name'を使用できません。 –

+0

は' println it.name'を使って同じ出力を得て、パスを –

答えて

1

ここに行く:

使用DIRECTORIES代わりFILES

import static groovy.io.FileType.DIRECTORIES 

def list = [] 

new File('/tmp').eachFileRecurse (DIRECTORIES) { file -> 
    list << file.name 
} 
println list 

のあなたが再帰必要がない場合eachFileRecurseの代わりにeachFileを使用してください。

EDIT:OPのコメントに基づいて、最後のステートメントとして代わりにprint listの 使用return list上記のスクリプトではジェンキンスでリストを表示するよう。

+0

で両方を使用しても出力は表示されませんでした。 '/ tmp /'フォルダ3の下にある ディレクトリには、そのパスの外にそれらを表示する必要があります。 (つまり)出力で '/ tmp/directory1'だけ' directory1'としてではありません –

+0

テスト済みのコードスニペットが提供されています。それは表示されます。どのようにテストしていますか? – Rao

+0

Jenkins-Active choiceリアクティブパラメータプラグインのgroovyスクリプト部分に上記のコードを変更せずに使用しました –

関連する問題