2012-07-18 18 views
5

Soy nuevo en Jenkins. Estoy tratando de implementar un escenario específico en un solo trabajo para construir aplicaciones móviles usando Jenkins.Ejecutando tareas de trabajo secuencialmente en varios entornos usando Jenkins

En un solo trabajo deseo iniciar varias tareas secuencialmente: Tarea 1 (Windows) ---> Tarea 2 (Windows) ---> Tarea 3 (Windows) ---> Tarea 4 (Mac OSX)

Cada trabajo estará dedicado a un solo proyecto. Pasar los resultados de una tarea a otra se puede realizar a través del espacio de trabajo, pero parece que las tareas del trabajo deben ejecutarse todas en el mismo entorno. ¿Hay algún complemento que me permita ejecutar algunas tareas del trabajo en un esclavo en particular?

Gracias de antemano

Respuesta

1
  1. define un trabajo para cada tarea que usted ha mencionado.

  2. Tenga un esclavo en la (s) máquina (s) remota (s), presumiblemente la Mac.

  3. En cada trabajo, configure el host relevante que lo ejecutará (tiene un parámetro para eso).

  4. Utilice el complemento "desencadenar la compilación parametrizada" para activar las tareas en la secuencia correcta y asegúrese de pasar "Parámetros de compilación actuales" en esa sección.

  5. Este complemento le permitirá pasar otros valores también; lea su ayuda para obtener más detalles.

+0

Cada tarea tendrá un trabajo dedicado, cómo puedo manejar para transmitir la salida de trabajos a la siguiente? Además, parece que crear un nuevo proyecto en jenkins será una tarea difícil. Estoy equivocado? – ridan

+0

Consulte el punto 4 en mi respuesta anterior. La forma preferida es crear un trabajo (a.k.a. Proyecto) para cada paso: lo ayuda a identificar qué acción falló. – Gonen

4

Usted podría utilizar gatillo construye de forma remota en sus puestos de trabajo esclavo. Luego, desde el trabajo maestro puede ejecutar compilaciones de esclavos usando curl. De esta manera:

$(curl --user "username:password" "http://jenkins.yourdomain.org/job/JOB-name/buildWithParameters?SOMEPARAMETER=$SOMEPARAMETER&token=TheSecretToken") 

TheSecretToken es la contraseña de testigo ha especificado en los plugins de esclavos. Y nombre de usuario: contraseña es un usuario válido en sus jenkins. No use su propia cuenta aquí, sino una cuenta de 'compilación activa' que solo tiene permisos para iniciar trabajos específicos.

Cuestiones relacionadas