Проверьте, является ли пакет Python на git новее, чем локальный - PullRequest
2 голосов
/ 31 октября 2019

У меня есть пакет, который распространяется по запросу людей:

pip install git+"https://gitlab.com/project/mypackage.git@master"

Я хотел бы иметь скрипт Python, который при запуске указывает, что локальный пакет старше, чемудаленный (я хочу избежать автоматического обновления) .

Я думал сделать следующее, скажем check_version.py

from pkg_resources import parse_version, get_distribution
local_version = parse_version(get_distribution("mypackage").version)

def foo()
    # GET GIT REPO PACKAGE VERSION
    return repo_version

repo_version = foo()

if local_version < repo_version:
    print("Local Installation is out of date")
else:
    print("Local Installation is up to date.")

Однако я не уверен, как запросить GIT-репо, чтобы получить номер версии ... В основном foo должна быть реализована функция, есть идеи, как это сделать?

1 Ответ

0 голосов
/ 31 октября 2019

Создайте простой текстовый файл VERSION в вашем хранилище, который имеет только текущую версию. Каждый файл в Gitlab имеет сырой URL;Ваш файл будет доступен на https://gitlab.com/project/mypackage/raw/master/VERSION. Прочитайте содержимое URL в foo, используя httplib/http.client или urllib или requests, что угодно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...