問題タブ [jenkins-shared-libraries]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jenkins - Jenkins でグローバル共有ライブラリの使用状況を追跡する方法はありますか?
環境:
- 私の職場では、ほとんどの開発者が自分のチームのプロジェクト用に独自の Jenkinsfile を自由に作成できます。
- Jenkins 管理者として、開発者にグローバル共有ライブラリを提供しています。
- ほとんどのプロジェクトは、イディオムを使用して、v1、v2、v3、またはこのライブラリの別のバージョンを使用してい
library("theSharedLib@v#")
ます。
質問:すべての Jenkinsfile ファイル (同じ数の git リポジトリにある 50 以上のファイル) を実際に検索することなく、どの Jenkinsfile がどのバージョンの共有ライブラリを使用しているかを調べる方法はありますか?
私が最もよく見るのは、ライブラリがロードされたときにどのプロジェクト/ Jenkinsfileがどのバージョンを使用しているかを(JenkinsマスターまたはDBのファイルに)書き込むメカニズムです。
可能な解決策は、実際にこのレポートを行うライブラリ内のすべての関数にコードを追加することです。誰がどの関数を使用しているかを確認できました。より良い解決策はありますか?
jenkins - ジョブのパイプライン内で jenkins-library から Closure を呼び出す
チェックアウトを処理する handleCheckout.groovy を備えた jenkins_library があります。
そのようなjenkins-libraryをインポートした後、パイプラインから呼び出そうとしています:
エラーで終了します:
メソッドがパイプライン内で宣言および呼び出されている間はうまく機能します。
jenkins - Jenkins 共有ライブラリを Jenkins プラグインに変換することは可能ですか?
チェックアウト、ビルドなどの機能をサポートする Jenkins 共有ライブラリがあります。ライブラリ全体をプラグインに変換して、移植性を高め、コードを保護することはできますか?
または、コードを公開せずに、ユーザーが関数を呼び出してすべての機能にアクセスできるようにする他の方法はありますか?