Последние шесть месяцев я работал над приложением Python GUI, которое я буду использовать на работе.В частности, мой графический интерфейс будет работать на нескольких суперкомпьютерных кластерах, которые я использую для работы.
Тем не менее, я в основном разрабатываю программное обеспечение на своем персональном компьютере, и здесь у меня нет прямого доступа к командам, которые моиGUI будет вызывать, поскольку GUI будет использовать subprocess
для вызова команд, которые доступны только в вычислительном кластере.
Итак, для эффективной разработки программы мне часто приходится копировать каталог, содержащий все файлы.связан с графическим интерфейсом, с кластером.Затем я проверяю свою текущую версию там, нахожу все свои ошибки, исправляю их, редактируя файлы в кластере, и, наконец, копирую все файлы на мой компьютер, перезаписывая старую версию.
Это только кажется плохимспособ сделать это, но я должен быть в состоянии проверить свое программное обеспечение в среде, для которой оно предназначено, чтобы найти мои ошибки.
Конечно, это распространенная проблема в разработке программного обеспечения ... Что на самом делепрограммисты (в отличие от программистов-хобби, таких как я)?
Редактировать: Примеры команд, которые доступны только в вычислительном кластере, которые я активно использую, это squeue
, sacct
иscontrol
(команды, связанные с SLURM).
Edit2: Я мог бы упомянуть, что я тестировал использование соединений ssh с Python, но он значительно замедлял команды, устанавливая соединение ssh для каждой команды, которую я хотел.Если я не смогу установить длительный сеанс ssh, как при входе в систему при открытии моей программы, я не думаю, что ssh-ing будет работать.