正在使用通配符cURL上载管道中的文件



我目前正在运行一个依赖谷歌云平台构建文件的管道。我们希望自动化最后一步,即文件上传。

- "gcloud compute ssh build-server-turnoff-when-unused --zone=europe-west4-a --command 'cd /mnt/disks/sdb/Project/ci_dev/tmp/deploy/images/project && curl -F 'image=@*.raucb' http://upload.url.com/upload'"

现在的问题是curl-F似乎不接受通配符,有可能做到这一点吗?

请注意,您的命令有两组",一组在另一组中,没有后退

无论如何,

gcloud compute ssh build-server-turnoff-when-unused --zone=europe-west4-a --command "bash -c 'cd /mnt/disks/sdb/Project/ci_dev/tmp/deploy/images/project && for fileimg in *.raucb; do curl -F image="${fileimg}" http://upload.url.com/upload ; done '"

注:

  • 我使用";bash-c";传递给-命令,使其仅远程生成单个进程(避免环境问题(
  • cd &&而不是cd ;,因此如果cd出现故障,则for不会运行
  • "内单'内双"以避免过度转义(交替引号技巧(
  • foreach循环中不需要文件扩展名,因为对于for fileimg in *.raucb,var$fileimg将包含完整的文件名
  • 必须将变量的$引用为$,否则它将被父shell解释

相关内容

  • 没有找到相关文章

最新更新