mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
[PR #5986/617be6e1 backport][stable-6] Add new project features to API (#6099)
Add new project features to API (#5986)
* Add new project features to API
* add changelog fragment
* remove extra line from changelog
* Update changelog formatting
Co-authored-by: Felix Fontein <felix@fontein.de>
---------
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 617be6e124
)
Co-authored-by: Hemant Zope <42613258+zhemant@users.noreply.github.com>
This commit is contained in:
parent
9bab144d06
commit
89dd500159
2 changed files with 74 additions and 0 deletions
|
@ -0,0 +1,2 @@
|
||||||
|
minor_changes:
|
||||||
|
- gitlab_project - add ``releases_access_level``, ``environments_access_level``, ``feature_flags_access_level``, ``infrastructure_access_level``, ``monitor_access_level``, and ``security_and_compliance_access_level`` options (https://github.com/ansible-collections/community.general/pull/5986).
|
|
@ -203,6 +203,54 @@ options:
|
||||||
type: str
|
type: str
|
||||||
choices: ["private", "disabled", "enabled"]
|
choices: ["private", "disabled", "enabled"]
|
||||||
version_added: "6.2.0"
|
version_added: "6.2.0"
|
||||||
|
releases_access_level:
|
||||||
|
description:
|
||||||
|
- C(private) means that accessing release is allowed only to project members.
|
||||||
|
- C(disabled) means that accessing release is disabled.
|
||||||
|
- C(enabled) means that accessing release is enabled.
|
||||||
|
type: str
|
||||||
|
choices: ["private", "disabled", "enabled"]
|
||||||
|
version_added: "6.4.0"
|
||||||
|
environments_access_level:
|
||||||
|
description:
|
||||||
|
- C(private) means that deployment to environment is allowed only to project members.
|
||||||
|
- C(disabled) means that deployment to environment is disabled.
|
||||||
|
- C(enabled) means that deployment to environment is enabled.
|
||||||
|
type: str
|
||||||
|
choices: ["private", "disabled", "enabled"]
|
||||||
|
version_added: "6.4.0"
|
||||||
|
feature_flags_access_level:
|
||||||
|
description:
|
||||||
|
- C(private) means that feature rollout is allowed only to project members.
|
||||||
|
- C(disabled) means that feature rollout is disabled.
|
||||||
|
- C(enabled) means that feature rollout is enabled.
|
||||||
|
type: str
|
||||||
|
choices: ["private", "disabled", "enabled"]
|
||||||
|
version_added: "6.4.0"
|
||||||
|
infrastructure_access_level:
|
||||||
|
description:
|
||||||
|
- C(private) means that configuring infrastructure is allowed only to project members.
|
||||||
|
- C(disabled) means that configuring infrastructure is disabled.
|
||||||
|
- C(enabled) means that configuring infrastructure is enabled.
|
||||||
|
type: str
|
||||||
|
choices: ["private", "disabled", "enabled"]
|
||||||
|
version_added: "6.4.0"
|
||||||
|
monitor_access_level:
|
||||||
|
description:
|
||||||
|
- C(private) means that monitoring health is allowed only to project members.
|
||||||
|
- C(disabled) means that monitoring health is disabled.
|
||||||
|
- C(enabled) means that monitoring health is enabled.
|
||||||
|
type: str
|
||||||
|
choices: ["private", "disabled", "enabled"]
|
||||||
|
version_added: "6.4.0"
|
||||||
|
security_and_compliance_access_level:
|
||||||
|
description:
|
||||||
|
- C(private) means that accessing security and complicance tab is allowed only to project members.
|
||||||
|
- C(disabled) means that accessing security and complicance tab is disabled.
|
||||||
|
- C(enabled) means that accessing security and complicance tab is enabled.
|
||||||
|
type: str
|
||||||
|
choices: ["private", "disabled", "enabled"]
|
||||||
|
version_added: "6.4.0"
|
||||||
'''
|
'''
|
||||||
|
|
||||||
EXAMPLES = r'''
|
EXAMPLES = r'''
|
||||||
|
@ -321,6 +369,12 @@ class GitLabProject(object):
|
||||||
'builds_access_level': options['builds_access_level'],
|
'builds_access_level': options['builds_access_level'],
|
||||||
'forking_access_level': options['forking_access_level'],
|
'forking_access_level': options['forking_access_level'],
|
||||||
'container_registry_access_level': options['container_registry_access_level'],
|
'container_registry_access_level': options['container_registry_access_level'],
|
||||||
|
'releases_access_level': options['releases_access_level'],
|
||||||
|
'environments_access_level': options['environments_access_level'],
|
||||||
|
'feature_flags_access_level': options['feature_flags_access_level'],
|
||||||
|
'infrastructure_access_level': options['infrastructure_access_level'],
|
||||||
|
'monitor_access_level': options['monitor_access_level'],
|
||||||
|
'security_and_compliance_access_level': options['security_and_compliance_access_level'],
|
||||||
}
|
}
|
||||||
# Because we have already call userExists in main()
|
# Because we have already call userExists in main()
|
||||||
if self.project_object is None:
|
if self.project_object is None:
|
||||||
|
@ -454,6 +508,12 @@ def main():
|
||||||
builds_access_level=dict(type='str', choices=['private', 'disabled', 'enabled']),
|
builds_access_level=dict(type='str', choices=['private', 'disabled', 'enabled']),
|
||||||
forking_access_level=dict(type='str', choices=['private', 'disabled', 'enabled']),
|
forking_access_level=dict(type='str', choices=['private', 'disabled', 'enabled']),
|
||||||
container_registry_access_level=dict(type='str', choices=['private', 'disabled', 'enabled']),
|
container_registry_access_level=dict(type='str', choices=['private', 'disabled', 'enabled']),
|
||||||
|
releases_access_level=dict(type='str', choices=['private', 'disabled', 'enabled']),
|
||||||
|
environments_access_level=dict(type='str', choices=['private', 'disabled', 'enabled']),
|
||||||
|
feature_flags_access_level=dict(type='str', choices=['private', 'disabled', 'enabled']),
|
||||||
|
infrastructure_access_level=dict(type='str', choices=['private', 'disabled', 'enabled']),
|
||||||
|
monitor_access_level=dict(type='str', choices=['private', 'disabled', 'enabled']),
|
||||||
|
security_and_compliance_access_level=dict(type='str', choices=['private', 'disabled', 'enabled']),
|
||||||
))
|
))
|
||||||
|
|
||||||
module = AnsibleModule(
|
module = AnsibleModule(
|
||||||
|
@ -504,6 +564,12 @@ def main():
|
||||||
builds_access_level = module.params['builds_access_level']
|
builds_access_level = module.params['builds_access_level']
|
||||||
forking_access_level = module.params['forking_access_level']
|
forking_access_level = module.params['forking_access_level']
|
||||||
container_registry_access_level = module.params['container_registry_access_level']
|
container_registry_access_level = module.params['container_registry_access_level']
|
||||||
|
releases_access_level = module.params['releases_access_level']
|
||||||
|
environments_access_level = module.params['environments_access_level']
|
||||||
|
feature_flags_access_level = module.params['feature_flags_access_level']
|
||||||
|
infrastructure_access_level = module.params['infrastructure_access_level']
|
||||||
|
monitor_access_level = module.params['monitor_access_level']
|
||||||
|
security_and_compliance_access_level = module.params['security_and_compliance_access_level']
|
||||||
|
|
||||||
if default_branch and not initialize_with_readme:
|
if default_branch and not initialize_with_readme:
|
||||||
module.fail_json(msg="Param default_branch need param initialize_with_readme set to true")
|
module.fail_json(msg="Param default_branch need param initialize_with_readme set to true")
|
||||||
|
@ -576,6 +642,12 @@ def main():
|
||||||
"builds_access_level": builds_access_level,
|
"builds_access_level": builds_access_level,
|
||||||
"forking_access_level": forking_access_level,
|
"forking_access_level": forking_access_level,
|
||||||
"container_registry_access_level": container_registry_access_level,
|
"container_registry_access_level": container_registry_access_level,
|
||||||
|
"releases_access_level": releases_access_level,
|
||||||
|
"environments_access_level": environments_access_level,
|
||||||
|
"feature_flags_access_level": feature_flags_access_level,
|
||||||
|
"infrastructure_access_level": infrastructure_access_level,
|
||||||
|
"monitor_access_level": monitor_access_level,
|
||||||
|
"security_and_compliance_access_level": security_and_compliance_access_level,
|
||||||
}):
|
}):
|
||||||
|
|
||||||
module.exit_json(changed=True, msg="Successfully created or updated the project %s" % project_name, project=gitlab_project.project_object._attrs)
|
module.exit_json(changed=True, msg="Successfully created or updated the project %s" % project_name, project=gitlab_project.project_object._attrs)
|
||||||
|
|
Loading…
Reference in a new issue