A autenticação para URLs de índice extras solicita autenticação interativa do usuário, mesmo quando a autenticação é especificada no próprio URL de índice extra.
Python 3.6.3
pipenv, version 8.3.2
Quando adiciono [[source]]
com um URL que contém informações de autenticação (por exemplo, https://user:password@host/pypi/simple
), as informações de autenticação não devem ser solicitadas.
$ pipenv lock --verbose
Locking [dev-packages] dependencies…
Using pip: -i https://pypi.python.org/simple --extra-index-url https://xxxUSERxxx:xxxPASSWORDxxx@xxxHOSTxxx/xxxPATHxxx/pypi/simple
ROUND 1
Current constraints:
xxx
xxx
xxx
Finding the best candidates:
User for xxxxxxxx:
Em seguida, aguarda a entrada do usuário.
[[source]]
a Pipfile
com um URL que requer autenticação http básica.Pipfile
que usa o índice especificado (por exemplo, package_name: {version="*", index="index_name"}
.pipenv lock
.Desculpe, este não é um problema de pipenv
; isso acontece mesmo com pip
normais fora do virtualenv.
Para sua informação, para qualquer um que esteja se perguntando como usar repos pip
privados com CI e docker, você terá que usar a variável de ambiente PIP_EXTRA_INDEX_URL
com autenticação. Isso pode ser feito para teste local com um arquivo .env
que não foi verificado em um VCS e remotamente com tudo o que sua ferramenta de CI usa para definição de variável de ambiente (geralmente em configurações de GUI ou CLI para o repo). Se você estiver usando docker
, pode injetar --build-arg YOUR_ARG_KEY=$YOUR_ENV_VAR
. Eu adicionaria isso ao problema relevante (# 1020), mas foi encerrado por algum motivo.
@Californian obrigado pela atualização relevante, vou adicionar um link
@Californian OT aqui, mas usar --build-arg
para segredos não é bom. Você pode realmente obter o segredo do histórico de construção; tente docker history <image>
e você o verá lá.
Comentários muito úteis
Desculpe, este não é um problema de
pipenv
; isso acontece mesmo compip
normais fora do virtualenv.Para sua informação, para qualquer um que esteja se perguntando como usar repos
pip
privados com CI e docker, você terá que usar a variável de ambientePIP_EXTRA_INDEX_URL
com autenticação. Isso pode ser feito para teste local com um arquivo.env
que não foi verificado em um VCS e remotamente com tudo o que sua ferramenta de CI usa para definição de variável de ambiente (geralmente em configurações de GUI ou CLI para o repo). Se você estiver usandodocker
, pode injetar--build-arg YOUR_ARG_KEY=$YOUR_ENV_VAR
. Eu adicionaria isso ao problema relevante (# 1020), mas foi encerrado por algum motivo.