From 750040d7ee9e8558649de4343f01b08ef23b6741 Mon Sep 17 00:00:00 2001 From: Maksym Yankin Date: Mon, 23 Mar 2026 15:40:49 +0200 Subject: [PATCH 1/2] [REF] image_tag: server_environment should not be a required dependency --- .pre-commit-config.yaml | 1 - image_tag/README.rst | 10 +++++----- image_tag/__manifest__.py | 6 +++--- image_tag/models/image_tag.py | 1 - image_tag/static/description/index.html | 6 +++--- image_tag/views/image_tag.xml | 2 -- 6 files changed, 11 insertions(+), 15 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 9571e312cc..90ee242fed 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -8,7 +8,6 @@ exclude: | ^fs_folder_webdav/| ^fs_image/| ^fs_storage_ms_drive/| - ^image_tag/| ^microsoft_drive_account/| ^storage_backend/| ^storage_backend_ftp/| diff --git a/image_tag/README.rst b/image_tag/README.rst index 58498601a5..41c3ced608 100644 --- a/image_tag/README.rst +++ b/image_tag/README.rst @@ -21,13 +21,13 @@ Image Tag :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fstorage-lightgray.png?logo=github - :target: https://github.com/OCA/storage/tree/18.0/image_tag + :target: https://github.com/OCA/storage/tree/19.0/image_tag :alt: OCA/storage .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/storage-18-0/storage-18-0-image_tag + :target: https://translation.odoo-community.org/projects/storage-19-0/storage-19-0-image_tag :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png - :target: https://runboat.odoo-community.org/builds?repo=OCA/storage&target_branch=18.0 + :target: https://runboat.odoo-community.org/builds?repo=OCA/storage&target_branch=19.0 :alt: Try me on Runboat |badge1| |badge2| |badge3| |badge4| |badge5| @@ -54,7 +54,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 to smash it by providing a detailed and welcomed -`feedback `_. +`feedback `_. Do not contact contributors directly about support or help with technical issues. @@ -86,6 +86,6 @@ 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. -This module is part of the `OCA/storage `_ project on GitHub. +This module is part of the `OCA/storage `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/image_tag/__manifest__.py b/image_tag/__manifest__.py index 18052152ef..2f1f5e69f7 100644 --- a/image_tag/__manifest__.py +++ b/image_tag/__manifest__.py @@ -5,15 +5,15 @@ "name": "Image Tag", "summary": """ Image tag model""", - "version": "18.0.1.0.0", + "version": "19.0.1.0.0", "license": "AGPL-3", "author": "ACSONE SA/NV,Akretion,Odoo Community Association (OCA)", "website": "https://github.com/OCA/storage", - "depends": ["server_environment"], + "depends": ["base"], "data": [ "security/res_groups.xml", "security/image_tag.xml", "views/image_tag.xml", ], - 'installable': False, + "installable": True, } diff --git a/image_tag/models/image_tag.py b/image_tag/models/image_tag.py index 86f255873d..847d4e1544 100644 --- a/image_tag/models/image_tag.py +++ b/image_tag/models/image_tag.py @@ -8,7 +8,6 @@ class ImageTag(models.Model): _name = "image.tag" - _inherit = ["server.env.techname.mixin"] _description = "Image Tag" @api.model diff --git a/image_tag/static/description/index.html b/image_tag/static/description/index.html index a643220ae0..ec485037e5 100644 --- a/image_tag/static/description/index.html +++ b/image_tag/static/description/index.html @@ -374,7 +374,7 @@

Image Tag

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! source digest: sha256:65ac121bd2bc478f653e03ef240143f74404daec8515979cab0fef01fb5aa916 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

Beta License: AGPL-3 OCA/storage Translate me on Weblate Try me on Runboat

+

Beta License: AGPL-3 OCA/storage Translate me on Weblate Try me on Runboat

This addon provide only one basic model used to define image’s tags. These tags are used by other addons to enrich the image’s information of an image linked to an other model. The fs_product_multi_image addon use @@ -402,7 +402,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 to smash it by providing a detailed and welcomed -feedback.

+feedback.

Do not contact contributors directly about support or help with technical issues.

@@ -430,7 +430,7 @@

Maintainers

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.

-

This module is part of the OCA/storage project on GitHub.

+

This module is part of the OCA/storage project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

diff --git a/image_tag/views/image_tag.xml b/image_tag/views/image_tag.xml index 38269a1301..0565f8e3ff 100644 --- a/image_tag/views/image_tag.xml +++ b/image_tag/views/image_tag.xml @@ -5,7 +5,6 @@ - @@ -15,7 +14,6 @@ - From d999e69af307228f2ab2d6a43ed349bf14e7ec6c Mon Sep 17 00:00:00 2001 From: Maksym Yankin Date: Wed, 25 Mar 2026 19:00:56 +0200 Subject: [PATCH 2/2] [ADD] image_tag_environment: make server_environment an optional dependency --- image_tag/__manifest__.py | 2 +- image_tag/security/res_groups.xml | 4 +- image_tag/upgrades/19.0.1.0.1/post-update.py | 13 + image_tag_environment/README.rst | 88 ++++ image_tag_environment/__init__.py | 1 + image_tag_environment/__manifest__.py | 16 + image_tag_environment/i18n/es.po | 90 ++++ image_tag_environment/i18n/image_tag.pot | 86 ++++ image_tag_environment/i18n/it.po | 89 ++++ image_tag_environment/models/__init__.py | 1 + image_tag_environment/models/image_tag.py | 11 + image_tag_environment/pyproject.toml | 3 + image_tag_environment/readme/CONTRIBUTORS.md | 2 + image_tag_environment/readme/DESCRIPTION.md | 2 + image_tag_environment/readme/USAGE.md | 1 + .../static/description/icon.png | Bin 0 -> 9455 bytes .../static/description/index.html | 437 ++++++++++++++++++ image_tag_environment/views/image_tag.xml | 21 + 18 files changed, 864 insertions(+), 3 deletions(-) create mode 100644 image_tag/upgrades/19.0.1.0.1/post-update.py create mode 100644 image_tag_environment/README.rst create mode 100644 image_tag_environment/__init__.py create mode 100644 image_tag_environment/__manifest__.py create mode 100644 image_tag_environment/i18n/es.po create mode 100644 image_tag_environment/i18n/image_tag.pot create mode 100644 image_tag_environment/i18n/it.po create mode 100644 image_tag_environment/models/__init__.py create mode 100644 image_tag_environment/models/image_tag.py create mode 100644 image_tag_environment/pyproject.toml create mode 100644 image_tag_environment/readme/CONTRIBUTORS.md create mode 100644 image_tag_environment/readme/DESCRIPTION.md create mode 100644 image_tag_environment/readme/USAGE.md create mode 100644 image_tag_environment/static/description/icon.png create mode 100644 image_tag_environment/static/description/index.html create mode 100644 image_tag_environment/views/image_tag.xml diff --git a/image_tag/__manifest__.py b/image_tag/__manifest__.py index 2f1f5e69f7..491137d763 100644 --- a/image_tag/__manifest__.py +++ b/image_tag/__manifest__.py @@ -5,7 +5,7 @@ "name": "Image Tag", "summary": """ Image tag model""", - "version": "19.0.1.0.0", + "version": "19.0.1.0.1", "license": "AGPL-3", "author": "ACSONE SA/NV,Akretion,Odoo Community Association (OCA)", "website": "https://github.com/OCA/storage", diff --git a/image_tag/security/res_groups.xml b/image_tag/security/res_groups.xml index 7ba612b045..f258253008 100644 --- a/image_tag/security/res_groups.xml +++ b/image_tag/security/res_groups.xml @@ -3,8 +3,8 @@ Image Tag Manager diff --git a/image_tag/upgrades/19.0.1.0.1/post-update.py b/image_tag/upgrades/19.0.1.0.1/post-update.py new file mode 100644 index 0000000000..574c6795b0 --- /dev/null +++ b/image_tag/upgrades/19.0.1.0.1/post-update.py @@ -0,0 +1,13 @@ +# Copyright 2026 Camptocamp SA +# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + module = env["ir.module.module"].search( + [("name", "=", "image_tag_environment"), ("state", "=", "uninstalled")] + ) + if module: + module.button_install() diff --git a/image_tag_environment/README.rst b/image_tag_environment/README.rst new file mode 100644 index 0000000000..83a66fa6b9 --- /dev/null +++ b/image_tag_environment/README.rst @@ -0,0 +1,88 @@ +.. image:: https://odoo-community.org/readme-banner-image + :target: https://odoo-community.org/get-involved?utm_source=readme + :alt: Odoo Community Association + +============================== +Image Tag - Server Environment +============================== + +.. + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! source digest: sha256:05203837238360e0c011f8ed825bbf70e20f56a5157f18585a37353e9a148a86 + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png + :target: https://odoo-community.org/page/development-status + :alt: Beta +.. |badge2| image:: https://img.shields.io/badge/license-AGPL--3-blue.png + :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 +.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fstorage-lightgray.png?logo=github + :target: https://github.com/OCA/storage/tree/19.0/image_tag_environment + :alt: OCA/storage +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/storage-19-0/storage-19-0-image_tag_environment + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png + :target: https://runboat.odoo-community.org/builds?repo=OCA/storage&target_branch=19.0 + :alt: Try me on Runboat + +|badge1| |badge2| |badge3| |badge4| |badge5| + +Glue module to make Server Environment features available for the Image +Tag addon. + +**Table of contents** + +.. contents:: + :local: + +Usage +===== + +Specify technical name during the creation of an image tag. + +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 to smash it by providing a detailed and welcomed +`feedback `_. + +Do not contact contributors directly about support or help with technical issues. + +Credits +======= + +Authors +------- + +* ACSONE SA/NV +* Akretion + +Contributors +------------ + +- Laurent Mignon +- Maksym Yankin + +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. + +This module is part of the `OCA/storage `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/image_tag_environment/__init__.py b/image_tag_environment/__init__.py new file mode 100644 index 0000000000..0650744f6b --- /dev/null +++ b/image_tag_environment/__init__.py @@ -0,0 +1 @@ +from . import models diff --git a/image_tag_environment/__manifest__.py b/image_tag_environment/__manifest__.py new file mode 100644 index 0000000000..2033f26a0e --- /dev/null +++ b/image_tag_environment/__manifest__.py @@ -0,0 +1,16 @@ +# Copyright 2023 ACSONE SA/NV +# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl). + +{ + "name": "Image Tag - Server Environment", + "summary": "Server environment features for the Image Tag model", + "version": "19.0.1.0.0", + "license": "AGPL-3", + "author": "ACSONE SA/NV,Akretion,Odoo Community Association (OCA)", + "website": "https://github.com/OCA/storage", + "depends": ["image_tag", "server_environment"], + "data": [ + "views/image_tag.xml", + ], + "auto_install": True, +} diff --git a/image_tag_environment/i18n/es.po b/image_tag_environment/i18n/es.po new file mode 100644 index 0000000000..36459bc555 --- /dev/null +++ b/image_tag_environment/i18n/es.po @@ -0,0 +1,90 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * image_tag +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2023-10-29 00:15+0000\n" +"Last-Translator: Ivorra78 \n" +"Language-Team: none\n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__apply_on +msgid "Apply On" +msgstr "Aplicar En" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__create_uid +msgid "Created by" +msgstr "Creado por" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__create_date +msgid "Created on" +msgstr "Creado el" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__display_name +msgid "Display Name" +msgstr "Mostrar Nombre" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__id +msgid "ID" +msgstr "ID (identificación)" + +#. module: image_tag +#: model:ir.actions.act_window,name:image_tag.act_open_image_tag_view +#: model:ir.model,name:image_tag.model_image_tag +#: model_terms:ir.ui.view,arch_db:image_tag.image_tag_view_search +msgid "Image Tag" +msgstr "Etiqueta de Imagen" + +#. module: image_tag +#: model:res.groups,name:image_tag.group_image_tag_manager +msgid "Image Tag Manager" +msgstr "Gestor de Etiquetas de Imagen" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag____last_update +msgid "Last Modified on" +msgstr "Última Modifiación el" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__write_uid +msgid "Last Updated by" +msgstr "Actualizado por Última vez por" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__write_date +msgid "Last Updated on" +msgstr "Última Actualización el" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__name +msgid "Name" +msgstr "Nombre" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__server_env_defaults +msgid "Server Env Defaults" +msgstr "" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__tech_name +msgid "Tech Name" +msgstr "Nombre Técnico" + +#. module: image_tag +#: model:ir.model.fields,help:image_tag.field_image_tag__tech_name +msgid "Unique name for technical purposes. Eg: server env keys." +msgstr "" +"Nombre único con fines técnicos. Por ejemplo: claves de ent del servidor." diff --git a/image_tag_environment/i18n/image_tag.pot b/image_tag_environment/i18n/image_tag.pot new file mode 100644 index 0000000000..9229bba009 --- /dev/null +++ b/image_tag_environment/i18n/image_tag.pot @@ -0,0 +1,86 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * image_tag +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.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: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__apply_on +msgid "Apply On" +msgstr "" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__create_uid +msgid "Created by" +msgstr "" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__create_date +msgid "Created on" +msgstr "" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__display_name +msgid "Display Name" +msgstr "" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__id +msgid "ID" +msgstr "" + +#. module: image_tag +#: model:ir.actions.act_window,name:image_tag.act_open_image_tag_view +#: model:ir.model,name:image_tag.model_image_tag +#: model_terms:ir.ui.view,arch_db:image_tag.image_tag_view_search +msgid "Image Tag" +msgstr "" + +#. module: image_tag +#: model:res.groups,name:image_tag.group_image_tag_manager +msgid "Image Tag Manager" +msgstr "" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag____last_update +msgid "Last Modified on" +msgstr "" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__write_uid +msgid "Last Updated by" +msgstr "" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__write_date +msgid "Last Updated on" +msgstr "" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__name +msgid "Name" +msgstr "" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__server_env_defaults +msgid "Server Env Defaults" +msgstr "" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__tech_name +msgid "Tech Name" +msgstr "" + +#. module: image_tag +#: model:ir.model.fields,help:image_tag.field_image_tag__tech_name +msgid "Unique name for technical purposes. Eg: server env keys." +msgstr "" diff --git a/image_tag_environment/i18n/it.po b/image_tag_environment/i18n/it.po new file mode 100644 index 0000000000..3d4d2f19d0 --- /dev/null +++ b/image_tag_environment/i18n/it.po @@ -0,0 +1,89 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * image_tag +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2025-07-23 11:25+0000\n" +"Last-Translator: mymage \n" +"Language-Team: none\n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 5.10.4\n" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__apply_on +msgid "Apply On" +msgstr "Applica a" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__create_uid +msgid "Created by" +msgstr "Creato da" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__create_date +msgid "Created on" +msgstr "Creato il" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__display_name +msgid "Display Name" +msgstr "Nome visualizzato" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__id +msgid "ID" +msgstr "ID" + +#. module: image_tag +#: model:ir.actions.act_window,name:image_tag.act_open_image_tag_view +#: model:ir.model,name:image_tag.model_image_tag +#: model_terms:ir.ui.view,arch_db:image_tag.image_tag_view_search +msgid "Image Tag" +msgstr "Etichetta immagine" + +#. module: image_tag +#: model:res.groups,name:image_tag.group_image_tag_manager +msgid "Image Tag Manager" +msgstr "Gestore etichetta immagine" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag____last_update +msgid "Last Modified on" +msgstr "Ultima modifica il" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__write_uid +msgid "Last Updated by" +msgstr "Ultimo aggiornamento di" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__write_date +msgid "Last Updated on" +msgstr "Ultimo aggiornamento il" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__name +msgid "Name" +msgstr "Nome" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__server_env_defaults +msgid "Server Env Defaults" +msgstr "Predefiniti ambiente server" + +#. module: image_tag +#: model:ir.model.fields,field_description:image_tag.field_image_tag__tech_name +msgid "Tech Name" +msgstr "Nome tecnico" + +#. module: image_tag +#: model:ir.model.fields,help:image_tag.field_image_tag__tech_name +msgid "Unique name for technical purposes. Eg: server env keys." +msgstr "Nome univoco per motivi tecnici. Es: chiavi server ambiente." diff --git a/image_tag_environment/models/__init__.py b/image_tag_environment/models/__init__.py new file mode 100644 index 0000000000..888490ab30 --- /dev/null +++ b/image_tag_environment/models/__init__.py @@ -0,0 +1 @@ +from . import image_tag diff --git a/image_tag_environment/models/image_tag.py b/image_tag_environment/models/image_tag.py new file mode 100644 index 0000000000..2c50349ff8 --- /dev/null +++ b/image_tag_environment/models/image_tag.py @@ -0,0 +1,11 @@ +# Copyright 2023 ACSONE SA/NV +# Copyright 2018 Akretion (http://www.akretion.com). +# @author Raphaël Reverdy +# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl). + +from odoo import models + + +class ImageTag(models.Model): + _name = "image.tag" + _inherit = ["image.tag", "server.env.techname.mixin"] diff --git a/image_tag_environment/pyproject.toml b/image_tag_environment/pyproject.toml new file mode 100644 index 0000000000..4231d0cccb --- /dev/null +++ b/image_tag_environment/pyproject.toml @@ -0,0 +1,3 @@ +[build-system] +requires = ["whool"] +build-backend = "whool.buildapi" diff --git a/image_tag_environment/readme/CONTRIBUTORS.md b/image_tag_environment/readme/CONTRIBUTORS.md new file mode 100644 index 0000000000..bd5b07bb6d --- /dev/null +++ b/image_tag_environment/readme/CONTRIBUTORS.md @@ -0,0 +1,2 @@ +- Laurent Mignon \ +- Maksym Yankin \ diff --git a/image_tag_environment/readme/DESCRIPTION.md b/image_tag_environment/readme/DESCRIPTION.md new file mode 100644 index 0000000000..9eac5a11d6 --- /dev/null +++ b/image_tag_environment/readme/DESCRIPTION.md @@ -0,0 +1,2 @@ +Glue module to make Server Environment features available for the Image +Tag addon. diff --git a/image_tag_environment/readme/USAGE.md b/image_tag_environment/readme/USAGE.md new file mode 100644 index 0000000000..b57527eec8 --- /dev/null +++ b/image_tag_environment/readme/USAGE.md @@ -0,0 +1 @@ +Specify technical name during the creation of an image tag. diff --git a/image_tag_environment/static/description/icon.png b/image_tag_environment/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/image_tag_environment/static/description/index.html b/image_tag_environment/static/description/index.html new file mode 100644 index 0000000000..3b2631d97a --- /dev/null +++ b/image_tag_environment/static/description/index.html @@ -0,0 +1,437 @@ + + + + + +README.rst + + + +
+ + + +Odoo Community Association + +
+

Image Tag - Server Environment

+ +

Beta License: AGPL-3 OCA/storage Translate me on Weblate Try me on Runboat

+

Glue module to make Server Environment features available for the Image +Tag addon.

+

Table of contents

+ +
+

Usage

+

Specify technical name during the creation of an image tag.

+
+
+

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 to smash it by providing a detailed and welcomed +feedback.

+

Do not contact contributors directly about support or help with technical issues.

+
+
+

Credits

+
+

Authors

+
    +
  • ACSONE SA/NV
  • +
  • Akretion
  • +
+
+
+

Contributors

+ +
+
+

Maintainers

+

This module is maintained by the OCA.

+ +Odoo Community Association + +

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.

+

This module is part of the OCA/storage project on GitHub.

+

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

+
+
+
+
+ + diff --git a/image_tag_environment/views/image_tag.xml b/image_tag_environment/views/image_tag.xml new file mode 100644 index 0000000000..b1409ab2b0 --- /dev/null +++ b/image_tag_environment/views/image_tag.xml @@ -0,0 +1,21 @@ + + + + image.tag + + + + + + + + + image.tag + + + + + + + +