bash - 清理基于文件的变量。错误:作业失败:退出代码 1
问题描述
我正在使用gitlab-ci来自动构建和发布。在上一项工作中,我想使用lftp将工件上传到远程服务器。
$(pwd)/publish/
address 是在上一个作业中生成的工件。以及在gitlab Settings --> CI / CD中声明的所有变量。
这是工作yaml
代码:
upload-job:
stage: upload
image: mwienk/docker-lftp:latest
tags:
- dotnet
only:
- master
script:
- lftp -e "open $HOST; user $FTP_USERNAME $FTP_PASSWORD; mirror -X .* -X .*/ --reverse --verbose --delete $(pwd)/publish/ wwwroot/; bye"
请注意,lftp传输我的文件,但是,我不确定我的所有文件都已传输。
我添加了echo "All files Transfered."
,但它从不运行。
管道日志中没有错误和警告,但出现以下错误:
我不知道它是为了什么。有没有人遇到过这个错误并找到了任何解决方案?
解决方案
最后,我通过lft命令参数的一些更改解决了这个问题。
故障排除的要点ERROR: Job failed: exit code 1
是使用带有verbose
参数的命令返回足够的日志以使您能够解决问题。另一个重要的一点是要知道如何调试 shell 脚本,例如bash
、powershell
等。
此外,您可以直接在shell中运行和测试命令,这很有帮助。
以下链接有助于对命令行脚本进行故障排除:
对于lftp日志记录:
推荐阅读
- python - 编辑器中缺少 Pycharm 依赖项 - 在指定文件夹中安装了 requirements.txt
- sql - HANA SQL:如何在引用主表的条件下加入第一行
- c# - 具有文本属性的控件基类?
- python-2.7 - 如何使用 matplotlib 正确绘制数据?
- css - Visual Studio 代码对齐
- python - 对具有相反阶段的列表进行排序
- javascript - 对于每个链接,如果最近的具有“x”类的 div 包含文本“a”,则替换部分链接
- python - selenium 仅在使用 FireFox 启动时在测试类下正确运行第一个测试
- javascript - 如何计算嵌套对象的深度级别?
- r - position_dodge2 与 facet_wrap