問題タブ [maven-scm-plugin]
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 がチェックアウト プル操作のためにユーザー名とパスワードの資格情報を渡す方法
Jenkins / Mercurial の最新バージョンがあります。マシンは Red Hat Linux 6.6 です。
Jenkins で Release プラグインを使用しています。プロジェクトでリリース プロセスを実行するための Maven プラグイン (maven-scm-plugin、maven-version-plugin、maven-enforcer-plugin)。これらのバージョンはすべて利用可能な最新バージョンを使用しており、構成は正しく設定されています。
Jenkins の仕事では、RhodeCode (Mercurial hg) の背後にあるプロジェクトからソース コードをチェックアウトしています。
出力は次のように表示されます。
上記のように、Mercurial DVCS ツールで読み取り/チェックアウト操作を実行するユーザーを指定したため、Jenkins は hg コマンドを開始する際に一連のパラメーターを渡しました。
--config auth.jenkins.prefix=* --config ******** --config ******** --config "auth.jenkins.schemes=http https"
Maven SCMプラグインを使用していて、それが目標である場合、同じものを送信する方法を見つけようとしています。
scm:checkin
scm:tag
などは、呼び出されると、下にあるバージョン管理コマンド (私の場合は、hg branch、hg outside、hg push コマンド) を開始します。
現在、上記の hg コマンドは、ユーザーがユーザー名とパスワード変数セットを含む~/.hgrcファイルを持っていないか、ユーザーがターゲットのRhodeCode /Mercurial リポジトリへの「書き込み」アクセス権を持っていないという事実により失敗しています。
~/.hgrc ファイルを構成しようとしました (Mercurial docs に従って)。このファイルで指定したユーザー名がターゲット ソース コード リポジトリ/プロジェクトで有効な WRITE アクセス権を持っている場合、上記のエラー メッセージは表示されません。
これは、ビルド マシンにキーリングと mercurial_keyring 拡張機能/プラグインをインストール/構成することでも解決できます (これはオンラインの mercurial キーリング ドキュメントに従って簡単です)。
私が見つけようとしているのは、 --config xxxxx
パラメーターを渡すにはどうすればよいですか ( Jenkins ジョブのソース コード管理で入力した設定値が原因で、Jenkins がチェックアウト/プル操作の実行中に渡すように) Maven SCM プラグインがscm:checkin / scm:tagゴールを開始しているときに呼び出されるhgコマンドは、最終的にhgコマンド (hg outside、 hg push ) / ~/.hgrc を設定せずにすべての hg コマンドを呼び出し、mercurial_keyring をインストールしますか?
git - パスワードをプレーンテキストで保存せずに git で maven-scm-plugin を使用する
github のリポジトリ (のデフォルト ブランチ) をエクスポート/チェックアウトするには、maven-scm-plugin を使用する必要があります。ユーザー名/パスワードをどこかにハードコードすると、これを機能させることができますが、ssh キーまたはローカル ファイルシステムのパスワード マネージャーを使用することはできません。
コマンド プロンプトで、「git clone git@github.com:org/repo」または「git clone https://github.com/org/repo」を実行すると、手動で再入力しなくても完了します。ユーザー名/パスワードの詳細。
私のプラグインでは、connectionUrl を scm:git: https://github.com/org/repo " にすることができ、"-Dusername=foo -Dpassword=bar" を渡すことができます。ユーザー名/パスワード (foo/bar) をプレーンテキストでどこかに。
それを setting.xmlに入れてargs として渡し、それらをpomファイル自体に入れるというアドバイスを見てきました。そして、ssh 接続がサポートされているという証拠を見つけました。しかし、ssh 接続の実際の使用や、どこかにプレーン テキストのパスワードがない https 接続を見つけることができません。何かアドバイス?
私は次のように動作しました( -Dusername= -Dpassword= を渡す場合):
git - Maven リリース プラグインが git push エラーでプレーンテキストのパスワードを表示する
私は走っています
出力に次の行が表示されます。
しかし、何らかの理由でgit push
失敗した場合 (たとえば、パスワードの入力を間違えた場合)、ログに表示されます
したがって、PLAINTEXTパスワードが表示されます。Teamcity でこの手順を使用すると、ビルドが失敗した場合に他の誰かが私のパスワードを見ることができるため、セキュリティ上の問題が発生します。Linux マシンと Windows マシンの両方で試しました。
私は maven-release-plugin バージョン 2.5.3 を使用しています。
誰もそれを修正する方法を知っていますか?
java - サブモジュールのリポジトリ名にMaven scmを追加
私はJavaアプリケーションを持っています。Maven を使用して構築されており、親モジュールとサブモジュールがあります。
アプリが正常にビルドされたら、コミット リリース番号を git にプッシュする必要があります。
ここに私のPOMがあります:
親 pom.xml
子サーバー/pom.xml
Maven ログ
maven-scm-plugin が git push にプッシュされる理由git@10.72.0.99:project/service.git/server master:master
適切なリポジトリの場合git@10.72.0.99:project/service.git
この機能を修正するにはどうすればよいですか?
java - maven-scm-publish-plugin での代替 scm プロバイダーの使用
Maven を使用してリモート SVN からローカル プロジェクトを更新したい (SVN コマンドがインストールされていない) プラグイン構成の例に従って、maven-scm-publish-plugin で代替 scm プロバイダーを使用しようとしています。
ソース: http://maven.apache.org/plugins/maven-scm-publish-plugin/various-tips.html
しかし、実行後mvn scm:update
はMavenログに記録されます
[INFO] --- maven-scm-plugin:1.9.5:update (default-cli) @ testscm ---
[INFO] 実行中: /bin/sh -c cd /home/stanimir/ProjectSvnTest && svn --non-interactive update /home/stanimir/ProjectSvnTest
およびエラー: svn not found
- わかっています.. システムにインストールされていません。代わりに svnkit を使用したいのですが、このプラグインで javasvn を使用するにはどうすればよいですか?
maven - Maven SCM プラグイン、failOnError = false の設定方法
scm チェックアウト中にエラーを無視するように Maven SCM プラグインを構成するにはどうすればよいですか? (「許可が拒否されました」などのエラー)。他のプラグインの構成プロパティについては知っています<failOnError>false</failOnError>
が、このプラグインにはそのようなオプションがありません (またはドキュメントで見つかりませんでした)。
ここに私の pom.xml セクションがあります: