Estoy usando Jenkins para crear una canalización de compilación, y necesito activar un paso de implementación en la tubería. Esto significa un proceso manual (la construcción se produce automáticamente, cronometrada, luego se detiene en la etapa de implementación, esperando la autorización manual).¿Cómo puedo encadenar un trabajo descendente activado manualmente, también pasando parámetros?
necesito el paso a implementar también puede activarse con los parámetros procedentes de la etapa anterior.
Así, a través del 'plug-in parametrizado' me puede pasar parámetros entre puestos de trabajo. Puedo desencadenar trabajos descendentes automatizados O manualmente desencadenados (no estoy seguro si esta es una función estándar, o compilaciones manuales añadidas por algún complemento).
Sin embargo,, no encuentro ninguna forma de desencadenar un trabajo parametrizado manualmente.
¿Alguien sabe de una manera de hacer esto? ¿Hay otro complemento que pueda usar?
La razón que necesito los parámetros es que he creado un trabajo de implementación genérica, y la necesidad de pasar el nombre del módulo y la versión del experto de implementar. I podría crear trabajos de implementación específicos para cada módulo, pero esto sería muy doloroso.
también han estado considerando la siguiente, pero parece una chapuza:
- trabajo automatizado realiza la construcción, despliegue 'gatillo' disparadores construir, paso de parámetros.
- 'Despliegue disparador' escribe estos parámetros en un archivo en el sistema de archivos (build paso - ejecución del shell), y de forma manual desencadena la real trabajo de implementación
- trabajo de distribución (debe utilizar el espacio de trabajo desde el trabajo 'disparador despliegue') lee parámetros del sistema de archivos (usando el plugin EnvInject).
Hay varios problemas con este enfoque
- Es sólo que no me gusta.
- tiene un empleo intermedios acaba de pasar parámetros. Este estorba el espacio de trabajo Jenkins
- Como se construye se llevan a cabo en el mismo espacio de trabajo, parece frágil para mí (! Aunque viable)
¿alguna vez llegar a una solución aceptable para esto? – Niklas
No. Al final activé automáticamente un trabajo intermedio, pasando parámetros a esto. Esto establece el entorno vars en un archivo en el espacio de trabajo FS. Luego activé un paso manual para ejecutar otro trabajo en el _jun_ ambiente, que configura un entorno basado en el archivo de entorno establecido previamente. Hacky. – GKelly
Acabo de utilizar un script para hacer eco de myparameter = $ POM_VERSION >> version.properties en un paso posterior de la compilación. Luego usó EnvInject para leer en version.properties en la siguiente compilación. –