【发布时间】:2021-07-10 13:42:11
【问题描述】:
我有一个私人 gitlab 存储库,我想克隆它。我在环境变量中有密码。我的带有用户名和密码变量的 gitlab 存储库 URL 来自 XML 文件。
示例.xml
<git>
<name>repo</name>
<link>https://user:#{ENV['password']}@gitlab.com/myrepo.git</link>
</git>
Ruby 代码:
@sample = Nokogiri::XML(File.open("sample.xml")
repo_link = @sample.xpath("/git/link/text()")
Git.clone(repo_link, 'repodir').checkout('master')
当我尝试上面的代码时,#{ENV['password'] 没有得到解析并按原样传递给 GIT 模块。
当前: https://user:#{ENV['password']}@gitlab.com/myrepo.git
期望:
https://user:
请帮助解决这个问题..
我可以修改 XML 文件、Ruby 代码或 GITLAB URL 格式。但是流程是固定的,URL 将在 XML 中,我必须解析它并使用 Ruby 克隆 repo。
提前致谢!!
【问题讨论】:
标签: ruby xml xpath gitlab nokogiri