Установка pip из частного файла tar.gz для репозитория bitbucket - PullRequest
0 голосов
/ 15 января 2019

У меня есть общее частное репо, которое зависит от других частных репо.

У меня есть процесс сборки, который создает файл tar.gz.это по этому URL

https://git.my_company.com/projects/RA/repos/my-common-module/browse/scripts/testing_dist/api_common_module-4.0.10.tar.gz

вот ssh url

ssh: //git@git.my_company.com: 8500 / ra / my-common-module.git

мой вопрос: какую команду pip я должен использовать для ее установки с терминала, и последующий вопрос, что я должен написать в файле needs.txt, чтобы записать эту установку?

1 Ответ

0 голосов
/ 27 января 2019

Вы можете сделать это, но это потенциальный риск для безопасности, поэтому будьте осторожны.

Bitbucket Cloud, Bitbucket Server и GitHub позволяют генерировать пароли приложений (Bitbucket Cloud) или токены личного доступа (Bitbucket Server, GitHub). Они могут быть ограничены по объему (например, только для чтения), чтобы пароли не могли использоваться для выполнения разрушительных действий. Вы можете использовать их для встраивания имени пользователя и пароля непосредственно в URL, который можно установить с помощью pip, например ::

pip install -e git+https://charlie:abcdefgh12345678@bitbucket.org/charlie/snakesonaplane.git@master#egg=snakesonaplane

(Примечание: не настоящий репо)

Вот в чем проблема: почти всегда опасно передавать какие-либо учетные данные в проект, где его могут увидеть другие люди. Например, помещать что-то подобное в ваши needs.txt почти всегда будет плохой идеей. Даже если это пароль только для чтения, и даже если у кого-то, кто может иметь к нему доступ, уже есть доступ ко всему остальному, к чему он в противном случае предоставил бы им доступ, это все еще дыра. Представьте, что если один из ваших товарищей по команде покидает вашу группу / компанию / и т. Д., Они могут потенциально иметь доступ только для чтения ко всей вашей работе до тех пор, пока пароль приложения действителен.

«Идеальным» решением здесь является размещение вашего собственного сервера PyPi. Вы можете использовать это для размещения частных пакетов, чтобы их можно было установить в пипсах без встраивания учетных данных в файлы требований, и если вы работаете в большой организации, вполне вероятно, что она уже существует. Это довольно интересная тема, поэтому я не буду воспроизводить всю информацию, но ее стоит изучить.

...