我被分配到一个使用git子模块的项目。我对README.md的降价进行了一些小改动,并收到以下错误:
Running on staging.example.com...
Fetching changes...
HEAD is now at 2414dbe test change
From https://gitlab.example.com/external/project-example
2432dbe..b64b2d0 develop -> origin/develop
Checking out b452d91 as develop...
$ docker rm -f $CONTAINER_NAME-db
Error response from daemon: No such container: project-example-db
ERROR: Build failed: exit status 1
当我检查名为.gitlab-ci.yml
的文件时,我看到了这段代码:
# ADD
install:clean:
stage: prepare
script:
- docker rm -f $CONTAINER_NAME-db
- docker rm -f $CONTAINER_NAME
- docker rmi $IMAGE_NAME
allow_failure: true
tags:
- staging
# BUILD
prepare:build:
stage: prepare
script:
- git submodule init
- git submodule update --recursive
- docker-compose build --no-cache --pull
tags:
- staging
我不确定我的错误是否是由于子模块缺少的,我的.gitmodules文件如下所示:
[submodule "frontend"]
path = frontend
url = git@gitlab.example.com:external/project-example-frontend.git
branch = v3.1
我在目录中有2个回购(项目示例& 项目 - 示例 - 前端)。我错过了什么?
答案 0 :(得分:1)
您正在尝试删除容器 project-example-db 和项目示例(使用docker rm
)而 project-example-db 不存在。在这种情况下,该命令返回非零退出状态,因此整个作业失败。根据您提供的信息,并不完全清楚容器是如何启动的。你可以:
docker-compose
启动的(在prepare:build
作业中),则可以使用docker-compose down
将其删除,而不是优先执行,如果容器不是,则不会失败运行