【发布时间】:2018-03-11 10:44:45
【问题描述】:
我正在尝试在我的 GitLab 持续集成设置中使用 LFTP,以便可以将 JSON 文件镜像到我的目的地。但是,我只想使用通配符镜像一组文件夹,但我似乎无法正常工作。
我在 LFTP 中尝试了这个镜像命令配置,但这会导致“没有这样的文件或目录”错误。我假设我以某种方式解析通配符错误。
我尝试了什么:lftp -c "set sftp:auto-confirm true; open sftp://$DEVELOPMENT_DEPLOY_USER:$DEVELOPMENT_DEPLOY_PASSWORD@$DEVELOPMENT_DEPLOY_HOST:$DEVELOPMENT_DEPLOY_PORT; mirror -Rev ./somefolder_* $DEVELOPMENT_DESTINATION_FOLDER --ignore-time --parallel=10 --exclude .* --exclude .*/ --include ./*.json"
结果:
/home/gitlab-runner/builds/82ffc821/0/somegroup/someproject/somefolder_*: No such file or directory
我可能遗漏了一些明显的东西。将不胜感激。
【问题讨论】:
-
尝试在
lftp之后的命令中添加-v以获得更详细的输出。 -
@StefanvanGastel 它没有在控制台中提供更多信息。错误仍然存在;没有这样的文件或目录。
-
好的,尝试减少命令以获取此错误的原因。因此,在添加通配符之前先上传所有文件进行测试。
-
该错误是由我尝试用于源文件夹的通配符引起的。我想做的是;我有两个文件夹:somefolder_one 和 somefolder_two。我试图通过在命令中将 somefolder_* 指定为通配符来镜像两者,但这似乎没有被正确解析,它试图加载不存在的确切文件夹 somefolder_*。它应该选择两个文件夹作为源并镜像这两个。
标签: continuous-integration gitlab-ci continuous-deployment gitlab-ci-runner lftp