2012-09-28 56 views
6

¿Cómo se puede obtener build_number (y otros metadatos de compilación) desde el comando after_script en Travis-CI?Cómo obtener Travis-CI build_number dentro del comando after_script

lo que se ha intentado ya:

El documentation on build configuration dice esto, en la notificación IRC sección:

También tiene la posibilidad de personalizar el mensaje que será enviado al canal (s) con una plantilla:

notifications: 
    irc: 
    channels: 
     - "irc.freenode.org#travis" 
     - "irc.freenode.org#some-other-channel" 
    template: 
     - "%{repository} (%{commit}) : %{message} %{foo} " 
     - "Build details: %{build_url}" 

Puede interpolar las siguientes variables:

  • repositorio: URL de su repositorio de GitHub.
  • build_number: número de compilación.
  • branch: nombre de compilación de la rama.
  • cometer: acortar cometer SHA
  • autor: cometer el nombre del autor.
  • mensaje: travis mensaje a la compilación.
  • compare_url: commit change view URL.
  • build_url: URL del detalle de compilación.

Tratando de conseguir que esto funcione dentro de un comando after_script como abajo, que no funcionó en absoluto:

language: java 
after_script: 
    - git commit -a -m "Committed by Travis-CI build number: %{build_number}" 

Se comportaba como si .travis.yml archivo estaba ausente/no válido (a pesar de que pasó la validación YAML de Travis-CI here).

Parece que esto debería ser factible, pero no pudo encontrar ninguna muestra que lo haga.

¿Podría alguien señalarme en la dirección correcta?

Respuesta

8

Desafortunadamente, las sustituciones de cadenas que puede realizar para la salida IRC solo funcionan allí. Solo están destinados a ser utilizados para notificaciones en general, para personalizar el resultado, pero actualmente solo están disponibles para IRC.

Todavía hay una forma de obtener el número de compilación actual, accediendo a la variable de entorno TRAVIS_JOB_ID. Si cambia la secuencia de comandos a la siguiente línea, las cosas deberían funcionar como se esperaba:

after_success: 
    - git commit -a -m "Committed by Travis-CI build number: $TRAVIS_JOB_ID" 
+0

intentado esto y no funciona, por desgracia - https://travis-ci.org/#!/hackersInCTS/spinach-android/builds/2599261 –

+1

¡Solucionado! Fue el colon el causante del problema.Pero lamentablemente, no está dando el valor correcto que queremos. Por alguna razón, es (la ID de compilación real +1) –

+0

No quiero que la recompensa se desperdicie, por lo que se lo atribuye a esta respuesta, a pesar de que esto no acaba de responder mi pregunta. –

Cuestiones relacionadas