将秘密变量引入Github Actions上的dockerfile



我正在尝试配置我的etc/pip.conf文件来下载一个私有的PyPi artifactory,同时在我的dockerfile上使用一个秘密变量。

<标题>Dockerfile h1> docker-image.yml h1> 常简单和直接,但是我的管道返回以下
Step 6/8 : RUN echo ${{ secrets.PIP }} > etc/pip.conf
---> Running in deb3e3f4167f
/bin/sh: 1: Bad substitution
The command '/bin/sh -c echo ${{ secrets.PIP }} > etc/pip.conf' returned a non-zero code: 2
Error: Process completed with exit code 2.
编辑:

尝试稍微不同的方法,并在管道中安装依赖项

my .yml现在是这样的

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Setup JFrog CLI
uses: jfrog/setup-jfrog-cli@v2
env:
JF_ARTIFACTORY_SERVER: ${{ secrets.JFROG_CLI }}
- name: Checkout
uses: actions/checkout@v3
- name: install dependencies
run: |
pip config -v list
echo "${{ secrets.PIP }}" > /etc/pip.conf
pip install ganesha-experimental==2.0.1
- name: Build
run: |
docker build -t simple-flask .
docker tag simple-flask awakzdev.jfrog.io/docker-local/simple-flask:latest
docker push awakzdev.jfrog.io/docker-local/simple-flask:latest

,但是返回以下错误:

1s
Run pip config -v list
For variant 'global', will try loading '/etc/xdg/pip/pip.conf'
For variant 'global', will try loading '/etc/pip.conf'
For variant 'user', will try loading '/home/runner/.pip/pip.conf'
For variant 'user', will try loading '/home/runner/.config/pip/pip.conf'
For variant 'site', will try loading '/usr/pip.conf'
/home/runner/work/_temp/09382b8f-ce09-4646-816f-fb337f40ad4b.sh: line 2: /etc/pip.conf: Permission denied
Error: Process completed with exit code 1.

我把秘密放在了我的。yml文件中。

对于破碎的pip权限我使用

sudo chown runner /etc/
echo ${{ secrets.PIP }} > /etc/pip.conf

导致pip.conf文件的内容出现另一个错误(通过secrets正确配置)

所以我发现你可以像这样指定url

ganesha_experimental==5.0.0 --find-links=https://awakzdev.jfrog.io/artifactory/

最新更新