sto provando a configurare un server per i test di integrazione (in realtà le specifiche) tramite Ruby e non riesco a capire come controllare il processo.come controller (start/kill) un processo in background (app server) in ruby
così, quello che sto cercando di fare è:
- eseguire un'attività rastrello per la mia gemma che esegue le specifiche di integrazione
- l'attività deve iniziare prima di un server (io uso webrick) e quindi eseguire le specifiche
- dopo l'esecuzione delle specifiche dovrebbe uccidere il webrick quindi non sono andato con alcuni inutilizzati processo in background
webrick non è un requisito, ma è inclusa nel libra standard di rubino quindi essere in grado di usarlo sarebbe fantastico.
sperare che qualcuno sia in grado di aiutare!
ps. sto lavorando su Linux, quindi avere questo lavoro per Windows non è la mia priorità principale (in questo momento).
ottimo. Grazie mille. mentre provavo le cose, avevo una "soluzione" quasi identica che funzionava quasi, ma non riesco a capire dove fosse diverso. inoltre avevo bisogno di aggiungere un sonno dopo aver forato il processo per aspettare che il server fosse disponibile. Grazie! – rubiii
sono riuscito a riprodurre la differenza. Ho eseguito il sistema Kernel # invece di Kernel # exec. Kernel # exec "sostituisce il processo corrente eseguendo il comando esterno specificato" dove Kernel # system "esegue il comando in una subshell". – rubiii
Il processo figlio può rimanere attivo anche se lo script rubino viene chiuso? –