tesis - Aumente el tiempo de espera de inicio de sesión de Jenkins
tesis sobre las redes sociales (7)
¿Alguien sabe cómo aumentar el tiempo de espera antes de que Jenkins cierre la sesión de un usuario? Estoy buscando aumentarlo a 1 día más o menos.
Trabajo dentro y fuera de jenkins todo el día y nos seguimos desconectando entre la ejecución de trabajos. Además de esta frustración, la casilla de verificación ''permanecer conectado'' tampoco parece funcionar.
A partir de 1.528, puede usar el parámetro
--sessionTimeout <minutes>
al iniciar jenkins mediante un script de inicio.
Si comienza la guerra, pase
-DsessionTimeout=<minutes>
Actualización para 1.6
Si se pasa como argumento, use
--sessionTimeout=<minutes>
A partir de la versión 2.107.2 de Jenkins, querrás incluir sessionEviction
Por ejemplo, para mantener a las personas conectadas durante 24 horas y 12 horas de inactividad:
--sessionTimeout=1440 --sessionEviction=43200
Si no especifica sessionEviction, las personas que cierren la pestaña cerrarán la sesión después de 30 minutos.
En mi distribución de Linux, esta configuración se puede agregar a / etc / sysconfig / jenkins
# Pass arbitrary arguments to Jenkins.
# Full option list: java -jar jenkins.war --help
#
JENKINS_ARGS="--sessionTimeout=480"
Posteriormente, reinicie con
sudo /etc/init.d/jenkins restart
Esta versión de Jenkins 1.567 también tiene la opción de habilitar la actualización automática, por lo que de alguna manera sigue actualizando la sesión y nunca me desconecto. Esto funciona para mi...
Jenkins usa Jetty, y el tiempo de espera predeterminado de Jetty es de 30 minutos . Esto es independiente de la configuración de autenticación: uso Active Directory pero sigue siendo esta configuración la que afecta los tiempos de espera.
Puede anular el tiempo de espera pasando un argumento
--sessionTimeout=<minutes>
al script de inicio de Jenkins, o
-DsessionTimeout=<minutes>
al archivo .war.
Por ejemplo:
# Set the session timeout to 1 week
$ java -jar jenkins.war --sessionTimeout=10080
Alternativamente, puede editar
<jenkinsHome>/.jenkins/war/WEB-INF/web.xml
''
<jenkinsHome>/.jenkins/war/WEB-INF/web.xml
y agregar establecerlo explícitamente:
<session-config>
<!-- one hour -->
<session-timeout>60</session-timeout>
</session-config>
De acuerdo con los documentos de Oracle, puede establecer esto en 0 para deshabilitar los tiempos de espera por completo.
Para averiguar el valor actual de los tiempos de espera, puede usar la consola Groovy provista en Jenkins:
import org.kohsuke.stapler.Stapler;
Stapler.getCurrentRequest().getSession().getMaxInactiveInterval() / 60
En mi caso, esto muestra
Result: 30
.
Para Ubuntu:
nano /etc/default/jenkins
Agregue a JENKINS_ARGS al final del archivo:
JENKINS_ARGS="--webroot=/var/cache/$NAME/war --httpPort=$HTTP_PORT --sessionTimeout=1440 --sessionEviction=43200"
también parece posible configurarlo usando la consola grovy:
import org.kohsuke.stapler.Stapler;
Stapler.getCurrentRequest().getSession().setMaxInactiveInterval(TIME_IN_SECONDS)
Pero supongo que solo estará disponible para la sesión actual