community.general.gitlab_merge_request 模块 – 创建、更新或删除 GitLab 合并请求
注意
此模块是 community.general 集合(版本 10.1.0)的一部分。
如果您正在使用 ansible
包,您可能已经安装了此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install community.general
。您需要其他要求才能使用此模块,请参阅 要求 了解详细信息。
要在 playbook 中使用它,请指定:community.general.gitlab_merge_request
。
community.general 7.1.0 中的新增功能
概要
如果合并请求不存在,则创建它。
当存在单个合并请求时,如果提供的参数不同,则会更新它。
当存在单个合并请求且
state=absent
时,将删除该合并请求。当检测到多个合并请求时,任务将失败。
现有合并请求基于
title
、source_branch
、target_branch
和state_filter
过滤器进行匹配。
要求
以下要求需要在执行此模块的主机上满足。
python-gitlab >= 2.3.0
requests (Python 库 https://pypi.ac.cn/project/requests/)
参数
参数 |
注释 |
---|---|
用于登录的 GitLab CI 作业令牌。 |
|
用于登录的 GitLab OAuth 令牌。 |
|
用于针对 API 进行身份验证的密码。 |
|
具有 API 权限的 GitLab 访问令牌。 |
|
API 的可解析端点。 |
|
用于针对 API 进行身份验证的用户名。 |
|
以逗号分隔的受让人用户名列表,省略 设置为空字符串以取消分配所有受让人。 |
|
用于验证 GitLab 服务器证书的 CA 证书捆绑包。 |
|
合并请求的描述。 如果找到,则会被在 |
|
包含合并请求描述的文件的路径。 接受 Markdown 格式的文件。 |
|
以逗号分隔的标签名称列表。 默认值: |
|
项目的路径或名称。 |
|
一个标志,指示合并请求在合并时是否应删除源分支。 选择
|
|
以逗号分隔的审阅者用户名列表,省略 设置为空字符串以取消分配所有审阅者。 |
|
合并请求的源分支。 更新现有合并请求时忽略。 |
|
创建或删除合并请求。 选择
|
|
筛选器,用于指定搜索时合并请求的状态。 选择
|
|
合并请求的目标分支。 |
|
合并请求的标题。 |
|
当提供 HTTPS 端点时,是否验证 SSL 证书。 选择
|
属性
属性 |
支持 |
描述 |
---|---|---|
支持: 完整 |
可以在 |
|
支持: 无 |
在差异模式下,将返回已更改(或可能需要在 |
示例
- name: Create Merge Request from branch1 to branch2
community.general.gitlab_merge_request:
api_url: https://gitlab.com
api_token: secret_access_token
project: "group1/project1"
source_branch: branch1
target_branch: branch2
title: "Ansible demo MR"
description: "Demo MR description"
labels: "Ansible,Demo"
state_filter: "opened"
remove_source_branch: True
state: present
- name: Delete Merge Request from branch1 to branch2
community.general.gitlab_merge_request:
api_url: https://gitlab.com
api_token: secret_access_token
project: "group1/project1"
source_branch: branch1
target_branch: branch2
title: "Ansible demo MR"
state_filter: "opened"
state: absent
返回值
常见的返回值已在此处记录 这里,以下是此模块独有的字段
键 |
描述 |
---|---|
API 对象。 已返回: 成功 |
|
成功或失败消息。 已返回: 总是 示例: |