From fd14221ab50f4fc476a0ababdfbf59bb8c7c8238 Mon Sep 17 00:00:00 2001 From: Jarrod Johnson Date: Fri, 28 Oct 2022 09:30:12 -0400 Subject: [PATCH] Avoid truncating console logging of firstboot With significant firstboot output, there was a tendency for tail to be killed before it relayed all the content. Change to run the firstboot in a subshell in the background, and have tail explicitly run until that subshell naturally exits and then tail will cleanly exit --- .../el7-diskless/profiles/default/scripts/firstboot.sh | 6 +++--- .../el8-diskless/profiles/default/scripts/firstboot.sh | 6 +++--- .../el8/profiles/default/scripts/firstboot.sh | 6 +++--- .../el9-diskless/profiles/default/scripts/firstboot.sh | 6 +++--- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/confluent_osdeploy/el7-diskless/profiles/default/scripts/firstboot.sh b/confluent_osdeploy/el7-diskless/profiles/default/scripts/firstboot.sh index c52b3b89..a9654c01 100644 --- a/confluent_osdeploy/el7-diskless/profiles/default/scripts/firstboot.sh +++ b/confluent_osdeploy/el7-diskless/profiles/default/scripts/firstboot.sh @@ -11,11 +11,10 @@ confluent_mgr=$(grep ^deploy_server: /etc/confluent/confluent.deploycfg|awk '{pr confluent_profile=$(grep ^profile: /etc/confluent/confluent.deploycfg|awk '{print $2}') export nodename confluent_mgr confluent_profile . /etc/confluent/functions +( exec >> /var/log/confluent/confluent-firstboot.log exec 2>> /var/log/confluent/confluent-firstboot.log chmod 600 /var/log/confluent/confluent-firstboot.log -tail -f /var/log/confluent/confluent-firstboot.log > /dev/console & -logshowpid=$! while ! ping -c 1 $confluent_mgr >& /dev/null; do sleep 1 done @@ -37,4 +36,5 @@ curl -X POST -d 'status: complete' -H "CONFLUENT_NODENAME: $nodename" -H "CONFLU systemctl disable firstboot rm /etc/systemd/system/firstboot.service rm /etc/confluent/firstboot.ran -kill $logshowpid +) & +tail --pid $! -F /var/log/confluent/confluent-firstboot.log > /dev/console diff --git a/confluent_osdeploy/el8-diskless/profiles/default/scripts/firstboot.sh b/confluent_osdeploy/el8-diskless/profiles/default/scripts/firstboot.sh index c52b3b89..a9654c01 100644 --- a/confluent_osdeploy/el8-diskless/profiles/default/scripts/firstboot.sh +++ b/confluent_osdeploy/el8-diskless/profiles/default/scripts/firstboot.sh @@ -11,11 +11,10 @@ confluent_mgr=$(grep ^deploy_server: /etc/confluent/confluent.deploycfg|awk '{pr confluent_profile=$(grep ^profile: /etc/confluent/confluent.deploycfg|awk '{print $2}') export nodename confluent_mgr confluent_profile . /etc/confluent/functions +( exec >> /var/log/confluent/confluent-firstboot.log exec 2>> /var/log/confluent/confluent-firstboot.log chmod 600 /var/log/confluent/confluent-firstboot.log -tail -f /var/log/confluent/confluent-firstboot.log > /dev/console & -logshowpid=$! while ! ping -c 1 $confluent_mgr >& /dev/null; do sleep 1 done @@ -37,4 +36,5 @@ curl -X POST -d 'status: complete' -H "CONFLUENT_NODENAME: $nodename" -H "CONFLU systemctl disable firstboot rm /etc/systemd/system/firstboot.service rm /etc/confluent/firstboot.ran -kill $logshowpid +) & +tail --pid $! -F /var/log/confluent/confluent-firstboot.log > /dev/console diff --git a/confluent_osdeploy/el8/profiles/default/scripts/firstboot.sh b/confluent_osdeploy/el8/profiles/default/scripts/firstboot.sh index 7f97d1c7..e81b8c6e 100644 --- a/confluent_osdeploy/el8/profiles/default/scripts/firstboot.sh +++ b/confluent_osdeploy/el8/profiles/default/scripts/firstboot.sh @@ -23,11 +23,10 @@ fi confluent_profile=$(grep ^profile: /etc/confluent/confluent.deploycfg|awk '{print $2}') export nodename confluent_mgr confluent_profile . /etc/confluent/functions +( exec >> /var/log/confluent/confluent-firstboot.log exec 2>> /var/log/confluent/confluent-firstboot.log chmod 600 /var/log/confluent/confluent-firstboot.log -tail -n 0 -f /var/log/confluent/confluent-firstboot.log > /dev/console & -logshowpid=$! while ! ping -c 1 $confluent_pingtarget >& /dev/null; do sleep 1 done @@ -50,4 +49,5 @@ curl -X POST -d 'status: complete' -H "CONFLUENT_NODENAME: $nodename" -H "CONFLU systemctl disable firstboot rm /etc/systemd/system/firstboot.service rm /etc/confluent/firstboot.ran -kill $logshowpid +) & +tail --pid $! -n 0 -F /var/log/confluent/confluent-firstboot.log > /dev/console diff --git a/confluent_osdeploy/el9-diskless/profiles/default/scripts/firstboot.sh b/confluent_osdeploy/el9-diskless/profiles/default/scripts/firstboot.sh index c52b3b89..a9654c01 100644 --- a/confluent_osdeploy/el9-diskless/profiles/default/scripts/firstboot.sh +++ b/confluent_osdeploy/el9-diskless/profiles/default/scripts/firstboot.sh @@ -11,11 +11,10 @@ confluent_mgr=$(grep ^deploy_server: /etc/confluent/confluent.deploycfg|awk '{pr confluent_profile=$(grep ^profile: /etc/confluent/confluent.deploycfg|awk '{print $2}') export nodename confluent_mgr confluent_profile . /etc/confluent/functions +( exec >> /var/log/confluent/confluent-firstboot.log exec 2>> /var/log/confluent/confluent-firstboot.log chmod 600 /var/log/confluent/confluent-firstboot.log -tail -f /var/log/confluent/confluent-firstboot.log > /dev/console & -logshowpid=$! while ! ping -c 1 $confluent_mgr >& /dev/null; do sleep 1 done @@ -37,4 +36,5 @@ curl -X POST -d 'status: complete' -H "CONFLUENT_NODENAME: $nodename" -H "CONFLU systemctl disable firstboot rm /etc/systemd/system/firstboot.service rm /etc/confluent/firstboot.ran -kill $logshowpid +) & +tail --pid $! -F /var/log/confluent/confluent-firstboot.log > /dev/console