我正在编写python模块,以在gitlab中创建项目,但我不知道如何更改默认的项目设置,比如remove_source_branch_after_merge
。
我尝试过将参数传递给projects.create()
调用,但它似乎被忽略了。
project = gl.projects.create({'name': reponame, 'namespace_id': group_id, 'default_branch' : default_branch, 'remove_source_branch_after_merge' : False})
我通过手动发布到/api/v4/projects/$ID?remove_source_branch_after_merge=false
来更改设置,但是我不知道如何在python中做到这一点。
如何使用自定义设置创建项目,或如何在python-gitlab
中创建项目设置后修改项目设置
我用的是python-gitlab==1.7.0
发布于 2022-03-09 04:34:19
要回答您的问题,可以使用save()
修改对象创建后的属性。
import gitlab
gl = gitlab.Gitlab("https://gitlab.example.com", private_token=token)
project = gl.projects.create(
{
"name": reponame,
"namespace_id": group_id,
"default_branch": default_branch,
"remove_source_branch_after_merge": False,
}
)
# Enable remove after merge
project.remove_source_branch_after_merge = True
project.save()
# Or disable again
project.remove_source_branch_after_merge = False
project.save()
但是,我认为您的初始创建调用应该可以工作,所以可能会检查任何类型的输入。1.7.0已经很老了,我刚刚在3.2.0上检查了这一点。您还可以使用gl.enable_debug()
获得详细的输出,并检查是否向API发送了正确的参数。
https://stackoverflow.com/questions/71408832
复制相似问题