Github actions, setting gem username from secrets: 请在将用户名和密码设置为身份验证之前对它们进行 CGI 转义
Github actions, setting gem username from secrets: Please CGI escape your usernames and passwords before setting them for authentication
我正在尝试根据 运行 我们的规范设置 Github 操作,但是我们使用需要密码的私人 gem 服务器。我有added a secret and then set a ENV到秘密的价值。
但是我从捆绑程序中收到以下错误:
"Please CGI escape your usernames and passwords before setting them for authentication".
我可以看到 bundler source 中发生了这种情况。这似乎是 URI 的问题。
在本地或我们当前的 CI 服务器上执行相同的过程时,我没有收到此错误。
这是工作流程:
name: Ruby
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Set up Ruby 2.6
uses: actions/setup-ruby@v1
with:
ruby-version: 2.6.x
- name: Build and test with RSpec
env:
gems_password: '${{ secrets.GEMS_PASSWORD }}'
run: |
gem install bundler
bundle config gems.example.eu gems:$${GEMS_PASSWORD}
bundle install
bundle exec rspec
ENV只需要一个$
:
bundle config gems.example.eu gems:${GEMS_PASSWORD}
从之前的 CI 配置中复制的双 $
可能是一个字符串插值功能。
我正在尝试根据 运行 我们的规范设置 Github 操作,但是我们使用需要密码的私人 gem 服务器。我有added a secret and then set a ENV到秘密的价值。
但是我从捆绑程序中收到以下错误:
"Please CGI escape your usernames and passwords before setting them for authentication".
我可以看到 bundler source 中发生了这种情况。这似乎是 URI 的问题。
在本地或我们当前的 CI 服务器上执行相同的过程时,我没有收到此错误。
这是工作流程:
name: Ruby
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Set up Ruby 2.6
uses: actions/setup-ruby@v1
with:
ruby-version: 2.6.x
- name: Build and test with RSpec
env:
gems_password: '${{ secrets.GEMS_PASSWORD }}'
run: |
gem install bundler
bundle config gems.example.eu gems:$${GEMS_PASSWORD}
bundle install
bundle exec rspec
ENV只需要一个$
:
bundle config gems.example.eu gems:${GEMS_PASSWORD}
从之前的 CI 配置中复制的双 $
可能是一个字符串插值功能。