Github操作,从秘密中设置gem用户名:请在设置用户名和密码进行身份验证之前,请CGI对其进行转义

时间:2019-11-18 10:39:56

标签: ruby github

我正在尝试设置Github操作来运行我们的规范,但是我们使用了需要密码的私有gem服务器。我有added a secret,然后有set a ENV到密码的值。

但是我从捆绑器中收到以下错误:

  

“在设置用户名和密码进行身份验证之前,请CGI对其进行转义”。

我可以看到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

1 个答案:

答案 0 :(得分:0)

ENV只需要一个$

bundle config gems.example.eu gems:${GEMS_PASSWORD}

从先前CI的配置中复制的双$可能是字符串插值功能。