Jenkinsがユーザーをログアウトする前にタイムアウトウィンドウを増やす方法を知っている人はいますか?1日くらいに上げたいと思っています。
私は一日中ジェンキンスに出入りしていて、ジョブの実行の合間にログアウトし続けています。この欲求不満に加えて、「ログインしたままにする」チェックボックスも機能していないようです。
Jenkinsがユーザーをログアウトする前にタイムアウトウィンドウを増やす方法を知っている人はいますか?1日くらいに上げたいと思っています。
私は一日中ジェンキンスに出入りしていて、ジョブの実行の合間にログアウトし続けています。この欲求不満に加えて、「ログインしたままにする」チェックボックスも機能していないようです。
回答:
JenkinsはJettyを使用し、Jettyのデフォルトのタイムアウトは30分です。これは認証設定とは無関係です。ActiveDirectoryを使用していますが、タイムアウトに影響するのはこの設定です。
--sessionTimeout=<minutes>
Jenkins initスクリプトまたは-DsessionTimeout=<minutes>
.warファイルに引数を渡すことで、タイムアウトをオーバーライドできます。例えば:
# Set the session timeout to 1 week
$ java -jar jenkins.war --sessionTimeout=10080
または、Jenkinsを編集<jenkinsHome>/.jenkins/war/WEB-INF/web.xml
して、明示的に設定することもできます。
<session-config>
<!-- one hour -->
<session-timeout>60</session-timeout>
</session-config>
Oracleのドキュメントによると、これを0に設定して、タイムアウトを完全に無効にすることができます。
タイムアウトの現在の値を確認するには、Jenkinsで提供されているGroovyコンソールを使用できます。
import org.kohsuke.stapler.Stapler;
Stapler.getCurrentRequest().getSession().getMaxInactiveInterval() / 60
私のインスタンスでは、これはを示していますResult: 30
。
--sessionTimeout=<minutes>
(等号に注意してください)。
WEB-INF
ディレクトリは?
Jenkinsバージョン2.107.2以降、sessionEvictionを含める必要があります
たとえば、ユーザーを24時間および12時間非アクティブにしておくには、次のようにします。
--sessionTimeout=1440 --sessionEviction=43200
sessionEvictionを指定しない場合、タブを閉じた人は30分後にログアウトされます。
sessionTimeout
は、GroovyコンソールでStapler.getCurrentRequest().getSession().getMaxInactiveInterval() / 60
。を使用して確認できます。sessionEviction
groovyコンソールでを取得/設定する方法を知っていますか?
--sessionEviction
まで議論に出くわしたことがありませんでした。
1.528--sessionTimeout <minutes>
以降、initスクリプトを介してjenkinsを起動するときにパラメーターを使用できます。戦争を始めるなら、渡してください-DsessionTimeout=<minutes>
1.6のアップデート
引数として渡す場合は、 --sessionTimeout=<minutes>
-DsessionTimeout=600
--sessionTimeout=<minutes>
(等号に注意してください)。
Usage: java -jar jenkins.war [--option=value] [--option=value]
ありがとうを示しています!
groovyコンソールを使用して設定することも可能のようです。
import org.kohsuke.stapler.Stapler;
Stapler.getCurrentRequest().getSession().setMaxInactiveInterval(TIME_IN_SECONDS)
しかし、私はそれが現在のセッションでのみ利用可能になると思います
Ubuntuの場合:
nano /etc/default/jenkins
ファイルの最後にあるJENKINS_ARGSに追加します。
JENKINS_ARGS="--webroot=/var/cache/$NAME/war --httpPort=$HTTP_PORT --sessionTimeout=1440 --sessionEviction=43200"
このバージョンのJenkins1.567には、自動更新を有効にするオプションもあるため、セッションが更新され続け、ログアウトすることはありません。わたしにはできる...
私のLinuxディストリビューションでは、この設定を/ etc / sysconfig / jenkinsに追加できます。
# Pass arbitrary arguments to Jenkins.
# Full option list: java -jar jenkins.war --help
#
JENKINS_ARGS="--sessionTimeout=480"
その後、
sudo /etc/init.d/jenkins restart