Estoy tratando de hacer End-to-End automatización para un iOS proyecto. Mi objetivo es automatizar el proceso de integración continua con adjuntar scripts UIAutomation
como acción de creación posterior. Entonces, desde el momento en que un usuario verifique su código en SVN y hasta que obtengamos el resultado de la prueba de automatización, todo estará automatizado.postbuild UIAutomation script no se ejecuta en jenkins
Jenkins
está instalado en mi máquina local y se ejecuta en localhost
.
Ahora he automatizado el proceso de compilación a través de jenkins
y en el otro extremo tengo listo mi script de shell que ejecutará UIAutomation
scripts de Java en el resultado de compilación.
Cuando uso mi script de shell como acción posterior a la compilación, obtengo un error al ejecutar el comando del instrumento (escrito dentro del script del shell) pero si ejecuto este script manualmente a través del terminal, funciona bien.
instruments[64703:60f] -[NSAlert alertWithError:] called with nil NSError. A generic error message will be displayed, but the user deserves better.
_RegisterApplication(), FAILED TO establish the default connection to the WindowServer, _CGSDefaultConnection() is NULL. Mon Feb 6 13:15:20 inpunml310743 instruments[64703] <Error>: kCGErrorFailure: Set a breakpoint @ CGErrorBreakpoint() to catch errors as they are logged. 2012-02-06 13:15:20.179 instruments[64703:60f] Recording cancelled : At least one target failed to launch; aborting run Instruments Trace Error : Failed to start trace. Build step 'Execute shell' marked build as failure Finished: FAILURE
Luego probé este comando con sudo luego me siguiente error sudo: sin TTY presente y hay un programa askpass especifica
Por favor, quisiera saber cómo puedo ejecutar estos comandos éxito, sólo que esta paso queda en mi tarea.
¿El Jenkins ejecuta como un servicio en su máquina? Si es así, ¿qué usuario se usa para ejecutar el servicio? – ingorichter
está utilizando la cuenta compartida en mac, cuando instalamos el paquete no da la opción de seleccionar la ubicación/usuario e instalarlo en la carpeta compartida. – vikas
Jenkins se está ejecutando como daemon y, por lo tanto, no se le permite conectarse al servidor de Windows. Más información aquí https://developer.apple.com/library/mac/#technotes/tn2083/_index.html. – ingorichter