Jenkinsのデータをドライブ「E:」に書き込むようにしたいのは、これがサーバー上の大きなドライブだからです。 Jenkins自体は「C:」にインストールされます。
それ、どうやったら出来るの?
私が見たデフォルトの構成は次のとおりです。
ワークスペースルートディレクトリ: $ {ITEM_ROOTDIR}/workspace
レコードルートディレクトリのビルド: $ {ITEM_ROOTDIR}/builds
次の変更は、必要なものを達成するのに役立ちますか?
ワークスペースルートディレクトリ: E:/ Jenkins/workspace
ビルドレコードのルートディレクトリ: E:/ Jenkins/builds/$ {ITEM_FULL_NAME}
また、「$ {ITEM_FULL_NAME}」とはどういう意味ですか?
私はそれを考え出した。 Jenkinsデータを他のドライブに保存するには、次のことを行う必要があります。
ワークスペースルートディレクトリ: E:\ Jenkins\$ {ITEM_FULL_NAME}\workspace
ビルドレコードのルートディレクトリ: E:\ Jenkins\$ {ITEM_FULL_NAME}\builds
編集:他のコメントによると、「高度な...」ボタンはJenkinsのより新しいバージョンで削除されたようです。バージョンにない場合は、 knorx's answer 。を参照してください
同じ問題があり、 この古いプルリクエスト を見つけた後でも、システムレベルでワークスペースルートディレクトリまたはビルドレコードルートディレクトリを指定する場所を見つけるのに苦労しました。ジョブ。
これらを設定するには:
Jenkins
-> Manage Jenkins
-> Configure System
に移動しますHome directory
]の下で、[Advanced...
]ボタンをクリックします。 この値には、次の変数が含まれる場合があります。
${JENKINS_HOME}
— Jenkinsホームディレクトリの絶対パス${ITEM_ROOTDIR}
— Jenkinsが特定のジョブの設定と関連メタデータを保存するディレクトリの絶対パス${ITEM_FULL_NAME}
—特定のジョブのフルネーム。スラッシュで区切られている場合があります。フォルダfooのジョブバーのfoo/bar
通常、値には${ITEM_ROOTDIR}
または${ITEM_FULL_NAME}
を含める必要があります。そうしないと、異なるジョブが同じワークスペースを共有することになります。
デフォルトのディレクトリにあるconfig.xml
ファイルのパスを変更できます
<projectNamingStrategy class="jenkins.model.ProjectNamingStrategy$DefaultProjectNamingStrategy"/>
<workspaceDir>D:/Workspace/${ITEM_FULL_NAME}</workspaceDir>
<buildsDir>D:/Logs/${ITEM_ROOTDIR}/Build</buildsDir>
必要な変数については、jenkins wikiで説明しています: https://wiki.jenkins.io/display/JENKINS/Features+controlled+by+system+properties
デフォルト変数ITEM_ROOTDIRは、jenkinsインストール内のディレクトリを指します。すでにわかったように、次のものが必要です。
これは最近のconfig.xmlで実現する必要があります。上にリンクされたwikiページから引用:
これは以前はUI設定でしたが、既存のビルドレコードの移行をサポートせず、再起動するまでビルド関連のエラーにつながる可能性があるため、2.119で削除されました。
/ etc/default/jenkinsを編集することをお勧めします
vi /etc/default/jenkins
そして、$ JENKINS_HOME変数(23行目付近)を
JENKINS_HOME=/home/jenkins
その後、通常の方法でJenkinsを再起動します
/etc/init.d/jenkins start
乾杯!
JENKINS_HOMEディレクトリのconfig.xmlファイルを編集することもできます。 c32hedgeの応答を参照として使用し、ワークスペースの場所をタグ間の任意の場所に設定します
デフォルトでは、Jenkinsはすべてのデータをファイルシステム上のこのディレクトリに保存します。
Jenkinsのホームディレクトリを変更するには、いくつかの方法があります。
JENKINS_HOME
変数を編集します(たとえば、Red Hat Linuxの/etc/sysconfig/jenkins
)。JENKINS_HOME
環境変数を設定します。JENKINS_HOME
を設定します。JENKINS_HOME
Javaシステムプロパティを設定します。web.xml
(またはWebコンテナー内の展開画像)を変更します。これは推奨されません。 Jenkinsの実行中は、この値を変更できません。ここに表示されているのは、構成が有効になっていることを確認するためです。[ホーム]の下の[構成]に移動すると、次の方法に関する「ヘルプ」メモがあります。
ホームディレクトリ/ var/lib/jenkins機能のヘルプ:ホームディレクトリ
デフォルトでは、Jenkinsはすべてのデータをファイルシステム上のこのディレクトリに保存します。
Jenkinsのホームディレクトリを変更するには、いくつかの方法があります。
Edit the JENKINS_HOME variable in your Jenkins configuration file (e.g. /etc/sysconfig/jenkins on Red Hat Linux).
Use your web container's admin tool to set the JENKINS_HOME environment variable.
Set the environment variable JENKINS_HOME before launching your web container, or before launching Jenkins directly from the WAR file.
Set the JENKINS_HOME Java system property when launching your web container, or when launching Jenkins directly from the WAR file.
Modify web.xml in jenkins.war (or its expanded image in your web container). This is not recommended.
Jenkinsの実行中は、この値を変更できません。ここに表示されているのは、構成が有効になっていることを確認するためです。