Docker gitlab中的基本ci实现错误致命:无法';找不到远程引用

Docker gitlab中的基本ci实现错误致命:无法';找不到远程引用,docker,continuous-integration,gitlab-ci,gitlab-ci-runner,Docker,Continuous Integration,Gitlab Ci,Gitlab Ci Runner,我设置了一个新的gitlab docker,然后基于microsoft/dotnet:latest使用docer executer设置了一个runner docker 然后我向gitlab添加了一个简单的项目,只是一个dotnet核心hello world 然后,我创建一个ci文件,如下所示: image: microsoft/dotnet:latest stages: - build variables: project: "ConsoleApp" before_script

我设置了一个新的gitlab docker,然后基于microsoft/dotnet:latest使用docer executer设置了一个runner docker 然后我向gitlab添加了一个简单的项目,只是一个dotnet核心hello world 然后,我创建一个ci文件,如下所示:

image:  microsoft/dotnet:latest

stages:
  - build


variables:
  project: "ConsoleApp"

before_script:
  - "dotnet restore"

build:
  stage: build
  variables:
    build_path: "$ConsoleApp"
  script:
    - "cd $build_path"
    - "dotnet build"
然后在pipleline中,我得到以下输出:

Preparing environment
 Running on runner-vtysysr-project-2-concurrent-0 via e189cc9d1c60...
Getting source from Git repository
00:07
 Fetching changes with git depth set to 50...
 Reinitialized existing Git repository in /builds/root/gitlabcitest/.git/
 fatal: couldn't find remote ref refs/pipelines/18
Uploading artifacts for failed job
00:06
 ERROR: Job failed: exit code 1
我搜索了错误,但所有asnwer都是关于有分支的项目,但我没有任何分支,只是一个简单的hello world项目。

添加项:

我的问题出现在runner docker中的ssh
config
中:之后,问题得到解决


其他途径(针对其他用户),如果这与

我们正在使用git push--mirror定期从不同的存储库镜像一些项目。
事实证明,它还删除未知分支,即
管道/XXXX
合并/XXXX

我们现在正在明确地推送和删除每个分支,并忽略所有
管道/XXXX
合并/XXXX
管道。
之后,错误不再发生

我知道您没有很多分支机构,但这里的问题不在于您当地的分支机构。
它使用本地启动的推送操作,修剪本地不存在的远程分支

基本上,管道取决于管道特定的ref
refs/pipelines/*
,管道运行时必须存在管道。
因此,如果
git push--mirror
删除这些引用,您可能会遇到作业失败

同样的问题说明了类似的情况:

在我们的设置中,我们使用一个系统钩子将我们的GitLab存储库镜像到另一个更靠近GitLab Runner实例所在位置的位置。
这在很长一段时间内一直运作良好

然而,现在GitLab依赖于现有的
refs/pipelines/
ref,我们所有的运行程序都失败了

问题在于
refs/pipelines/
ref是在后台创建的,并且没有调用任何系统钩子(因此我们不知道需要镜像的新ref)。
内置的存储库镜像功能不太适合我们,因为它必须为每个存储库配置;通过系统挂钩,我们可以自动镜像所有存储库


我也有类似的问题。我在Gitlab自己的自述文件中为CI工作。我打开了一个悬赏。嗨,我的问题是在runner docker中的ssh配置中,在将ssh密钥添加到docker issue solvedGood catch之后。我已将您的评论包含在回答中,以提高可视性。@alikamrani您能否详细说明您的问题是什么以及如何解决问题注:这可以来自gitlab-ci.yml。例如,这个()可以工作,而它以前的版本(红色)触发了相同的错误:我不清楚“我在runner docker中的ssh配置中遇到了什么问题:在向docker添加ssh密钥之后,问题就解决了。”这意味着或者如何做it@karobar我怀疑配置文件引用了ssh密钥的特定路径/文件名,该密钥与该名称不在一起。如何为docker添加密钥可在此处找到:@FelixOuttaSpace谢谢。我已编辑答案以引用您的链接。