2017-11-28 11 views
0

グローバルリポジトリをパイプラインJenkinsfileから呼び出すことのできるいくつかのPythonスクリプトと共有したいと思います。パイプラインの共有フォルダから複数のスクリプトをロード

私はグローバル共有を作成し、@Library('...') _をJenkinsfileに追加しました。指定されたレポをクローンしますが、その共有パイプラインフォルダからスクリプトを呼び出す方法がわかりません。また、スクリプトをリソース/フォルダに配置する必要がありますか?

私はこれに関する詳細を見つけることができませんでした。そのレポ内のスクリプトの一部はお互いに依存しています。どんな助けもありがたい。あなたのJenkinsfileで

答えて

0

- 私は前にその例を見てジェンキンスのドキュメントが、どのようにロードするかは明らかではない、ためてきたlibraryResource

script = libraryResource 'my_script.py' 

でスクリプトをロードし、それを

sh script 
+0

を使用例えば、リソースフォルダの 'a.py'と' b.py'という2つのpythonスクリプトが 'a.py'を実行します。 – Squirrel

+0

これは私が今行ったことですが、最適ではないようです。 _resources \ testFile.groovy_ 'DEFテスト(){ 最終pythonContent = libraryResource( 'a.py') 最終pythonContent1 = libraryResource( 'b.py') のWriteFile(ファイル: 'a.py'、 writeFile(file: 'b.py'、text:pythonContent1) sh( 'python a.py') } '' ' 私は' script {testFile.Test()}を使ってJenkinsfileを呼び出します。 ' 私はむしろターゲットのワークスペースに書き込んでいません。私は 'a.py'によって生成された出力テキストファイルをターゲットのワークスペースにコピーしたいだけです。 これを行うより良い方法がありますので、グローバルに使用することができます。 – Squirrel

+0

私は共有ライブラリはあなたのための正しいソリューションではないと思います。より良い方法は、ワークスペースのrepoとa.pyの両方をクローンすることです。 – TrafLaw

関連する問題