1
jenkinsでパイプラインプラグインを使用しています。私のJenkinsfile
はnumToEcho =1,2,3,4
ですが、Test.myNumbers()
に電話して値のリストを取得したいと思います。ジェンキンスでPipelineプラグインを使用してJenkinsfileでjava関数を呼び出す方法
- JenkinsfileでmyNumbers()Java関数を呼び出すにはどうすればよいですか?
- また、別のGroovyスクリプトファイルとそのファイルをTestクラスを持つjava jarの中に置く必要がありますか?
マイJenkinsfile:
def numToEcho = [1,2,3,4]
def stepsForParallel = [:]
for (int i = 0; i < numToEcho.size(); i++) {
def s = numToEcho.get(i)
def stepName = "echoing ${s}"
stepsForParallel[stepName] = transformIntoStep(s)
}
parallel stepsForParallel
def transformIntoStep(inputNum) {
return {
node {
echo inputNum
}
}
}
import com.sample.pipeline.jenkins
public class Test{
public ArrayList<Integer> myNumbers() {
ArrayList<Integer> numbers = new ArrayList<Integer>();
numbers.add(5);
numbers.add(11);
numbers.add(3);
return(numbers);
}
}
Thanks..thisは、問題がある、私は.groovyファイルの中でその関数を記述カント、それはのリスト(実際のJava機能は、データを盗んますfile.Theのjavaでなければならない非常にhelpful..Actuallyです値)を.groovyファイルに書き込むことはできません。どうすればJenkinsfileやgroovyscriptからJavaメソッドを呼び出すことができますか? – User12345
Jenkinsfile: ノード{ sh 'java jar titanRead.jar' echo inputNum } 上記の部分は並列部分です。この並列実行の数はリストのサイズに依存します(上記のプログラムリストのサイズは5であるので、それはタイタンから読み込まれます)。そのリストも、私はtitan dbからjava関数を使用して取得する必要があります。 – User12345
Jenkinsで何かを実行できるので、Javaプログラムを実行してその出力を解析できます。私は例を含める答えを更新しました。 –