Gitlab取其他版本控制源码

Gitlab take other version control source

在我的团队中,我们有类似 GitBlit 的版本控制系统,我们对 GitLab CICD 插件很感兴趣。

如果确信,将来我们可以导入所有项目,但目前我想使用 GitlabCI 保持 GitBlit 像源代码控制。

可能吗?

我尝试了 "import project" 功能,但它在 Gitlab 中创建了一个新的存储库并切断了与 GitBlit 的关系。 提前致谢

您的 CI definition (.gitlab-ci.yml) 位于 Gitlab 存储库中,并在您提交/推送到该存储库时执行,因此为了真正测试和体验其全部潜力,在我认为,Gitlab 的强大 CI 能力你应该只迁移一个 repo。

另一方面,我知道这并不总是那么容易,所以我也为您提供了一个替代方案(不过,这是高级用法):

  • 创建一个仅包含 .gitlab-ci.yml 文件的 Gitlab 存储库来定义您要执行的构建步骤
  • git clone <your GitBlit repo url> . 命令添加到您的 .gitlab-ci.ymlbefore_script 以在 Gitlab CI 作业中获取您的 GitBlit 代码
  • 在 GitBlit 中使用 triggers to run the pipeline when something is pushed to GitBlit by adding a hook 向 Gitlab 发送 POST 请求

根据评论进行编辑:

POST-请求将如下所示:

curl --request POST \
     --form token=TOKEN \
     --form ref=master \
     https://myGitlab/api/v4/projects/1/trigger/pipeline