問題タブ [jenkins-2]

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.

0 投票する
2 に答える
3560 参照

jenkins - Jenkins 2 Pipelines - 継続的デリバリー パイプラインをモデル化する方法

私は Jenkins 2 パイプラインにまったく慣れていません。

次のビューで Jenkins 1 パイプラインを試しました。

ここに画像の説明を入力

特定のステージを直接開始することもできます。たとえば、テストをスキップして、リリース ステージから実行を開始することを選択できるとしましょう。

私は非常に単純な Jenkins 2 パイプライン定義を持っています:

パイプライン ページには、準備から始まるすべてのステージを実行する「今すぐビルド」があります。

私の質問は次のとおりです。

  1. 自分の好きなステージを実行するにはどうすればよいですか? 例えば準備からではなく挨拶?
  2. ステージ間の依存関係をどのように定義しますか? 次のステージが終わった後に呼ばれるステージのことです
  3. 特定のユーザーが開始できるステージを制限する方法はありますか? 特定のユーザーのみに Greeting ステージを起動させたいとします。
  4. 手動ステージをどのようにセットアップしますか?

更新:私の質問の背後にある本当の目標は、Jenkins 2 パイプラインを使用した次のような継続的デリバリー パイプラインのモデリングです。

これは私が望む動作です:

ビルド ステージ(すべてのユーザーが開始できます) が完了すると、自動的にAcceptance Stageがトリガーされます。これは手動では起動できず、ビルド ステージが正常に終了した後にのみ自動的に起動されます。

Acceptance Stageから、承認されたユーザーのみがQA StageProduction Stageを手動でトリガーできるようにする必要があります。

ビジネス フローは次のようになります。開発者がビルド ステージに到達し、そのコードがビルドされてパッケージ化されます。受け入れステージが開始され、パッケージ化されたコードを使用して一連の自動テストが実行されます。

この時点で、受け入れ段階が正常に終了すると、次の 2 つのことが発生する可能性があります。

  1. より多くのテスト (Cucumber、マニュアルなど) を実行するには、QA ステージが必要になる場合があります。一部の許可されたユーザーがこのステージを起動します。
  2. プロダクト オーナーが満足したら、Production Stage を起動してコードを本番環境にデプロイすることを決定できます。

これを Jenkins 2 パイプラインでモデル化するのに苦労しています。

0 投票する
2 に答える
4525 参照

bitbucket - Jenkins Bitbucket Branch Source Plugin マスターと PR のみをビルドする方法は?

すべてのブランチと PR をスキャンしてビルドするBitbucket Branch Source PluginでJenkins 2 を使用しています。

私の問題は、コードを PR にプッシュすると、ブランチが 2 回 (ブランチ用に 1 つ、PR 用に 1 つ) ビルドされることです。マスターと PR のみをビルドしたいと考えています。

誰かがそれを行う方法を知っていますか? これに関するドキュメントが見つかりません。

Branch Indexing Log(フィルターなし)から:

次に、PR-* でフィルタリングしようとすると、何もスキャンされません。私はただ得る:

0 投票する
2 に答える
9394 参照

jenkins - Jenkins 2 NPM_TOKEN クレデンシャル

npm publishパッケージをローカル NPM リポジトリに公開するために使用する Jenkins 2 パイプライン (Jenkinsfile) を実行しようとしています。
そのために、Jenkinsfile で次のステージを使用しようとしました。

現在、私は実行しているだけnpm whoamiで、それが機能するようになったら、に置き換えますnpm publish

これは私が得ている出力です:

0 投票する
2 に答える
13236 参照

jenkins-pipeline - 以前のビルド結果を取得する

ビルドが不安定になったり、失敗したり、再び成功したりしたときに、元の Jenkins の動作 (通知の送信など) をエミュレートしたいと考えています。

そのためには、以前のビルド ステータスを照会する必要があります。これは次のように実行できます。

ただし、rawBuild「危険な」オブジェクトであると想定されているため、ブラックリストに登録されており、Groovy サンドボックス内で実行することはできません

現在、SCM から Jenkins スクリプトをロードしているため、プロジェクトごとのレベルで Groovy サンドボックスを非アクティブ化する方法はありませんが、Jenkins インスタンス全体に対してのみ (つまり、 this を介して)、これは確かに何かではありません。私が欲しい。

私が見逃した、サンドボックスの原則に準拠した (Jenkins の REST API を介してステータスをクエリするなどのハックを含まない) ジョブの最後のビルド ステータスを判断する他の方法はありますか?

0 投票する
0 に答える
588 参照

windows - ログインした Active Directory ユーザーのコンテキストで Jenkins ジョブ (Powershell コマンド) を実行する方法

環境:

  1. Active Directory セットアップでドメイン コントローラーを作成しました。
  2. Jenkins-2がインストールされた別のサーバーを作成しました(DNSはドメインコントローラーを正しくポイントします)
  3. Active Directory プラグインをインストールしました
  4. Powershell プラグインをインストールしました
  5. コマンドを使用してPowershellジョブを作成しました Copy-Item -Path \\SFTPServer\Docs\file.txt $Home

手順:

  1. リスト アイテムの認証情報でJenkins サーバー マシンにログインしましたglobomantics.local\administrator
  2. リスト項目 localhost:8080 で利用できるように Jenkins を開始しました
  3. 資格情報を使用して Jenkins にログインしたリスト アイテムglobomantics.local\someunderprivilegeduser
  4. リスト項目 上記で作成した Powershell ジョブを実行する

何が起こるか: Powershell ウィンドウが表示され、コマンド .. が AD ユーザーのコンテキストで実行されます。globomantics.local\administrator

必要なもの: Powershell コマンドは、次のコンテキストで実行されます。globomantics.local\someunderprivilegeduser

を使用して jenkins にログインするglobomantics.local\someunderprivilegeduserと、このマシンで kerberos チケットが生成されることを理解しています。そのチケットを使用してこのpowershellコマンドを実行するにはどうすればよいですか? または、私のアプローチが完全に間違っている場合、他に何をすべきですか?

注: の読み取りが許可されてglobomantics.local\someunderprivilegeduserないとしましょう\\SFTPServer\Docs\file.txt。この場合、Powershell ジョブは失敗するはずです。しかし、ジョブは のコンテキストで実行されるためglobomantics.local\administrator、ジョブは正常に実行されます。

0 投票する
1 に答える
931 参照

jenkins - Jenkins 2 オーバーライド plugins.txt

Jenkins 1.6 から Jenkins 2.0 に移行しています。docker を使用して Jenkins を作成および実行していました。

不変のジェンキンとして構成するために、すべての xml 構成ファイルをコピーし、plugins.txt を使用して必要なすべてのプラグインをインストールしていました。

しかし、問題は、Jenkins を初期化して接続した後、パスにある管理者パスワードを要求するウィザード画面しか表示されないことです。そのパスワードを入力した後、彼はプラグインのインストールを要求しましたが、これは既にインストールされていると予想していました。

そのウィザードを終了すると、plugins.txt リストのプラグインがインストールされていないか、users フォルダーにユーザーが渡されています。

これを修正する方法はありますか?Jenkins 1.6 では、すべて正常に動作します。

0 投票する
1 に答える
116 参照

jenkins-2 - Jenkins2 のクリーンなワークスペース

Jenkins2 でビルドが失敗し、ワークスペースにクリーンアップするだけで問題が解決するという問題があります。Jenkins1 ではワークスペースを手動でクリーンアップできましたが、Jenkins2 ではこの問題は見られません。

リモート ブランチを削除し、それらを再作成してワークスペースをクリーンアップしていますが、マスターに対しては実行できません。

リモート ブランチを削除せずにワークスペースをクリーンアップするにはどうすればよいですか?