【问题标题】:gitlab ci pipeline failed deploy ftpgitlab ci 管道部署 ftp 失败
【发布时间】:2020-06-14 00:58:02
【问题描述】:

我尝试使用 gitlab-ci.yml 构建和推送我的 react 构建文件夹 构建和测试通过,但部署失败,出现以下错误: 如果我在我的语言环境文件中执行相同的脚本,它可以工作!

lftp -e "mirror -R build/ ./test ; 退出" -u $USERNAME,$PASSWORD $HOST 镜像:访问失败:/builds/myGitLab/myGitlabProjectName/build:没有这样的文件或目录 lftp: MirrorJob.cc:242: void MirrorJob::JobFinished(Job*): 断言“transfer_count>0”失败。 /bin/bash: line 97: 275 Aborted (core dumped) lftp -e "mirror -R build/ ./test ; quit" -u $USERNAME,$PASSWORD $HOST 错误:作业失败:退出代码 1

这是我所有的 yml 文件:

图片:节点:13.8 阶段: - 建造 - 测试 - 部署 建造: 阶段:构建 脚本: - npm 安装 - npm 运行构建 测试: 阶段:测试 脚本: - 纱线 - 纱线测试 部署: 脚本: - apt-get 更新 && apt-get 安装 -y lftp -lftp -e "mirror -R build/ ./test ; 退出" -u $USERNAME,$PASSWORD $HOST
enter code here

【问题讨论】:

    标签: gitlab


    【解决方案1】:

    我明白了!我从 docker 映像(节点)开始执行这 3 个阶段:构建、测试和部署但没有成功,但我尝试在部署阶段执行 ls-a 我意识到我没有构建文件夹.因为每次都会重新创建docker镜像,所以我添加了artifact来保留buid文件! 一旦构建阶段的工作“完成”。它会保存在一个变量 buid 中,以便下一个工作也可以部署!

    image: node:13.8
    
    stages:
      - build
      - test
      - deploy
    
    build:
      stage: build
      script:
        - npm install
        - npm run build
      only:
        - master
      artifacts:
        paths:
          - build
    
    test:
      stage: test
      script:
        - yarn
        - yarn test
    
    deploy:
      stage: deploy
      before_script:
        - apt-get update -qq
      script:
        - apt-get install -y -qq lftp
        - ls -a
        - lftp -e "set ssl:verify-certificate false; mirror --reverse --verbose --delete build/ ./test2 ; quit" -u $USERNAME,$PASSWORD $HOST
      only:
        - master
    
    

    【讨论】:

      【解决方案2】:

      我有一部分答案,但我想做更好的事情 其实,我明白发生了什么。在构建 docker 映像的每个阶段,然后在构建测试和部署之后,不再有构建文件夹。 我不知道如何坚持 docker image 女巫是每个阶段的节点。 欢迎任何帮助。 为了使它起作用,我以这种方式在一个阶段完成了每个脚本: image: node:13.0.1

      阶段: - 生产

      构建: 阶段:生产 脚本: - npm 安装 - npm 运行构建 - npm 运行测试 - apt-get update -qq && apt-get install -y -qq lftp -lftp -e "mirror -R build/ ./test ; 退出" -u $USERNAME,$PASSWORD $HOST 只要: - 掌握

      【讨论】:

      • 那么,这个问题现在解决了吗?如果不是,请编辑您的问题以包含所有信息并删除此答案
      • 您提出了问题,并发布了两个答案,您可以清理一下吗?这不应该是一个答案。
      猜你喜欢
      • 1970-01-01
      • 2020-12-12
      • 1970-01-01
      • 2021-07-23
      • 1970-01-01
      • 1970-01-01
      • 2017-10-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多