Code Stream proporciona un complemento de Jenkins, que activa trabajos de Jenkins que compilan y prueban el código fuente. El complemento de Jenkins ejecuta casos de prueba y puede utilizar scripts personalizados.

Para ejecutar un trabajo de Jenkins en la canalización, utilice un servidor de Jenkins local o basado en la nube, y agregue el endpoint de Jenkins en Code Stream. A continuación, cree una canalización y agréguele una tarea de Jenkins.

Requisitos previos

  • Configure un servidor de Jenkins local o basado en la nube que ejecute la versión 1.561 o posterior.
  • Si utiliza un servidor de Jenkins local, compruebe que puede acceder a VMware Cloud Assembly para poder agregar un proxy de nube. Para ver un ejemplo, consulte Configuración de VMware Code Stream para modelar el proceso de lanzamiento.
  • Compruebe si es un miembro de un proyecto en Code Stream. Si no lo es, solicite al administrador de Code Stream que lo agregue como miembro de un proyecto. Consulte Cómo agregar un proyecto en VMware Code Stream.
  • Compruebe que haya un trabajo en el servidor de Jenkins para que la tarea de canalización pueda ejecutarlo.

Procedimiento

  1. Agregue y valide un endpoint de Jenkins.
    1. Haga clic en Endpoints > Nuevo endpoint.
    2. Seleccione un proyecto y, como tipo de endpoint, seleccione Jenkins. A continuación, escriba un nombre y una descripción.
    3. Si este endpoint es un componente fundamental para la empresa en la infraestructura, habilite la opción Marcar como restringido.
    4. Si este endpoint es local, seleccione un proxy de nube que lo conecte a Code Stream.
    5. Introduzca la URL del servidor de Jenkins.
    6. Escriba el nombre de usuario y la contraseña para iniciar sesión en el servidor de Jenkins. A continuación, introduzca la información restante.
      Tabla 1. Información restante para el endpoint de Jenkins
      Entrada de endpoint Descripción
      Ruta de la carpeta Ruta de la carpeta que agrupa los trabajos. Jenkins puede ejecutar todos los trabajos de la carpeta. Puede crear subcarpetas. Por ejemplo:
      • folder_1 puede incluir job_1
      • folder_1 puede incluir folder_2, que a su vez puede incluir job_2

      Al crear un endpoint para folder_1, la ruta de la carpeta es job/folder_1 y el endpoint solo muestra job_1.

      Para obtener la lista de trabajos de la carpeta secundaria denominada folder_2, debe crear otro endpoint que use la ruta de carpeta como /job/folder_1/job/folder_2/.

      URL URL del host del servidor de Jenkins. Introduzca la URL con el formato protocol://host:port. Por ejemplo: http://192.10.121.13:8080
      Intervalo de sondeo Duración del intervalo en el que Code Stream sondea el servidor de Jenkins en busca de actualizaciones.
      Número de reintentos de solicitud Número de reintentos de la solicitud de compilación programada para el servidor de Jenkins.
      Tiempo de espera entre reintentos Número de segundos de espera antes de volver a intentar la solicitud de compilación para el servidor de Jenkins.
    7. Haga clic en Validar y compruebe que el endpoint se conecta a Code Stream. Si no se conecta, corrija los errores y, a continuación, haga clic en Guardar.
      Usar un endpoint de Jenkins para compilar y probar el código.
  2. Para compilar el código, cree una canalización y agregue una tarea que use el endpoint de Jenkins.
    1. Haga clic en Canalizaciones > Nueva canalización > Lienzo en blanco.
    2. Haga clic en la etapa predeterminada.
    3. En el área Tarea, introduzca un nombre para la tarea.
    4. Seleccione el tipo de tarea como Jenkins.
    5. Seleccione el endpoint de Jenkins que creó.
    6. En el menú desplegable, seleccione un trabajo del servidor de Jenkins que ejecutará la canalización.
    7. Introduzca los parámetros del trabajo.
    Crear una tarea de compilación de Jenkins que use el endpoint de Jenkins.
  3. Habilite y ejecute la canalización, y vea cómo se ejecuta.
    Ejecución de canalización para una tarea de compilación de Jenkins.
  4. Consulte los detalles y el estado de la ejecución en el panel de control de la canalización.
    Puede identificar cualquier error y su causa. También puede ver tendencias sobre la duración de la ejecución de las canalizaciones, las canalizaciones completadas y los errores.
    Consulte los detalles y el estado de la ejecución en el panel de control de la canalización.

Resultados

Enhorabuena. Ha integrado Code Stream con Jenkins tras agregar un endpoint, crear una canalización y configurar una tarea de Jenkins que compila el código.

Ejemplo: Ejemplo de YAML para una tarea de compilación de Jenkins

Para el tipo de tarea de compilación de Jenkins utilizada en este ejemplo, el YAML se asemeja al siguiente código, con las notificaciones activadas:

test:
  type: Jenkins
  endpoints:
    jenkinsServer: jenkins
  input:
    job: Add two numbers
    parameters:
      Num1: '23'
      Num2: '23'

Qué hacer a continuación

Revise las demás secciones para obtener más información. Consulte Conectar VMware Code Stream a endpoints.