Программа для администрирования серверов 1С (ras) для Linux (в первую очередь) и Windows.
Практически все действия в программе выполняются из контекстного меню по нажатию правой кнопки мыши.
При первом запуске программа создаёт два файла настроек. Дальше программа проверяет, запущен ли на локальном компьютере сервер ras. Далее желательно заполнить настройки программы, где выбрать сервер, где запущен ras - это может быть или локальная машина, или один или несколько серверов в сети.
По умолчанию сервер ras требует отдельного запуска, и для этого нужно нажать кнопку "Запустить ras". Вы попадёте в форму запуска ras, где можно выбрать варианты:
- запустить ras как службу на локальной машине (эту команду можно скопировать и использовать для создания служб ras на серверах в локальной сети)
- запустить ras разово на локальной машине (через командную строку)
После этого можно заполнить список баз, зарегистрированных в кластере 1С. Это можно сделать либо вручную, либо автоматически, нажав кнопку "Обновить". Если настройки были заполнены корректно, то после окончания процедуры обновления в левой части программы появится список серверов с базами.
Для пользователей Linux можно заполнить учётные данные администратора кластера для их дальнейшего автоматического использования (либо при вызове определённых команд потребуется вводить логин и пароль вручную)
Дальше нужно заполнить учётные данные администратора информационной базы 1С (если доступ к ИБ того требует). Возможно, стоит реализовать ввод логина/пароля в отдельном окне при обращении к базе, если этих данных нет в программе, но это пока не реализовано. (Ладно, пока придумывал весь этот текст, по ходу реализовал)
Ну, а дальше всё должно быть интуитивно понятно - если Вы запустили эту программу, то уж наверняка предполагаете, как она работает.
Вывод ошибок большинства команд, когда надо получить "выхлоп" (например, информация о сеансах), реализован через перенаправление стандартного потока вывода ошибок в текстовый файл во временной папке (...\Temp или .../tmp). Создаются две команды - одна для поиска ошибок (запускается через os.system(_bashCommand)), другая для непосредственного выполнения команды, если в первой команде ошибок не было обнаружено (запускается через subprocess.check_output(bashCommand, shell=True)). То есть по факту большинство команд выполняется дважды подряд. С виду такой метод кажется корявым, но как это реализовать более технично-эстетично в python, я не знаю, поэтому выкрутился вот таким вот способом.
Командам на исполнение "выхлоп" не нужен, поэтому в subprocess.check_output() смысла нет.
Адрес проекта - https://bitbucket.org/pependos/admin_console
Буду искренне рад, если эта программа окажется полезной сообществу, особенно среди 1Сников-линуксоидов.