Вы можете использовать Файл> Настройки> Инструменты> Внешние инструменты для запуска произвольных внешних исполняемых файлов.Вы можете написать небольшую команду, которая подключается через SSH и запускает команду [set of].Тогда настроенный инструмент будет исполняемым
Например, в моем проекте, основанном на tornado , я запускаю экземпляры, используя supervisord , что, согласно ответу здесь , не может перезапуститься после изменения кода.
В итоге я написал небольшой инструмент для paramiko , который подключается через ssh и запускает supervisorctl restart
.Код ниже:
import paramiko
from optparse import OptionParser
parser = OptionParser()
parser.add_option("-s",
action="store",
dest="server",
help="server where to execute the command")
parser.add_option("-u",
action="store",
dest="username")
parser.add_option("-p",
action="store",
dest="password")
(options, args) = parser.parse_args()
client = paramiko.SSHClient()
client.load_system_host_keys()
client.connect(hostname=options.server, port=22, username=options.username, password=options.password)
command = "supervisorctl reload"
(stdin, stdout, stderr) = client.exec_command(command)
for line in stdout.readlines():
print line
client.close()
Конфигурация внешнего инструмента в Pycharm:
- Программа:
<PYTHON_INTERPRETER>
- Параметры:
<PATH_TO_SCRIPT> -s <SERVERNAME> -u <USERNAME> -p <PASSWORD>