Я пытаюсь автоматизировать следующие через Fabric:Можно ли использовать ткань для передачи команд интерактивной оболочке?
- SSH на удаленный хост.
- Выполните скрипт python (Django management command
dbshell
). - Передайте известные значения подсказкам, которые генерирует сценарий.
Если бы я сделать это вручную, это было бы что-то вроде:
$ ssh -i ~/.ssh/remote.pem [email protected]
[email protected]$ python manage.py dbshell
postgres=> Password For ubuntu: _____ # i'd like to pass known data to this prompt
postgres=> # i'd like to pass known data to the prompt here, then exit
=========
Мое текущее решение выглядит примерно так:
from fabric.api import run
from fabric.context_managers import settings as fabric_settings
with fabric_settings(host_string='10.10.10.158', user='ubuntu', key_filename='~/.ssh/remote.pem'):
run('python manage.py dbshell')
# i am now left wondering if fabric can do what i'm asking....