首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >此上下文中不允许使用Gitlab CI YML映射值

此上下文中不允许使用Gitlab CI YML映射值
EN

Stack Overflow用户
提问于 2018-04-18 10:34:52
回答 1查看 2.7K关注 0票数 3

我想使用Gitlab CI在master中提交时将我的静态网站部署到ftp服务器。我没有使用DevOps的经验,我尝试通过互联网上的教程来做到这一点。我创建了这个.gitlab-ci.yml文件

代码语言:javascript
运行
AI代码解释
复制
deploy:
    stage: deploy
    only:
        - master
        deploy:
  script:
    - apt-get update -qq && apt-get install -y -qq lftp
    - lftp -u ftp-login,ftp-pass ftp.server \
           -e "mirror -e -R -x .git -x excl.txt -x exclude-1 -x exclude-2 -x README.md -p ./ mysite/www/ ; quit"

但是gitlab向我展示了这个yml文件的错误。它说明在此上下文中不允许使用映射值。你能帮我处理这个文件吗?谢谢!

EN

回答 1

Stack Overflow用户

发布于 2021-01-11 13:10:39

有相同的错误信息

代码语言:javascript
运行
AI代码解释
复制
(<unknown>): mapping values are not allowed in this context gitlabci

在我的例子中,问题是:

查看文档:https://docs.gitlab.com/ee/ci/yaml/README.html#script

有时,脚本命令必须用单引号或双引号括起来。例如,包含冒号(:)的命令必须用单引号(')括起来。YAML解析器需要将文本解释为字符串,而不是“key:value”对。

例如,此脚本使用冒号:

代码语言:javascript
运行
AI代码解释
复制
job:
  script:
    - curl --request POST --header 'Content-Type: application/json' "https://gitlab/api/v4/projects"

要被认为是有效的YAML,必须用单引号将整个命令括起来。如果命令已经使用了单引号,则应尽可能将其更改为双引号("):

代码语言:javascript
运行
AI代码解释
复制
job:
  script:
    - 'curl --request POST --header "Content-Type: application/json" "https://gitlab/api/v4/projects"'
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49897538

复制
相关文章

相似问题

领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文