Estoy teniendo un script de shell archivo llamado urltest.sh en /var/lib/jenkins y ejecutar el archivo de jenkins construir.

Cuando ejecuto la construcción, Se produce un error.

The Environment Variables are - 
HOME -          /var/lib/jenkins ;
JENKINS_HOME -  /var/lib/jenkins

La salida de la consola viene como:

Started by user anonymous
Building in workspace /var/lib/jenkins/workspace/AutoScript
[AutoScript] $ /bin/sh -xe /tmp/hudson2777728063740604479.sh
+ sh urltest.sh
sh: 0: Can't open urltest.sh
Build step 'Execute shell' marked build as failure
Finished: FAILURE

Estoy confundido dónde debo guardar la secuencia de comandos de shell archivo para que se ejecute.

InformationsquelleAutor Kworks | 2014-01-22

4 Comentarios

  1. 19

    Si ves el mensaje de error que dice

    Edificio en el espacio de trabajo /var/lib/jenkins/workspace/AutoScript

    y por sus comentarios que te han puesto urltest.sh en

    /var/lib/jenkins

    Por lo tanto Jenkins no es capaz de encontrar el archivo.
    En el paso de generación de hacer esto, va a trabajar

    cd             # which will point to /var/lib/jenkins
    ./urltest.sh   # it will run your script

    Si el error persiste intenta chown el archivo como jenkin usuario no tiene los permisos de los archivos, pero creo que si haces los pasos anteriores, usted será capaz de ejecutar.

  2. 37

    Basado en el número de visitas a esta cuestión, se parece a un montón de personas visitan este a ver cómo configurar un trabajo que se ejecuta una secuencia de comandos de shell.

    Estos son los pasos para ejecutar una secuencia de comandos de shell en Jenkins:

    • En la página principal de Jenkins seleccione Nuevo Elemento.
    • Introduzca un nombre de elemento como «mi script de shell trabajo» y eligió Freestyle proyecto. Pulse ACEPTAR.
    • En la página de configuración, en la Construir bloque haga clic en el Agregar construir paso lista desplegable y seleccione Ejecutar shell.
    • En el textarea puede pegar un script o indicar cómo ejecutar una secuencia de comandos existente. Así que usted puede decir:

      #!/bin/bash
      
      echo "hello, today is $(date)" > /tmp/jenkins_test

      o simplemente

      /path/to/your/script.sh
    • Haga Clic En Guardar.

    Ahora el recién creado puesto de trabajo debe aparecer en la página principal de Jenkins, junto con los otros. Ábralo y seleccione Construir ahora a ver si funciona. Una vez que se ha terminado de recoger esa generación concreta de la construcción de la historia y leer el salida de la Consola para ver si todo ocurrió como se desee.

    Usted puede obtener más detalles en el documento Crear una Jenkins secuencia de comandos de shell trabajo en GitHub.

    • Muy útil. Gracias.
  3. 4

    Respuestas anteriores son correctas, pero aquí es una manera más de hacer esto y algunos consejos:

    Opción #1
    Vaya a usted Jenkins trabajo y la búsqueda para «agregar construir paso» y, a continuación, sólo tienes que copiar y pegar el script no

    Opción #2
    Ir a Jenkins y hacer lo mismo de nuevo «agregar construir paso», pero esta vez de poner la ruta de acceso completa de la secuencia de comandos no hay ejemplo : ./usr/somewhere/helloWorld.sh

    ¿Cómo puedo ejecutar secuencia de comandos de Shell en Jenkinsfile?
    ¿Cómo puedo ejecutar secuencia de comandos de Shell en Jenkinsfile?

    cosas para ver /consejos:

    • Variables de entorno, si el trabajo se está ejecutando al mismo tiempo, entonces usted tiene que preocuparse acerca de los problemas de concurrencia. Un trabajo se puede establecer el valor de las variables de entorno y el siguiente puede utilizar el valor o tomar alguna acción basada en que incorrectamente.
    • Asegúrese de que todos los caminos están totalmente cualificados
    • Pensar de registro /var/log o en algún lugar así que también tendría algo para ir en el servidor (opcional)
    • cosa acerca de la cuestión del espacio y permisos, la falta de espacio y problemas de permisos son muy comunes en el entorno linux
    • De alerta y asegúrese de que el script/trabajo no la jenkin puestos de trabajo cuando el script falla

Dejar respuesta

Please enter your comment!
Please enter your name here