jenkins LTS 2.164.2 で試しました、別のpcのjenkinsに設定を移動するのが目的です。
ググってみると便利なgui系は存在せずコマンドプロンプトから攻めるみたいです。(もしかしたら便利な魔法あるかもしれないですが
Jenkins CLI
Jenkins – an open source automation server which enables developers around the world to reliably build, test, and deploy their software
まずはジョブの一覧出してみる
java -jar jenkins-cli.jar -s http://localhost:8080 -auth {user}:{path} list-jobs
まずはjobの一覧を表示してみましょう。これができなきゃ先に進めません。pathは通ってないのでカレントフォルダはjenkins-cli.jarのあるフォルダにしました。
set JENKINS_URL=http://localhost:8080
java -jar jenkins-cli.jar -auth {user}:{path} list-jobs
事前に専用の環境変数JENKINS_URLに値を設定しておけば-sは省けます
最もベーシックなhttp connection modeを使いましたが、ssh conection modeも存在します。認証方法もファイルから読み込んだり、環境変数$JENKINS_USER_ID $JENKINS_API_TOKENを使う方法もあるみたいです。詳細はリンク先の公式doc読んでください
job設定をexport
java -jar jenkins-cli.jar -s http://localhost:8080 -auth {user}:{path} get-job {job} > C:\tmp\hoge.xml
注意点、jenkinsは標準ではwindows system系のフォルダにインストールされています。そのため一般ユーザーにはファイル書き込みの権限がありません。上記書き出し先で単純にUnityBuild.xmlとか指定すると権限がなく「アクセスが拒否されました。」となります
job設定のimport
java -jar jenkins-cli.jar -s http://localhost:8080 -auth {user}:{path} create-job {job} < C:\tmp\hoge.xml
これは移行先のPCで行うコマンドです。
無事ジョブをコピーできました。