He configurado un servidor CI ejecución de jenkins y un esclavo con una réplica de nuestro entorno de producción. Me estoy quedando un poco molestos problema, sin embargo: Jenkins aparentemente se ejecuta git clone en el esclavo que significaría que cada esclavo debe tener su clavepublica añadido a GitHub.

A mí esto me suena un poco extraño diseño de la arquitectura. Prefiero el servidor maestro (que tiene todas mis credenciales) para clone/checkout y copiar el espacio de trabajo para el esclavo. Pero después de buscar un poco en Google no he encontrado una manera de hacer esto. He encontrado el Copia esclavo plugin pero eso no impide que el esclavo no sobre una git clone.

Espero alguien sabe una manera de lograr esto porque la configuración de GitHub publickeys por cada esclavo suena ridículo.

  • Yo diría: Establecer un clon que sincronizar periódicamente con github, liberar a los esclavos clonar el local clon y construir desde allí.
  • Eso suena un poco complicado solución para un tema sencillo. Ahora he de instalación de GitHub ganchos para compilaciones se activa automáticamente después de un empujón. A mí mi pregunta suena bastante razonable requisito, sólo tiene un servidor haciendo la SCM de comunicación en lugar de todos los esclavos. Tengo la esperanza de que hay una forma más natural para lograr esta configuración de otro clon y, esencialmente, perdiendo mucho de los beneficios de la Jenkins-Github integración.
  • ¿Por qué no pueden compartir una clave privada ssh entre los servidores esclavos?
InformationsquelleAutor joostdevries | 2013-11-17

2 Comentarios

  1. 6

    Jenkins aparentemente se ejecuta git clone en el esclavo que significaría que cada esclavo debe tener su clavepublica añadido a GitHub.

    ¿Por qué no utilizar uno la implementación de la clave (para todos Jenkins agente a utilizar) para acceder a su repositorio?

    Implementar clave es una clave SSH que se almacena en el servidor y permite el acceso a un repositorio en GitHub.

    Esta clave está conectado directamente al repositorio en lugar de a una cuenta de usuario.

    Pros

    • Cualquier persona con acceso al servidor de acceso a implementar el repositorio
    • Los usuarios no tienen que cambiar sus locales SSH configuración

    Contras

    • Implementar las teclas de sólo permitir el acceso a un repositorio único, proyectos más complejos pueden tener muchos repositorios para tirar para el mismo servidor
    • La clave de acceso completo de lectura/escritura para el acceso al repositorio
    • Implementar las teclas no son, generalmente protegida por una contraseña, haciendo que la clave de fácil acceso si el servidor está comprometido

    El otro método es utilizar la Las credenciales de Jenkins plugin (inicializado en De febrero de 2012), que permite a almacenar las credenciales en Jenkins maestro.

    Un punto único para la gestión de cada credencial. Cambio en un solo lugar y listo.

    A partir de la versión 1.5, el plugin ahora apoya la categorización de credenciales en diferentes «dominios» con el fin de permitir que los plugins para restringir la elección de credenciales a sólo aquellas que son apropiadas.

    Cuando un plugin está pidiendo una lista de credenciales, puede agregar algunas especificaciones acerca de dónde y cómo la credencial será utilizado.

    Ejemplo de Credenciales de Dominio de configuración:

    Git clone en jenkins maestro, copiar a los esclavos

  2. 4

    Esta es fija en los últimos Jenkins libera mediante la centralización de las credenciales de maestro.

    • La versión que hace de soporte de ti? ¿Cómo puedo configurarlo?
    • Estoy corriendo 1.575
    • ¿Qué plugins que uso?

Dejar respuesta

Please enter your comment!
Please enter your name here