Refactored object{,_container} modules breaking backward compatibility

Previously both modules object and object_container had huge overlaps in
functionality. Both allowed to create and delete containers. One would
not have to pass a object to the object module at all and could use it
to manage containers only. Now the object module has been changed to
manage an object in a container only while the object_container module
is responsible for managing Swift containers only.

With object module it is now also possible to pass data instead of a
filename via module options. The container_access functionality has been
dropped from object module. It has been moved and extended as read_ACL
and write_ACL options in object_container module.

With object_container module it is now also possible to manage the
container access with read_ACL and write_ACL options. Those mirror
earlier container_access option of the object module which has been
removed.

Change-Id: I96fb9b946444866b157655e148250f1eda35e942
This commit is contained in:
Jakob Meng
2022-11-23 13:49:42 +01:00
parent 1ca6f208f7
commit 7c536e69b3
7 changed files with 768 additions and 304 deletions

View File

@@ -11,9 +11,6 @@
- { role: compute_flavor_access, tags: compute_flavor_access }
- { role: config, tags: config }
- { role: dns_zone_info, tags: dns_zone_info }
- role: object_container
tags: object_container
when: sdk_version is version(0.18, '>=')
- role: dns
tags: dns
when: sdk_version is version(0.28, '>=')
@@ -45,6 +42,7 @@
tags: nova_services
when: sdk_version is version(0.44, '>=')
- { role: object, tags: object }
- { role: object_container, tags: object_container }
- { role: port, tags: port }
- { role: project, tags: project }
- { role: project_info, tags: project_info }