Gitlab-ci.yml创建合并请求

eulz3vhy  于 2023-09-29  发布在  Git
关注(0)|答案(2)|浏览(130)

我在DEV分支中运行了以下gitlab-ci.yml文件,目标也是DEV。由于我不能将目标指向MASTER,因此没有自动创建MR。我想知道是否可以在gitlab-ci脚本中创建合并请求。

dev:
  stage: deploy
  script:
    - url_host=`git remote get-url origin | sed -e "s/https:\/\/gitlab-ci-token:.*@//g"`
    - git remote set-url origin "https://gitlab-ci-token:${CI_TAG_UPLOAD_TOKEN}@${url_host}"
    - databricks workspace export_dir -o /mynotebooks.
    - git add .
    - git commit -m 'Add notebooks to Repo' -a || true
    - git push origin HEAD:dev
  tags:
    - test

我已经搜索并引用了我的网站,但看不到任何关于以编程方式创建合并请求的说明。
这个想法是不同的开发人员正在开发一个databrick集群,gitlab计划定期运行。更改将被推送到DEV分支,并将使用合并请求推送到MASTER分支。
我想知道这个MR创建是否可以自动化。GITLAB的新功能,请
谢谢.

cngwdvgl

cngwdvgl1#

您可以在Gitlab中使用git push选项创建MR。
要使用git创建一个MR以将dev合并到master中,请运行以下命令

git push origin HEAD:dev -o merge_request.create -o merge_request.target=master

阅读更多关于Gitlab的push options for merge requests

3phpmpom

3phpmpom2#

实际上有一种更好的可编程方式来创建MR。
Gitlab有官方的Gitlab API,你可以访问它来创建/更新/删除几乎任何东西。当然,自己做这些HTTP请求将是乏味的。试着使用python library for gitlab来做你想做的事情。你可以让任何东西都可以编程!
具体处理MR,可以看this chapter

相关问题