У меня есть набор демонов, который развертывает контейнеры для проверки состояния нескольких точек монтирования. Это развертывание daemonset выполняется из скрипта Python, и вскоре после команды развертывания я собираю журналы, которые будут созданы вышеприведенными модулями daemonset. Я вижу, что журналы копируются вскоре после запуска создания демона, и по той же причине журналы не завершены.
После некоторого исследования я обнаружил, что модули daemonset все еще находятся в процессе выполнения сценария и записи журналов. Между тем основной сценарий уже перешел к следующей команде копирования журналов с помощью команды kubectl cp
.
Можно ли как-нибудь поставить ожидание на основании условия, что копирование журналов происходит только после завершения выполнения скрипта.
Это часть кода, которую я имею
# Create diag pod
cmd = "kubectl apply -f diagnostic_daemon.yaml"
(rc, cmd_out, cmd_err) = cmdHandle.cmd_run(cmd)
if cmd_err.strip():
print "ERROR: Unbale to create diag POD. Exiting!!!"
print "> " + REDC + cmd_err.strip() + ENDC
sys.exit(1)
# wait for the daemonset pod to reach running state
check_daemonset_state("cos-plugin-diag")
print "\n*****Collecting cos-plugin-diag logs*****"
# Collect diag pod logs
global nodeQdigl