2017-12-18 4 views
1

私はジェンキンスでパイプラインプロジェクトのコピーを作成する方法を探しています。私が通常のプロジェクトを選択すると、サイドバーに "Copy Project"というオプションが表示されますが、それはパイプラインプロジェクトにはありません。パイプラインをコピーすることは可能ですか?ジェンキンスパイプラインプロジェクトをコピー

+1

https://issues.jenkins-ci.org/plugins/servlet/mobile#issue/JENKINS-32756 – slashpai

+0

をチェックしてください。おかげさまで、@slashpaiに感謝します。 – NeoTheThird

+0

[ジーンズでジョブを複製するにはどうすればいいですか?](https://stackoverflow.com/questions/23838259/how-do-i-clone-a-job-in-jenkins) – mkobit

答えて

1

UIでこれを行う方法がわかりません。そのためにはJenkins CLIを使用しています。私は私が持っているすべてのジェンキンスマスターのためのサブフォルダを持っており、それらのサブフォルダがjenkins_url.txtcredentials_api.txtを含んでいるので

#!/bin/sh 
#file: jenkins_cli.sh 
cd $1 
if [ -z ${JENKINS_CREDENTIALS+x} -o -z ${JENKINS_SERVER+x} ] 
    then 
    JENKINS_SERVER=$(<jenkins_url.txt) 
    JENKINS_CREDENTIALS=$(<credentials_api.txt) 
fi 
java -jar jenkins-cli.jar -s $JENKINS_SERVER -auth $JENKINS_CREDENTIALS ${@:2} | dos2unix 

:私はこのようになりますコマンドラインのラッパーを書きました。私はこのようなコマンドを呼び出します:./jenkins_cli <jenkinsxyz> help。 1ジェンキンスマスターの仕事を保存するには

が、私はこのスクリプトを作成しました:私はunix2dosといったにすべてをパイプしていますなぜ

#!/bin/sh 
# save all job configurations locally 
# 
# parameters: 
# directory with credentials_api.txt, jenkins_url.txt and jenkins-cli.jar of 
# the jenkins server that will be backuped 
cd $1 
CLI="./../jenkins_cli.sh" 

echo "create backup folder.." 
mkdir -p backup 

echo "save job list.." 
. $CLI . list-jobs | unix2dos.exe > jobs.txt 

echo "save job configuration.." 
LOOPS=$(wc -l < jobs.txt) 
for l in $(seq $LOOPS); do 
    JOBNAME=$(tail -n+$l jobs.txt | head -n1) 
    . $CLI . get-job "$JOBNAME" > ./backup/$JOBNAME.xml 
    echo "saved job nr. $l: $JOBNAME" 
done 

ない素敵な、それが動作します:)と私はWindows用のGitを使用しています、thatsの。

+0

作品、ありがとうございます。 – NeoTheThird

+0

が忘れてしまったこと:新しいマスタに保存されたジョブを作成したい場合は './jenkins_cli create-job tim