I have a github action CI configured to use pipenv to install a package from a private repository.
For reasons unknown, pipenv install
command returns the following error:
FAIL
ERROR:pip.subprocessor:Command errored out with exit status 128:
command: git clone -q 'https://****@github.com/<ORG>/<REPO>.git' /tmp/pipenv-_xaxkgk4-src/csci-utils
cwd: None
Complete output (1 lines):
fatal: could not read Password for 'https://${SUPER_SECRET}@github.com': No such device or address
I'm expecting the pipenv file to read the variable from an .env file created during CI run. Following is the relevant github workflow config, which runs before pipenv executes:
- name: Create .env file
run: |
touch .env
echo ${{ secrets.PERSONAL_ACCESS_TOKEN }}
echo SUPER_SECRET=${{ secrets.PERSONAL_ACCESS_TOKEN }} > .env
cat .env
PS: Personal access token is the secret's name created under the current repository of the user. This is not the default Github-token.
Update: Am able to confirm that pipenv receives the correct secret, by modifying and print the secret to the log. So, this essentially changes the question to - why does git clone
ask for password even when password-token is used ?