Какой способ лучше для отправки обновлений в .exe файл на клиентской машине? (Exe, созданный pyinstaller)

Context

Для небольшого контекста я разработчик-самоучка, который в настоящее время работает как фрилансер на Fiverr. Я работаю с использованием Django и React Framework. Я разрабатываю различные виды программ автоматизации для своих клиентов, в большинстве случаев я предоставлял исходный код своим клиентам, а они устанавливали Python и другие библиотеки, чтобы заставить программу работать на своей стороне, и, как вы все можете догадаться, этот метод был очень неэффективным. Поэтому я научился конвертировать мой django-код в формат .exe с помощью Pyinstaller. Теперь все, что нужно сделать клиентам, - это дважды щелкнуть на exe-файле, который запускает веб-приложение в браузере.

Проблема

Но теперь я столкнулся с другой проблемой. Поскольку сейчас я работаю с несколькими постоянными клиентами, которые часто обращаются ко мне с просьбой добавить новые функции. Но проблема в том, что каждый раз, когда я обновляю их веб-приложения, добавляя новые функции, им приходится вручную устанавливать новую версию, а затем вручную переносить все данные в новую версию, что, конечно, представляет собой большую проблему. Поэтому некоторые из них просят меня сделать что-нибудь, чтобы им не приходилось каждый раз переносить данные, а также сделать что-нибудь, чтобы я мог автоматически рассылать обновления, не заставляя их снова все скачивать. И я не знаю, что мне делать?

Некоторые решения, которые я придумал

Вот несколько решений, которые, на мой взгляд, могут сработать, но есть и проблемы, связанные с некоторыми из них.
  1. Заставьте их скопировать файл db.sqlite3 из старой версии в новую. Да, вроде бы все в порядке, но проблема в том, что в большинстве обновлений мне приходится менять и структуру базы данных, так что это решение не сработает.

  2. Переместить бэкенд на сервер (фронтенд все еще должен быть размещен на их стороне, потому что некоторые функции все еще должны выполняться с их компьютера. (Потому что инструмент использует Selenium Automation). Но опять та же проблема - им все равно придется скачивать обновления, а также нести расходы на сервер

    .

SO, есть ли какие-либо лучшие решения, которые я могу использовать для обновления .exe на их стороне без необходимости устанавливать его вручную. BTW я поставляю свое программное обеспечение в .zip-файле, и мои клиенты считают, что скачивать zip, затем извлекать его и заменять предыдущим файлом довольно раздражающе!

Вернуться на верх