attachment_swift: multi-tenancy use db name in container

Adds the possibility to insert `{db}` placeholder in the container
name that will be replaced by the database name to form a unique
container name per database.
This commit is contained in:
Danny W. Adair
2021-08-23 20:26:29 +12:00
parent 13d7d156a3
commit 6740b19206
2 changed files with 17 additions and 1 deletions
+2
View File
@@ -146,6 +146,8 @@ class IrAttachment(models.Model):
def _store_file_write(self, key, bin_data):
if self._storage() == 'swift':
container = os.environ.get('SWIFT_WRITE_CONTAINER')
# replace {db} with the database name to handle multi-tenancy
container = container.format(db=self.env.cr.dbname)
conn = self._get_swift_connection()
conn.put_container(container)
filename = 'swift://{}/{}'.format(container, key)