diff --git a/plugins/modules/project.py b/plugins/modules/project.py index 53a0b2dde7377e66ae0ec43c89bd519887ebdc9c..46652c56d35228f0d64a4fd871e06143a0b53ff4 100644 --- a/plugins/modules/project.py +++ b/plugins/modules/project.py @@ -31,6 +31,11 @@ options: domains. aliases: ['domain_id'] type: str + parent_id: + description: + - Name or ID of the parent project + aliases: ['parent'] + type: str is_enabled: description: - Is the project enabled @@ -65,6 +70,7 @@ EXAMPLES = ''' name: demoproject description: demodescription domain: demoid + parent_id: demoproject_parent_id is_enabled: True properties: internal_alias: demo_project @@ -126,6 +132,7 @@ class IdentityProjectModule(OpenStackModule): name=dict(required=True), description=dict(), domain=dict(aliases=['domain_id']), + parent_id=dict(required=False, aliases=['parent']), is_enabled=dict(default=True, type='bool', aliases=['enabled']), properties=dict(type='dict', min_ver='0.45.1'), state=dict(default='present', choices=['absent', 'present']) @@ -171,6 +178,7 @@ class IdentityProjectModule(OpenStackModule): properties = self.params['properties'] enabled = self.params['is_enabled'] description = self.params['description'] + parent_id = self.params['parent_id'] find_project_kwargs = {} domain_id = None @@ -188,6 +196,7 @@ class IdentityProjectModule(OpenStackModule): 'description': description, 'is_enabled': enabled, 'domain_id': domain_id, + 'parent_id': parent_id } project_attrs = {k: v for k, v in project_attrs.items() if v is not None}