12.2.2. Jenkins 環境変数

Jenkins サーバーは、以下の環境変数で設定できます。

変数定義値と設定の例

OPENSHIFT_ENABLE_OAUTH

Jenkins へのログイン時に OpenShift Container Platform ログインプラグインが認証を管理するかどうかを決定します。有効にするには、true に設定します。

デフォルト: false

JENKINS_PASSWORD

標準の Jenkins 認証を使用する際の admin ユーザーのパスワード。OPENSHIFT_ENABLE_OAUTHtrue に設定されている場合には該当しません。

デフォルト: password

JAVA_MAX_HEAP_PARAMCONTAINER_HEAP_PERCENTJENKINS_MAX_HEAP_UPPER_BOUND_MB

これらの値は Jenkins JVM の最大ヒープサイズを制御します。JAVA_MAX_HEAP_PARAM が設定されている場合は、その値が優先されます。設定されていない場合は、最大ヒープサイズは、コンテナーメモリー制限の CONTAINER_HEAP_PERCENT として動的に計算され、オプションで JENKINS_MAX_HEAP_UPPER_BOUND_MB MiB を上限とします。

デフォルトでは Jenkins JVM の最大ヒープサイズは、上限なしでコンテナーメモリー制限の 50% に設定されます。

JAVA_MAX_HEAP_PARAM の設定例: -Xmx512m

CONTAINER_HEAP_PERCENT のデフォルト: 0.5 (50%)

JENKINS_MAX_HEAP_UPPER_BOUND_MB の設定例: 512 MiB

JAVA_INITIAL_HEAP_PARAMCONTAINER_INITIAL_PERCENT

これらの値は Jenkins JVM の初期ヒープサイズを制御します。JAVA_INITIAL_HEAP_PARAM が設定されている場合は、その値が優先されます。設定されていない場合は、初期ヒープサイズは、動的に計算される最大ヒープサイズの CONTAINER_INITIAL_PERCENT として動的に計算されます。

デフォルトでは、JVM は初期のヒープサイズを設定します。

JAVA_INITIAL_HEAP_PARAM の設定例: -Xmx32m

CONTAINER_INITIAL_PERCENT の設定例: 0.1 (10%)

CONTAINER_CORE_LIMIT

設定されている場合には、内部の JVM スレッドのサイジング数に使用するコアの数を整数で指定します。

設定例: 2

JAVA_TOOL_OPTIONS

このコンテナーで実行中のすべての JVM に適用するオプションを指定します。この値の上書きは推奨していません。

デフォルト: -XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimitForHeap -Dsun.zip.disableMemoryMapping=true

JAVA_GC_OPTS

Jenkins JVM ガーベッジコレクションのパラメーターを指定します。この値の上書きは推奨していません。

デフォルト: -XX:+UseParallelGC -XX:MinHeapFreeRatio=5 -XX:MaxHeapFreeRatio=10 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90

JENKINS_JAVA_OVERRIDES

Jenkins JVM の追加オプションを指定します。これらのオプションは、上記の Java オプションなどその他すべてのオプションに追加され、必要に応じてそれらの値のいずれかを上書きするのに使用できます。追加オプションがある場合には、スペースで区切ります。オプションにスペース文字が含まれる場合には、バックスラッシュでエスケープしてください。

設定例: -Dfoo -Dbar; -Dfoo=first\ value -Dbar=second\ value

JENKINS_OPTS

Jenkins への引数を指定します。

 

INSTALL_PLUGINS

コンテナーが初めて実行された場合や、OVERRIDE_PV_PLUGINS_WITH_IMAGE_PLUGINStrue に設定されている場合に、インストールする追加の Jenkins プラグインを指定します。プラグインは、名前:バージョンのペアのカンマ区切りの一覧で指定されます。

設定例: git:3.7.0,subversion:2.10.2

OPENSHIFT_PERMISSIONS_POLL_INTERVAL

OpenShift Container Platform ログインプラグインが Jenkins に定義されているユーザーごとに関連付けられたパーミッションを OpenShift Container Platform でポーリングする間隔をミリ秒単位で指定します。

デフォルト: 300000 - 5 分

OVERRIDE_PV_CONFIG_WITH_IMAGE_CONFIG

Jenkins 設定ディレクトリー用に OpenShift Container Platform 永続ボリューム (PV) を使用してこのイメージを実行する場合、PV は永続ボリューム要求 (PVC) の作成時に割り当てられるため、イメージから PV に設定が転送されるのは、イメージの初回起動時のみです。このイメージを拡張し、初回起動後にカスタムイメージの設定を更新するカスタムイメージを作成する場合、この環境変数を true に設定しない限り、設定はコピーされません。

デフォルト: false

OVERRIDE_PV_PLUGINS_WITH_IMAGE_PLUGINS

Jenkins 設定ディレクトリー用に OpenShift Container Platform PV を使用してこのイメージを実行する場合、PV は PVC の作成時に割り当てられるため、イメージから PV にプラグインが転送されるのは、イメージの初回起動時のみです。このイメージを拡張し、初回起動後にカスタムイメージのプラグインを更新するカスタムイメージを作成する場合、この環境変数を true に設定しない限り、プラグインはコピーされません。

デフォルト: false

ENABLE_FATAL_ERROR_LOG_FILE

Jenkins 設定ディレクトリー用に OpenShift Container Platform PVC を使用してこのイメージを実行する場合に、この環境変数は致命的なエラーが生じる際に致命的なエラーのログファイルが永続することを可能にします。致命的なエラーのファイルは /var/lib/jenkins/logs に保存されます。

デフォルト: false

NODEJS_SLAVE_IMAGE

この値を設定すると、デフォルトの Node.js エージェント Pod 設定に使用されるイメージが上書きされます。jenkins-agent-nodejs という名前の関連するイメージストリームタグがプロジェクトにあります。この変数は、有効にするために Jenkins の初回の起動前に設定される必要があります。

Jenkins サーバーのデフォルトの Node.js エージェントイメージ: image-registry.openshift-image-registry.svc:5000/openshift/jenkins-agent-nodejs:latest

MAVEN_SLAVE_IMAGE

この値を設定すると、デフォルトの maven エージェント Pod 設定に使用されるイメージが上書きされます。jenkins-agent-maven という名前の関連イメージストリームタグがプロジェクトにあります。この変数は、有効にするために Jenkins の初回の起動前に設定される必要があります。

Jenkins サーバーのデフォルトの Maven エージェントイメージ: image-registry.openshift-image-registry.svc:5000/openshift/jenkins-agent-maven:latest