我目前正在使用 Bitbucket 开发 CI/CD 管道。我遇到一个问题,我尝试使用 cd 命令更改为目录,但 Bitbucket 抛出错误,指示该目录不存在。
这是我的管道配置的片段:
pipelines:
branches:
master:
- step:
name: update gitops image tag
script:
- git clone https://x-token-auth:[email protected]/myuser/myrepo-gitops.git
- VERSION="prod-0.1.${BITBUCKET_BUILD_NUMBER}"
- sed -i "s/\([ ]*image:[ ]*mydockerregistry.com\/myapp-ui\:\)\(.*\)/\1"${VERSION}"/" myrepo-gitops/myapp_ui/docker-compose.yml
- cat myrepo-gitops/myapp_ui/docker-compose.yml
- ls -d */
- cd ./myrepo–gitops/myapp_ui
...
运行管道时,一切正常,直到 cd 命令:
+ ls -d */
android/
myrepo-gitops/
ios/
public/
src/
tests/
bash: cd: ./myrepo–gitops/myapp_ui: No such file or directory
cd ./myrepo–gitops/myapp_ui
看起来目录存在,但是cd命令有问题。对于可能导致此问题的原因有什么见解吗?
解决方案:
经过多次尝试,我把名字从
myrepo-gitops
改成了myrepo_gitops
。进行此更改后,管道执行时没有出现任何问题。经过进一步测试,我发现这两个名称变体都是可用的。
我怀疑 Bitbucket 可能存在错误,但我无法再重现它。
结论:我将关闭此问题。非常感谢所有提供帮助的人!