Сведения о вопросе

LiKIY

05:19, 6th August, 2020

Теги

Python   SSH    

Python + paramiko + shell script?

Просмотров: 365   Ответов: 1

Добрый день!


Передо мной стоит следующая задача — создать 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()



  Сведения об ответе

VCe znayu

20:08, 4th August, 2020

Fabric не подходит?


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться