Saya memiliki server CI dengan antarmuka baris perintah yang memungkinkan saya untuk memulai pekerjaan dari jarak jauh ( jenkins
server CI dan jenkins-cli.jar
alatnya).
Setelah saya memulai pekerjaan saya tail -f
log (maaf untuk perintah berantakan):
ssh -t my-jenkins-host.com "tail -f \"/var/lib/jenkins/jobs/$job_name/builds/\`ls -ltr /var/lib/jenkins/jobs/$job_name/builds/ | grep '^l' | tail -n 1|awk '{print \$9}'\`/log\""
Setelah pekerjaan berhasil diselesaikan, biasanya setelah setidaknya 5 menit, saya mendapatkan baris berikut pada output:
Finished: SUCCESS
Apakah ada cara yang baik untuk berhenti mengikuti log pada saat ini? yaitu apakah ada seperti tail_until 'some line' my-file.log
perintah?
BONUS: kredit ekstra jika Anda dapat memberikan jawaban yang mengembalikan 0 saat SUKSES dicocokkan, 1 saat FAILURE dicocokkan, dan solusi Anda berfungsi di mac! (yang saya percaya berdasarkan bsd)