коде?
Понятно что реально, может кто-то пробовал.
Правильно понимаю, что сначала клонирую, потом импортирую конкретный файл. Должно же сработать, так?
pip умеет ставить пакеты с гита
Нет, мне нужно конкретный файл, без установки пакета. Динамически так сказать
Тянуть питоном - это в смысле прямо во время работы программы?
Что такое конкретный файл?
да, или во время инициализации. По сути нужно выделить код в приватный репо для защиты от копирования.
Может другие методы предложите
Ты дольше будешь с этим баловством ковыряться, чем такая "защита от копирования" продержится.
На днях тут один чувак бился венвами пытаясь и копировать из контейнера в контейнер, так вот там у него зависимости из кода ставились
А каким образом питон должен тянуть код из приватного репо?
Вообще технически - тянем файл, берём в руки importlib - и понеслось. Но дьявол в деталях, как обычно.
Не очень понятно, как это защитит от копирования
Ни как. Просто на проде есть доступ к приватному репо, а у исполнителя нет
А, то есть исполнителю даётся в руки документация на некую либу, а сама либа — нет?
Там имплементация интерфейса программного. Типа DI. Соответственно есть тупая реализация
Запустить потестить он не сможет?
Ну тогда это решается пакетированием кода и двумя вариантами пакета. Одна отдаётся наружу, вторая ставится только на проде. Опционально можно даже приватный package index рядом с продом поднять, чтобы проще было ставить
Можно и так, там вроде питоновские registry есть. Можно вообще два registry завести, один публичный с наивной реализацией, второй приватный с полноценной реализацией с доступом только для деплоера прода. Тогда отличие будет вообще только в конфигурации пипа
Обсуждают сегодня