From 5d441dad13bfe15e5898153ff750ce1e27a2debe Mon Sep 17 00:00:00 2001
From: Simone Orsi
Date: Fri, 24 Sep 2021 11:08:01 +0200
Subject: [PATCH 01/15] Add auth_api_key_group
---
auth_api_key_group/README.rst | 89 ++++
auth_api_key_group/__init__.py | 1 +
auth_api_key_group/__manifest__.py | 25 +
.../i18n/auth_api_key_group.pot | 88 ++++
auth_api_key_group/models/__init__.py | 2 +
auth_api_key_group/models/auth_api_key.py | 19 +
.../models/auth_api_key_group.py | 23 +
auth_api_key_group/readme/CONTRIBUTORS.rst | 1 +
auth_api_key_group/readme/DESCRIPTION.rst | 4 +
.../security/ir.model.access.csv | 2 +
.../static/description/icon.png | Bin 0 -> 9455 bytes
.../static/description/index.html | 429 ++++++++++++++++++
auth_api_key_group/tests/__init__.py | 1 +
.../tests/test_auth_api_key_group.py | 46 ++
.../views/auth_api_key_group_view.xml | 44 ++
.../views/auth_api_key_view.xml | 12 +
16 files changed, 786 insertions(+)
create mode 100644 auth_api_key_group/README.rst
create mode 100644 auth_api_key_group/__init__.py
create mode 100644 auth_api_key_group/__manifest__.py
create mode 100644 auth_api_key_group/i18n/auth_api_key_group.pot
create mode 100644 auth_api_key_group/models/__init__.py
create mode 100644 auth_api_key_group/models/auth_api_key.py
create mode 100644 auth_api_key_group/models/auth_api_key_group.py
create mode 100644 auth_api_key_group/readme/CONTRIBUTORS.rst
create mode 100644 auth_api_key_group/readme/DESCRIPTION.rst
create mode 100644 auth_api_key_group/security/ir.model.access.csv
create mode 100644 auth_api_key_group/static/description/icon.png
create mode 100644 auth_api_key_group/static/description/index.html
create mode 100644 auth_api_key_group/tests/__init__.py
create mode 100644 auth_api_key_group/tests/test_auth_api_key_group.py
create mode 100644 auth_api_key_group/views/auth_api_key_group_view.xml
create mode 100644 auth_api_key_group/views/auth_api_key_view.xml
diff --git a/auth_api_key_group/README.rst b/auth_api_key_group/README.rst
new file mode 100644
index 0000000000..a2d8c22c6a
--- /dev/null
+++ b/auth_api_key_group/README.rst
@@ -0,0 +1,89 @@
+==================
+Auth API key group
+==================
+
+.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+ !! This file is generated by oca-gen-addon-readme !!
+ !! changes will be overwritten. !!
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+.. |badge1| image:: https://img.shields.io/badge/maturity-Alpha-red.png
+ :target: https://odoo-community.org/page/development-status
+ :alt: Alpha
+.. |badge2| image:: https://img.shields.io/badge/licence-LGPL--3-blue.png
+ :target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html
+ :alt: License: LGPL-3
+.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fserver--auth-lightgray.png?logo=github
+ :target: https://github.com/OCA/server-auth/tree/14.0/auth_api_key_group
+ :alt: OCA/server-auth
+.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
+ :target: https://translation.odoo-community.org/projects/server-auth-14-0/server-auth-14-0-auth_api_key_group
+ :alt: Translate me on Weblate
+.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
+ :target: https://runbot.odoo-community.org/runbot/251/14.0
+ :alt: Try me on Runbot
+
+|badge1| |badge2| |badge3| |badge4| |badge5|
+
+Allow grouping API keys together.
+
+Grouping per se does nothing. This feature is supposed to be used by other modules
+to limit access to services or records based on groups of keys.
+
+.. IMPORTANT::
+ This is an alpha version, the data model and design can change at any time without warning.
+ Only for development or testing purpose, do not use in production.
+ `More details on development status `_
+
+**Table of contents**
+
+.. contents::
+ :local:
+
+Bug Tracker
+===========
+
+Bugs are tracked on `GitHub Issues `_.
+In case of trouble, please check there if your issue has already been reported.
+If you spotted it first, help us smashing it by providing a detailed and welcomed
+`feedback `_.
+
+Do not contact contributors directly about support or help with technical issues.
+
+Credits
+=======
+
+Authors
+~~~~~~~
+
+* Camptcamp
+
+Contributors
+~~~~~~~~~~~~
+
+* Simone Orsi
+
+Maintainers
+~~~~~~~~~~~
+
+This module is maintained by the OCA.
+
+.. image:: https://odoo-community.org/logo.png
+ :alt: Odoo Community Association
+ :target: https://odoo-community.org
+
+OCA, or the Odoo Community Association, is a nonprofit organization whose
+mission is to support the collaborative development of Odoo features and
+promote its widespread use.
+
+.. |maintainer-simahawk| image:: https://github.com/simahawk.png?size=40px
+ :target: https://github.com/simahawk
+ :alt: simahawk
+
+Current `maintainer `__:
+
+|maintainer-simahawk|
+
+This module is part of the `OCA/server-auth `_ project on GitHub.
+
+You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/auth_api_key_group/__init__.py b/auth_api_key_group/__init__.py
new file mode 100644
index 0000000000..0650744f6b
--- /dev/null
+++ b/auth_api_key_group/__init__.py
@@ -0,0 +1 @@
+from . import models
diff --git a/auth_api_key_group/__manifest__.py b/auth_api_key_group/__manifest__.py
new file mode 100644
index 0000000000..7def149530
--- /dev/null
+++ b/auth_api_key_group/__manifest__.py
@@ -0,0 +1,25 @@
+# Copyright 2021 Camptcamp SA
+# @author: Simone Orsi
+# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl).
+
+{
+ "name": "Auth API key group",
+ "summary": """
+Allow grouping API keys together.
+
+Grouping per se does nothing. This feature is supposed to be used by other modules
+to limit access to services or records based on groups of keys.
+ """,
+ "version": "14.0.1.0.1",
+ "development_status": "Alpha",
+ "license": "LGPL-3",
+ "website": "https://github.com/OCA/server-auth",
+ "author": "Camptcamp,Odoo Community Association (OCA)",
+ "maintainers": ["simahawk"],
+ "depends": ["auth_api_key"],
+ "data": [
+ "security/ir.model.access.csv",
+ "views/auth_api_key_view.xml",
+ "views/auth_api_key_group_view.xml",
+ ],
+}
diff --git a/auth_api_key_group/i18n/auth_api_key_group.pot b/auth_api_key_group/i18n/auth_api_key_group.pot
new file mode 100644
index 0000000000..60028aefa3
--- /dev/null
+++ b/auth_api_key_group/i18n/auth_api_key_group.pot
@@ -0,0 +1,88 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * auth_api_key_group
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 14.0\n"
+"Report-Msgid-Bugs-To: \n"
+"Last-Translator: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: \n"
+
+#. module: auth_api_key_group
+#: model:ir.model,name:auth_api_key_group.model_auth_api_key
+msgid "API Key"
+msgstr ""
+
+#. module: auth_api_key_group
+#: model:ir.model,name:auth_api_key_group.model_auth_api_key_group
+msgid "API Key auth group"
+msgstr ""
+
+#. module: auth_api_key_group
+#: model:ir.model.fields,field_description:auth_api_key_group.field_auth_api_key_group__auth_api_key_ids
+msgid "API Keys"
+msgstr ""
+
+#. module: auth_api_key_group
+#: model:ir.actions.act_window,name:auth_api_key_group.auth_api_key_group_act_window
+#: model:ir.ui.menu,name:auth_api_key_group.auth_api_key_group_menu
+msgid "Auth Api Key Groups"
+msgstr ""
+
+#. module: auth_api_key_group
+#: model:ir.model.fields,field_description:auth_api_key_group.field_auth_api_key__auth_api_key_group_ids
+msgid "Auth Groups"
+msgstr ""
+
+#. module: auth_api_key_group
+#: model:ir.model.fields,field_description:auth_api_key_group.field_auth_api_key_group__code
+msgid "Code"
+msgstr ""
+
+#. module: auth_api_key_group
+#: model:ir.model.fields,field_description:auth_api_key_group.field_auth_api_key_group__create_uid
+msgid "Created by"
+msgstr ""
+
+#. module: auth_api_key_group
+#: model:ir.model.fields,field_description:auth_api_key_group.field_auth_api_key_group__create_date
+msgid "Created on"
+msgstr ""
+
+#. module: auth_api_key_group
+#: model:ir.model.fields,field_description:auth_api_key_group.field_auth_api_key__display_name
+#: model:ir.model.fields,field_description:auth_api_key_group.field_auth_api_key_group__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: auth_api_key_group
+#: model:ir.model.fields,field_description:auth_api_key_group.field_auth_api_key__id
+#: model:ir.model.fields,field_description:auth_api_key_group.field_auth_api_key_group__id
+msgid "ID"
+msgstr ""
+
+#. module: auth_api_key_group
+#: model:ir.model.fields,field_description:auth_api_key_group.field_auth_api_key____last_update
+#: model:ir.model.fields,field_description:auth_api_key_group.field_auth_api_key_group____last_update
+msgid "Last Modified on"
+msgstr ""
+
+#. module: auth_api_key_group
+#: model:ir.model.fields,field_description:auth_api_key_group.field_auth_api_key_group__write_uid
+msgid "Last Updated by"
+msgstr ""
+
+#. module: auth_api_key_group
+#: model:ir.model.fields,field_description:auth_api_key_group.field_auth_api_key_group__write_date
+msgid "Last Updated on"
+msgstr ""
+
+#. module: auth_api_key_group
+#: model:ir.model.fields,field_description:auth_api_key_group.field_auth_api_key_group__name
+msgid "Name"
+msgstr ""
diff --git a/auth_api_key_group/models/__init__.py b/auth_api_key_group/models/__init__.py
new file mode 100644
index 0000000000..4f2457794f
--- /dev/null
+++ b/auth_api_key_group/models/__init__.py
@@ -0,0 +1,2 @@
+from . import auth_api_key
+from . import auth_api_key_group
diff --git a/auth_api_key_group/models/auth_api_key.py b/auth_api_key_group/models/auth_api_key.py
new file mode 100644
index 0000000000..661e3c1a41
--- /dev/null
+++ b/auth_api_key_group/models/auth_api_key.py
@@ -0,0 +1,19 @@
+# Copyright 2021 Camptcamp SA
+# @author: Simone Orsi
+# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl).
+
+
+from odoo import fields, models
+
+
+class AuthApiKey(models.Model):
+
+ _inherit = "auth.api.key"
+
+ auth_api_key_group_ids = fields.Many2many(
+ comodel_name="auth.api.key.group",
+ relation="auth_api_key_group_rel",
+ column1="key_id",
+ column2="group_id",
+ string="Auth Groups",
+ )
diff --git a/auth_api_key_group/models/auth_api_key_group.py b/auth_api_key_group/models/auth_api_key_group.py
new file mode 100644
index 0000000000..28f34f5e85
--- /dev/null
+++ b/auth_api_key_group/models/auth_api_key_group.py
@@ -0,0 +1,23 @@
+# Copyright 2021 Camptcamp SA
+# @author: Simone Orsi
+# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl).
+
+
+from odoo import fields, models
+
+
+class AuthApiKeyGroup(models.Model):
+ """Group API keys together."""
+
+ _name = "auth.api.key.group"
+ _description = "API Key auth group"
+
+ name = fields.Char(required=True)
+ code = fields.Char(required=True)
+ auth_api_key_ids = fields.Many2many(
+ comodel_name="auth.api.key",
+ relation="auth_api_key_group_rel",
+ column1="group_id",
+ column2="key_id",
+ string="API Keys",
+ )
diff --git a/auth_api_key_group/readme/CONTRIBUTORS.rst b/auth_api_key_group/readme/CONTRIBUTORS.rst
new file mode 100644
index 0000000000..f1c71bce18
--- /dev/null
+++ b/auth_api_key_group/readme/CONTRIBUTORS.rst
@@ -0,0 +1 @@
+* Simone Orsi
diff --git a/auth_api_key_group/readme/DESCRIPTION.rst b/auth_api_key_group/readme/DESCRIPTION.rst
new file mode 100644
index 0000000000..1becef6070
--- /dev/null
+++ b/auth_api_key_group/readme/DESCRIPTION.rst
@@ -0,0 +1,4 @@
+Allow grouping API keys together.
+
+Grouping per se does nothing. This feature is supposed to be used by other modules
+to limit access to services or records based on groups of keys.
diff --git a/auth_api_key_group/security/ir.model.access.csv b/auth_api_key_group/security/ir.model.access.csv
new file mode 100644
index 0000000000..d245cf24cf
--- /dev/null
+++ b/auth_api_key_group/security/ir.model.access.csv
@@ -0,0 +1,2 @@
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_auth_api_key_group,access_auth_api_key_group,model_auth_api_key_group,base.group_system,1,1,1,1
diff --git a/auth_api_key_group/static/description/icon.png b/auth_api_key_group/static/description/icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..3a0328b516c4980e8e44cdb63fd945757ddd132d
GIT binary patch
literal 9455
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
z
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
Xviia!U7SGha1wx#SCgwmn*{w2TRX*I
literal 0
HcmV?d00001
diff --git a/auth_api_key_group/static/description/index.html b/auth_api_key_group/static/description/index.html
new file mode 100644
index 0000000000..17fb24a6ee
--- /dev/null
+++ b/auth_api_key_group/static/description/index.html
@@ -0,0 +1,429 @@
+
+
+
+
+
+
+Auth API key group
+
+
+
+
+
Auth API key group
+
+
+
+
Allow grouping API keys together.
+
Grouping per se does nothing. This feature is supposed to be used by other modules
+to limit access to services or records based on groups of keys.
+
+
Important
+
This is an alpha version, the data model and design can change at any time without warning.
+Only for development or testing purpose, do not use in production.
+More details on development status
+
+
Table of contents
+
+
+
+
Bugs are tracked on GitHub Issues.
+In case of trouble, please check there if your issue has already been reported.
+If you spotted it first, help us smashing it by providing a detailed and welcomed
+feedback.
+
Do not contact contributors directly about support or help with technical issues.
+
+
+
+
+
+
+
+
This module is maintained by the OCA.
+
+
OCA, or the Odoo Community Association, is a nonprofit organization whose
+mission is to support the collaborative development of Odoo features and
+promote its widespread use.
+
Current maintainer:
+
+
This module is part of the OCA/server-auth project on GitHub.
+
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
+
+
+
+
+
diff --git a/auth_api_key_group/tests/__init__.py b/auth_api_key_group/tests/__init__.py
new file mode 100644
index 0000000000..f831d70c99
--- /dev/null
+++ b/auth_api_key_group/tests/__init__.py
@@ -0,0 +1 @@
+from . import test_auth_api_key_group
diff --git a/auth_api_key_group/tests/test_auth_api_key_group.py b/auth_api_key_group/tests/test_auth_api_key_group.py
new file mode 100644
index 0000000000..bd39230f65
--- /dev/null
+++ b/auth_api_key_group/tests/test_auth_api_key_group.py
@@ -0,0 +1,46 @@
+# Copyright 2021 Camptcamp SA
+# @author: Simone Orsi
+# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl).
+
+
+from odoo.tests.common import SavepointCase
+
+
+class TestAuthApiKey(SavepointCase):
+ @classmethod
+ def setUpClass(cls, *args, **kwargs):
+ super().setUpClass(*args, **kwargs)
+ cls.AuthApiKey = cls.env["auth.api.key"]
+ cls.AuthApiKeyGroup = cls.env["auth.api.key.group"]
+ cls.demo_user = cls.env.ref("base.user_demo")
+ cls.api_key1 = cls.AuthApiKey.create(
+ {"name": "One", "user_id": cls.demo_user.id, "key": "one"}
+ )
+ cls.api_key2 = cls.AuthApiKey.create(
+ {"name": "Two", "user_id": cls.demo_user.id, "key": "two"}
+ )
+ cls.api_key3 = cls.AuthApiKey.create(
+ {"name": "Three", "user_id": cls.demo_user.id, "key": "three"}
+ )
+ cls.api_key_group1 = cls.AuthApiKeyGroup.create(
+ {
+ "name": "G One",
+ "code": "g-one",
+ "auth_api_key_ids": [(6, 0, (cls.api_key1 + cls.api_key2).ids)],
+ }
+ )
+ cls.api_key_group2 = cls.AuthApiKeyGroup.create(
+ {
+ "name": "G Two",
+ "code": "g-two",
+ "auth_api_key_ids": [(6, 0, cls.api_key3.ids)],
+ }
+ )
+
+ def test_relations(self):
+ self.assertIn(self.api_key_group1, self.api_key1.auth_api_key_group_ids)
+ self.assertIn(self.api_key_group1, self.api_key2.auth_api_key_group_ids)
+ self.assertNotIn(self.api_key_group1, self.api_key3.auth_api_key_group_ids)
+ self.assertIn(self.api_key_group2, self.api_key3.auth_api_key_group_ids)
+ self.assertNotIn(self.api_key_group2, self.api_key1.auth_api_key_group_ids)
+ self.assertNotIn(self.api_key_group2, self.api_key1.auth_api_key_group_ids)
diff --git a/auth_api_key_group/views/auth_api_key_group_view.xml b/auth_api_key_group/views/auth_api_key_group_view.xml
new file mode 100644
index 0000000000..267284d851
--- /dev/null
+++ b/auth_api_key_group/views/auth_api_key_group_view.xml
@@ -0,0 +1,44 @@
+
+
+
+ auth.api.key.group.form (in auth_api_key_group)
+ auth.api.key.group
+
+
+
+
+
+ auth.api.key.group.tree (in auth_api_key_group)
+ auth.api.key.group
+
+
+
+
+
+
+
+
+ Auth Api Key Groups
+ auth.api.key.group
+ tree,form
+ []
+ {}
+
+
+
diff --git a/auth_api_key_group/views/auth_api_key_view.xml b/auth_api_key_group/views/auth_api_key_view.xml
new file mode 100644
index 0000000000..a7c7192f29
--- /dev/null
+++ b/auth_api_key_group/views/auth_api_key_view.xml
@@ -0,0 +1,12 @@
+
+
+
+ auth.api.key
+
+
+
+
+
+
+
+
From 2437e0f9bda3bfb24e15c9a782e987d5d793f96c Mon Sep 17 00:00:00 2001
From: Maksym Yankin
Date: Tue, 30 Nov 2021 18:48:48 +0200
Subject: [PATCH 02/15] [MIG] auth_api_key_group: Migration to 15.0
---
auth_api_key_group/README.rst | 10 +++++-----
auth_api_key_group/__manifest__.py | 2 +-
auth_api_key_group/i18n/auth_api_key_group.pot | 5 +----
auth_api_key_group/static/description/index.html | 6 +++---
auth_api_key_group/tests/test_auth_api_key_group.py | 4 ++--
5 files changed, 12 insertions(+), 15 deletions(-)
diff --git a/auth_api_key_group/README.rst b/auth_api_key_group/README.rst
index a2d8c22c6a..2d0181b8ab 100644
--- a/auth_api_key_group/README.rst
+++ b/auth_api_key_group/README.rst
@@ -14,13 +14,13 @@ Auth API key group
:target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html
:alt: License: LGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fserver--auth-lightgray.png?logo=github
- :target: https://github.com/OCA/server-auth/tree/14.0/auth_api_key_group
+ :target: https://github.com/OCA/server-auth/tree/15.0/auth_api_key_group
:alt: OCA/server-auth
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
- :target: https://translation.odoo-community.org/projects/server-auth-14-0/server-auth-14-0-auth_api_key_group
+ :target: https://translation.odoo-community.org/projects/server-auth-15-0/server-auth-15-0-auth_api_key_group
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
- :target: https://runbot.odoo-community.org/runbot/251/14.0
+ :target: https://runbot.odoo-community.org/runbot/251/15.0
:alt: Try me on Runbot
|badge1| |badge2| |badge3| |badge4| |badge5|
@@ -46,7 +46,7 @@ Bug Tracker
Bugs are tracked on `GitHub Issues `_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
-`feedback `_.
+`feedback `_.
Do not contact contributors directly about support or help with technical issues.
@@ -84,6 +84,6 @@ Current `maintainer `__:
|maintainer-simahawk|
-This module is part of the `OCA/server-auth `_ project on GitHub.
+This module is part of the `OCA/server-auth `_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/auth_api_key_group/__manifest__.py b/auth_api_key_group/__manifest__.py
index 7def149530..97df614ef3 100644
--- a/auth_api_key_group/__manifest__.py
+++ b/auth_api_key_group/__manifest__.py
@@ -10,7 +10,7 @@
Grouping per se does nothing. This feature is supposed to be used by other modules
to limit access to services or records based on groups of keys.
""",
- "version": "14.0.1.0.1",
+ "version": "15.0.1.0.0",
"development_status": "Alpha",
"license": "LGPL-3",
"website": "https://github.com/OCA/server-auth",
diff --git a/auth_api_key_group/i18n/auth_api_key_group.pot b/auth_api_key_group/i18n/auth_api_key_group.pot
index 60028aefa3..05a8812a79 100644
--- a/auth_api_key_group/i18n/auth_api_key_group.pot
+++ b/auth_api_key_group/i18n/auth_api_key_group.pot
@@ -4,7 +4,7 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: Odoo Server 14.0\n"
+"Project-Id-Version: Odoo Server 15.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -55,19 +55,16 @@ msgid "Created on"
msgstr ""
#. module: auth_api_key_group
-#: model:ir.model.fields,field_description:auth_api_key_group.field_auth_api_key__display_name
#: model:ir.model.fields,field_description:auth_api_key_group.field_auth_api_key_group__display_name
msgid "Display Name"
msgstr ""
#. module: auth_api_key_group
-#: model:ir.model.fields,field_description:auth_api_key_group.field_auth_api_key__id
#: model:ir.model.fields,field_description:auth_api_key_group.field_auth_api_key_group__id
msgid "ID"
msgstr ""
#. module: auth_api_key_group
-#: model:ir.model.fields,field_description:auth_api_key_group.field_auth_api_key____last_update
#: model:ir.model.fields,field_description:auth_api_key_group.field_auth_api_key_group____last_update
msgid "Last Modified on"
msgstr ""
diff --git a/auth_api_key_group/static/description/index.html b/auth_api_key_group/static/description/index.html
index 17fb24a6ee..937b94ec67 100644
--- a/auth_api_key_group/static/description/index.html
+++ b/auth_api_key_group/static/description/index.html
@@ -367,7 +367,7 @@ Auth API key group
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-
+
Allow grouping API keys together.
Grouping per se does nothing. This feature is supposed to be used by other modules
to limit access to services or records based on groups of keys.
@@ -394,7 +394,7 @@
Bugs are tracked on GitHub Issues.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
-feedback.
+feedback.
Do not contact contributors directly about support or help with technical issues.
diff --git a/auth_api_key_group/tests/test_auth_api_key_group.py b/auth_api_key_group/tests/test_auth_api_key_group.py
index bd39230f65..75581bbf16 100644
--- a/auth_api_key_group/tests/test_auth_api_key_group.py
+++ b/auth_api_key_group/tests/test_auth_api_key_group.py
@@ -3,10 +3,10 @@
# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl).
-from odoo.tests.common import SavepointCase
+from odoo.tests.common import TransactionCase
-class TestAuthApiKey(SavepointCase):
+class TestAuthApiKey(TransactionCase):
@classmethod
def setUpClass(cls, *args, **kwargs):
super().setUpClass(*args, **kwargs)
From df6acf89ecb7155bade4a3cd23b1668711679014 Mon Sep 17 00:00:00 2001
From: sbejaoui
Date: Tue, 1 Aug 2023 21:38:34 +0200
Subject: [PATCH 03/15] [16.0][MIG] - auth_api_key_group
---
auth_api_key_group/__manifest__.py | 3 +--
auth_api_key_group/i18n/auth_api_key_group.pot | 2 +-
2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/auth_api_key_group/__manifest__.py b/auth_api_key_group/__manifest__.py
index 97df614ef3..8ac634aad9 100644
--- a/auth_api_key_group/__manifest__.py
+++ b/auth_api_key_group/__manifest__.py
@@ -10,8 +10,7 @@
Grouping per se does nothing. This feature is supposed to be used by other modules
to limit access to services or records based on groups of keys.
""",
- "version": "15.0.1.0.0",
- "development_status": "Alpha",
+ "version": "16.0.1.0.0",
"license": "LGPL-3",
"website": "https://github.com/OCA/server-auth",
"author": "Camptcamp,Odoo Community Association (OCA)",
diff --git a/auth_api_key_group/i18n/auth_api_key_group.pot b/auth_api_key_group/i18n/auth_api_key_group.pot
index 05a8812a79..2aff7a6ef4 100644
--- a/auth_api_key_group/i18n/auth_api_key_group.pot
+++ b/auth_api_key_group/i18n/auth_api_key_group.pot
@@ -4,7 +4,7 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: Odoo Server 15.0\n"
+"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: \n"
"Language-Team: \n"
From 376e092fab2a31aca52c4d4866b9ab210d7f8b59 Mon Sep 17 00:00:00 2001
From: OCA-git-bot
Date: Fri, 22 Mar 2024 19:56:33 +0000
Subject: [PATCH 04/15] [BOT] post-merge updates
---
auth_api_key_group/README.rst | 32 +++++++------
.../static/description/index.html | 45 +++++++++----------
2 files changed, 35 insertions(+), 42 deletions(-)
diff --git a/auth_api_key_group/README.rst b/auth_api_key_group/README.rst
index 2d0181b8ab..ed4520bd51 100644
--- a/auth_api_key_group/README.rst
+++ b/auth_api_key_group/README.rst
@@ -2,39 +2,37 @@
Auth API key group
==================
-.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+..
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+ !! source digest: sha256:e231a34a3fe2c3a2a8c78305131ba9e90af3725f3cf0b0878d313439f511f6fe
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-.. |badge1| image:: https://img.shields.io/badge/maturity-Alpha-red.png
+.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
- :alt: Alpha
+ :alt: Beta
.. |badge2| image:: https://img.shields.io/badge/licence-LGPL--3-blue.png
:target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html
:alt: License: LGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fserver--auth-lightgray.png?logo=github
- :target: https://github.com/OCA/server-auth/tree/15.0/auth_api_key_group
+ :target: https://github.com/OCA/server-auth/tree/16.0/auth_api_key_group
:alt: OCA/server-auth
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
- :target: https://translation.odoo-community.org/projects/server-auth-15-0/server-auth-15-0-auth_api_key_group
+ :target: https://translation.odoo-community.org/projects/server-auth-16-0/server-auth-16-0-auth_api_key_group
:alt: Translate me on Weblate
-.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
- :target: https://runbot.odoo-community.org/runbot/251/15.0
- :alt: Try me on Runbot
+.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
+ :target: https://runboat.odoo-community.org/builds?repo=OCA/server-auth&target_branch=16.0
+ :alt: Try me on Runboat
-|badge1| |badge2| |badge3| |badge4| |badge5|
+|badge1| |badge2| |badge3| |badge4| |badge5|
Allow grouping API keys together.
Grouping per se does nothing. This feature is supposed to be used by other modules
to limit access to services or records based on groups of keys.
-.. IMPORTANT::
- This is an alpha version, the data model and design can change at any time without warning.
- Only for development or testing purpose, do not use in production.
- `More details on development status `_
-
**Table of contents**
.. contents::
@@ -45,8 +43,8 @@ Bug Tracker
Bugs are tracked on `GitHub Issues `_.
In case of trouble, please check there if your issue has already been reported.
-If you spotted it first, help us smashing it by providing a detailed and welcomed
-`feedback `_.
+If you spotted it first, help us to smash it by providing a detailed and welcomed
+`feedback `_.
Do not contact contributors directly about support or help with technical issues.
@@ -84,6 +82,6 @@ Current `maintainer `__:
|maintainer-simahawk|
-This module is part of the `OCA/server-auth `_ project on GitHub.
+This module is part of the `OCA/server-auth `_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/auth_api_key_group/static/description/index.html b/auth_api_key_group/static/description/index.html
index 937b94ec67..2a52d4df14 100644
--- a/auth_api_key_group/static/description/index.html
+++ b/auth_api_key_group/static/description/index.html
@@ -1,20 +1,19 @@
-
-
+
Auth API key group