Cerca de la parte superior de mi consola de compilación veo una "Última revisión incorporada" con un número de revisión. ¿Cómo puedo acceder a este último build rev # en mi script de compilación? Estoy usando Gradle, pero no creo que eso importe aquí. ¿Proporciona Jenkins el último rev # construido en una propiedad del sistema? Sin duda, esto debe ser trivial para acceder desde mi script de construcción ...¿Cómo puedo acceder a la última revisión construida de acuerdo con jenkins?
Respuesta
No creo que el plugin git exporta la última revisión construido como una variable de entorno, pero la información es fácilmente disponible mediante un simple comando shell como:
curl -sf "$BUILD_URL/api/xml?xpath=//lastBuiltRevision/SHA1/text()"
BUILD_URL siempre apunta a la página propia de la construcción y el resto de la información parece estar disponible usando la API XML.
La acumulación número actual se proporciona como Jenkins variable BUILD_NUMBER
- En Unix se establece para usted como $ { BUILD_NUMBER}
- En Windows está disponible como % BUILD_NUMBER%
La lista completa de las variables i s disponibles en el servidor de Jenkins, en: http: //
[Jenkins-su-servidor]/env-vars.html
Puede acceder directamente a Jenkins BUILD_NUMBER
como variable de entorno del sistema.
task getBuildNumber << {
ext.env = System.getenv()
ext.buildNumber = env.BUILD_NUMBER?.toInteger()
println "Build Number: $buildNumber"
}
'env.BUILD_NUMBER' no contiene la revisión de VCS, pero el número de compilación de Jenkins. Eso es útil en algunos casos, pero hasta donde sé, no es lo que pide el OP –
Resulta que el plugin de Git DOES exporta la última revisión de construcción como una variable de entorno. Así que en lugar de utilizar la respuesta aceptada:
curl -sf "$BUILD_URL/api/xml?xpath=//lastBuiltRevision/SHA1/text()"
sólo puede utilizar esto en su lugar:
GIT_PREVIOUS_COMMIT
Una forma a prueba de fallos para ver exactamente lo que está disponible para su escritura de la estructura es elegir Add Build Step > Execute Shell
continuación, sólo tiene que añadir el siguiente :
export
ver su consola (para la compilación) y debe ver muchas variables de gran ambiente disponibles para usted. Las variables relacionadas con git-que estaban disponibles para mí (usando el plugin GIT) fueron:
GIT_AUTHOR_EMAIL
GIT_AUTHOR_NAME
GIT_BRANCH
GIT_COMMIT
GIT_COMMITTER_EMAIL
GIT_COMMITTER_NAME
GIT_PREVIOUS_COMMIT
GIT_URL
Por último, para ver una lista menos amplio de variables de entorno disponibles, también se puede ir a la siguiente dirección: http://[your-jenkins-domain-and-port]/env-vars.html
Tenga en cuenta que estas variables no son disponible (todavía) bajo el plugin de tubería, a la espera de la resolución de [JENKINS-35230 Las variables de entorno del plugin git no funcionan en el script de tubería] (https: // issues.jenkins-ci.org/browse/JENKINS-35230) –
- 1. Listado de la última revisión de cada entidad con envers
- 2. Obtener la última revisión no funciona
- 3. Usando git para obtener la última revisión
- 4. Actualizar elemento a revisión frente a Revertir a la revisión
- 5. ¿Cómo puedo acceder a SQLite con C#?
- 6. Creando una revisión particular en Jenkins Pipeline
- 7. ¿Cómo construir una revisión específica de SVN en Hudson/Jenkins
- 8. ¿Cómo mostrar la última revisión en un archivo?
- 9. ¿Cómo puedo acceder a memcached con Javascript?
- 10. ¿Cómo acceder a los miembros de una 'estructura' de acuerdo con un entero variable en C?
- 11. ¿Cómo puedo integrar Jenkins con Redmine?
- 12. ¿Cómo puedo personalizar la salida de Jenkins?
- 13. ¿Cuándo fue la última revisión importante de JavaScript?
- 14. No puedo acceder a phpmyadmin con mamp
- 15. Localización de la GUI construida con Glade y Python (Gtk)
- 16. de llamadas en la post-construida con parámetros
- 17. ¿Cómo puedo acceder a los elementos de iframe con Javascript?
- 18. ¿Puedo acceder a la API de ImageMagick con Python?
- 19. Cómo puedo especificar la última hora del día con DateTime
- 20. ¿Cómo puedo modificar una rama a la revisión de tronco desde la que comenzó en Crucible?
- 21. ¿Cómo puedo acceder a la última identificación de fila insertada dentro de una secuencia de comandos SQL?
- 22. Jenkins redirigir/a/Jenkins en la instalación independiente
- 23. Cómo obtener la lista de archivos modificados desde la última compilación en Jenkins/Hudson
- 24. ¿Cómo puedo acceder a un diccionario compartido con multiprocesamiento?
- 25. ¿Cómo puedo acceder a una matriz JSON con boost :: property_tree?
- 26. ¿Cómo instalar complementos en jenkins, con la ayuda de la API de acceso remoto de jenkins?
- 27. Plugin de eclipse de Perforce: diferencia entre "obtener la última revisión" y "sincronizar con el almacén"
- 28. ¿Cómo puedo acceder a la variable de tiempo en modelica
- 29. ¿Puedo extender Jenkins con Jython/Python
- 30. Volver a la revisión anterior en Bazar
Comentando aquí ya que esta es la respuesta correcta para obtener el número de compilación de Jenkins. Sin embargo, si su pregunta era sobre el número de Revisión de un repositorio de Mercurial, entonces querrá ejecutar el siguiente comando desde un repositorio de clones "hg id -n" y luego dirigir el resultado de manera apropiada (es decir, leerlo en una variable o archivo de registro –