問題タブ [jenkinsfile]

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 に答える
3639 参照

jenkins - Jenkinsfile: 一度に複数の変数に値を定義して割り当てる方法は実装されていないようです

Red Hat Linux で Jenkins 2.6 を使用しています。Jenkinsfile で以下を使用したいのですが、試してみると、Jenkins が激しく文句を言います。(= 演算子の左側の構文が嫌いなだけのようです。):

複数の割り当ては好きではないようですが、この投稿によると、Groovy 1.6 以降では明らかにそれらをサポートしています。

http://mrhaki.blogspot.co.uk/2009/09/groovy-goodness-multiple-assignments.html

[6, 7] を返すメソッドを呼び出すときに、次のように呼び出すことができるように、これを行いたいと考えています。

これがJenkinsで機能するかどうか、またそうであればどのバージョンのJenkinsで機能するか教えてもらえますか? それとも、サポートされていない機能ですか? それともバグ?

ありがとう

0 投票する
6 に答える
22245 参照

docker - jenkinsfile で docker.build のカスタム コンテキストを設定する方法

ジェンキン用のドッカービルドを適応させようとしています。私は docker-compose ファイルに従っており、各コンテナーを作成してそれらをリンクする Jenkinsfile を作成しています。私が直面している問題は、docker-compose ファイルが Dockerfile の場所ではないコンテキストを宣言していることです。私が理解している限り、jenkins はコンテキストを Dockerfile の場所に設定します。これにより、jenkinsfile または docker-compose ファイルがビルドされているかどうかに応じて、コピーされるファイルが異なる相対位置に配置されます。

フォルダ構造は次のとおりです。

これは、Dockerfile が問題のファイルの COPY 命令を宣言する方法です。

これは、私の jenkinsfile がファイルを作成する方法です。私の知る限り、そのディレクトリにコンテキストを配置するのはどれですか

docker-compose ファイルは次のように宣言します。

これにより、コンテキストがプロジェクトのルートに配置されます。

Dockerfile の COPY 命令が変更されず、Jenkins と docker-compose の両方で有効になるように、jenkinsfile に docker-compose ファイルと同じコンテキストを使用するように指示する方法はありますか? それが不可能な場合、誰かが代替ソリューションを知っていますか?

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

jenkins - Jenkinsfileで文字列を連結する方法は?

Jenkinsfile でいくつかの文字列を連結しようとしていますが、うまくいきません:

私は他の解決策も試しました:

しかし ${env.BUILD_NUMBER} は評価/出力されません

私が行った場合

${env.BUILD_NUMBER} が評価/出力されます

スクリプト言語が Jenkinsfile 内でどのように機能するかはまだわかりません。ドキュメントはすべて DSL に関するものです。つまり、一般的なスクリプト操作を実行できないということですか?

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

jenkins - GitHub Organization Folder Plugin を介した複数のリポジトリを使用した Jenkins パイプライン コードの自動トリガー

この質問は、複数のリポジトリを使用した Jenkins ジョブの自動トリガーに関連しています。

Jenkinsfile でチェックアウトする 3 つのリポジトリを定義しました。

Github 組織プラグインを使用して構成された Jenkins ジョブ。

この場合、私の Jenkinsfile は abc リポジトリにあり、Jenkins 自動トリガーは abc リポジトリに対して正常に機能しています。他のレポでは機能しません。

2 つ以上のレポの自動トリガーを定義する方法はありますか?

2 つ以上のリポジトリに対してジョブを自動トリガーできるプラグインはありますか?

Jenkinsfile で「checkout scm」を別の方法で定義する必要がありますか?

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

jenkins-pipeline - Jenkins マルチブランチ パイプライン -- 別のスクリプトをローカルの Jenkinsfile に含めます

Jenkins マルチブランチ パイプラインの使用を開始したばかりです。新しいブランチが作成されると、Jenkins が自動的に新しい Jenkins ジョブを作成するというアイデアが気に入っています。すべてのリリース可能な開発が Jenkins で構築されていることを確認します。ほぼすべてのリリースで分岐するプロジェクトが 40 から 50 ほどありますが、分岐するたびに 40 ほどのジョブを作成するのはエラーが発生しやすい作業です。

ただし、Jenkins には 2 種類のパイプライン ビルドがあるようです。

  • 通常のパイプライン ビルド: Jenkins ジョブで場所とブランチを指定します。ただし、Jenkins ジョブ構成内のスクリプトを使用するか、ソース リポジトリのスクリプトを使用するかを指定できます。Jenkinsfileこれにより、すべてのジョブに対して1 つを維持することができます。ビルド手順で何かを変更した場合、1 つの Jenkinsfile を編集するだけで済みます。

  • マルチブランチ パイプライン ビルド: 新しいブランチが作成されると、Jenkins は自動的に新しい Jenkins ジョブを作成します。これは、新しいブランチが発生したときに、何十もの新しい Jenkins プロジェクトを作成する必要がなくなったことを意味します。ただし、Jenkinsfileプロジェクトのルートに配置する必要があるようです。ビルド手順に基本的な変更を加えた場合、すべての Jenkins プロジェクトを更新する必要があります。

マルチブランチ パイプライン ビルドを使用できるようにしたいのですが、リポジトリからプルする場所を指定するか、リポジトリ URL からJenkinsfileマスターを含めたいと考えています。Jenkinsfile

Jenkins マルチブランチ パイプラインでこれを行う方法はありますか?

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

jenkins - Groovy クラスを Jenkinfile にインポートするにはどうすればよいですか?

Jenkinsfile 内に Groovy クラスをインポートするにはどうすればよいですか? いくつかのアプローチを試しましたが、どれもうまくいきませんでした。

これは私がインポートしたいクラスです:

Thing.groovy

これらは機能しないものです:

ジェンキンスファイル-1

ジェンキンスファイル-2

ジェンキンスファイル-3