Devo avviare e riavviare un server Web personalizzato su travis. A partire dal fondo va bene con un sub-shell (.travis.yml
):Come posso avviare e interrompere un'attività in background su travis?
- if [ "$TEST_ADAPTER" = "HTTP" ]; then (vendor/bin/httpd.php start &); fi
Per arrestare/uccidere di nuovo il processo che sto cercando di ottenere il suo PID e poi ucciderlo:
- if [ "$TEST_ADAPTER" = "HTTP" ]; then (vendor/bin/httpd.php start &) && SERVER_PID=$!; fi
- ...
- if [ "$TEST_ADAPTER" = "HTTP" ]; then kill -9 $SERVER_PID && ...; fi
Tuttavia, SERVER_PID
è vuoto.
Qual è il modo giusto per ottenere il PID di un processo in background su travis per bloccarlo (complicazione: senza utilizzare uno script di shell aggiuntivo)?
Per quanto ne so che non posso scrivere istruzioni multi-lien in travis.yml https://groups.google.com/forum/#!topic/travis-ci/uaAP9zEdiCg – andig
Esatto, ma puoi mettere quanto sopra in uno script di shell ed eseguire quello script dal tuo file .travis.yml. – xmonk