Добрый день!
Передо мной стоит следующая задача — создать SSH соединение с сервером, залить по SFTP файлы (конкретно — сорцы) и запустить там скрипт сборки.
Делаю это на Python с помощью paramiko. Все ок кроме собственно запуска скрипта. Запускаю его через exec_command и вижу только пару первых сообщений и далее скрипт прекращается (именно питоновский, значит exec_command отработал). Подскажите — как правильно подождать завершение работы скрипта и вывести все его сообщения?
Вот вырезки из кода:
paramiko.util.log_to_file('ssh_session.log')
ssh = SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
try:
ssh.connect(ssh_conf.server_address, ssh_conf.server_port, ssh_conf.login, None, my_pkey, 60)
except:
print 'Error connect'
sys.exit(1)
_sftp = ssh.open_sftp()
SyncFolders(_sftp, ssh_conf.source_folder, ssh_conf.dest_folder)
print ssh.exec_command('chmod +x' + ssh_conf.dest_folder + '/build.sh')[1].read()
# iOrange - performing build
print ssh.exec_command('sh ' + ssh_conf.dest_folder + '/build.sh')[1].read()