yaml - Gitlab-CI 中的 YAML 语法 sed
问题描述
我在下面的文件中犯了一个错误,但我看不出我的错误在哪里。我的.gitlab-ci.yml
配置文件中有这个命令。
- sed "s/use_scm_version=True/use_scm_version={'write_to': '..\/version.txt', 'root': '..'},\/"setup.py
即使我将整个 sed 括在双引号之间,似乎 ":" 也被解释为分号。
(<unknown>): did not find expected key while parsing a block mapping at line 109 column 11
有任何想法吗 ?
解决方案
由于您的双引号不在标量节点的开头,因此它们在 YAML 中没有特殊含义,并且冒号被视为正常值指示符(并且键和值都具有嵌入的双引号)。
我建议你引用整个标量:
- "sed s/use_scm_version=True/use_scm_version={'write_to': '..\/version.txt', 'root': '..'},\/setup.py"
\"
如果这不起作用,则可以根据需要在其中添加(反斜杠转义的双引号)。
推荐阅读
- ruby-on-rails - 带有多个文件的 Rails file_field_tag 向控制器提供随机字符串
- haskell - blaze-html,Haskell,正确的 toHtml 用法?
- mysql - t2.micro EC2 实例运行速度过慢一段时间后恢复正常
- overheating - 戴尔l502x过热多年
- python - 用于抓取 excel 数据的 Python 脚本?
- java - Tesseract 错误空间识别(JavaCPP-Presets)
- c# - C# WPF 绑定深度/子对象路径
- powershell - SharePoint PnP PowerShell - 从选项字段中获取选项
- python - 打开新标签时如何为浏览器计时
- python-2.7 - 在 matplotlib 中减去两个图