Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
04473eb
[add] mail_environment
jgrandguillaume Nov 22, 2011
b27c49b
[IMP] mail_environment misc
Nov 22, 2011
7c24453
[FIX] Add fnct_search on type in order to avoid error when ir.cron ru…
jgrandguillaume Nov 8, 2013
b19f5c3
[IMP] 7.0 no view type required
Feb 17, 2014
3d3e4df
mail_eniroment misc improvements
guewen Oct 8, 2014
4242d3b
Add OCA as author of OCA addons
gurneyalex Mar 2, 2015
40ede07
fix runbot warning
gurneyalex Jul 17, 2015
a494230
Add missing default oca icons
yvaucher Aug 18, 2015
50afaed
[FIX] like #230, but for mail_environment
hbrunn Aug 18, 2015
f2e1822
[UPD] prefix versions with 8.0
sbidoul Oct 9, 2015
65cd547
[MIG] Make modules uninstallable
pedrobaeza Oct 14, 2015
0129d3e
9.0 migration of mail_environment
gurneyalex Jan 20, 2016
4116b9e
[MIG] pre migration changes
pedrobaeza Oct 6, 2016
f16a7e9
Migrate mail_environment to 10.0
guewen Dec 21, 2016
e17c68e
README.rst - Fix layout
yvaucher Mar 24, 2017
78db7c7
[FIX] mail_environment must not depend on server_environment_files
sbidoul Apr 23, 2017
9662847
[11.0][MIG] mail_environment
simahawk Nov 29, 2017
7ff19a0
Use new server.env.mixin in mail_environment
guewen Jul 19, 2018
941e1b7
Infer configparser getter from field type
guewen Jul 24, 2018
495f138
[IMP] mail_environment: new README structure
sebalix Jan 4, 2019
9f56436
[MIG] mail_environment: Migration to 12.0
sebalix Jan 4, 2019
fe71213
Translated using Weblate (Portuguese (Brazil))
Sep 2, 2019
ad1598d
[REF] mail_environment: Black python code
gurneyalex Oct 10, 2019
463449e
[MIG] mail_environment to 13.0
gurneyalex Oct 10, 2019
19f5d6e
Run pre-commit (black, isort)
guewen Jan 28, 2020
940dc31
[FIX] mail_environment: fix server_type field
ajaniszewska-dev Mar 2, 2020
5479581
[14.0][MIG] - migration mail_environment
sbejaoui Oct 14, 2020
463b66a
Remove en.po
sbidoul Dec 13, 2020
ea8ba56
[MIG] Migrate to version 15.0
JuMiSanAr Oct 20, 2021
c3cc324
[MIG] mail_environment: Migration to 16.0
Nov 14, 2022
a0bf16b
[FIX] mail_environment: add search field for fetchmail.server's is_ssl
StefanRijnhart Dec 14, 2022
84e8cfd
[FIX] README to specify server_type instead of type to match the model
Dec 29, 2022
88dd1da
Translated using Weblate (Spanish)
Ivorra78 Jul 25, 2023
6a75cfa
[IMP] mail_environment: pre-commit stuff
moitabenfdz Nov 15, 2023
756cd0c
[MIG] mail_environment: Migration to 17.0
moitabenfdz Nov 15, 2023
f0b9a19
[UPD] Update mail_environment.pot
Jan 25, 2024
e403075
Added translation using Weblate (Italian)
mymage Feb 4, 2024
ac6910b
Translated using Weblate (Italian)
mymage Feb 4, 2024
4335f23
[MIG] mail_environment: Migration to 18.0
qgroulard Oct 7, 2024
58a2601
[UPD] Update mail_environment.pot
Oct 10, 2024
6fa01bf
Translated using Weblate (Italian)
mymage May 16, 2025
b322e13
[UPD] Update mail_environment.pot
Jun 4, 2025
4254857
Update translation files
weblate Jun 4, 2025
84b5953
Translated using Weblate (Italian)
mymage Jun 4, 2025
7a50afb
Added translation using Weblate (French)
vincent-hatakeyama Jun 5, 2025
aa25aee
Translated using Weblate (French)
vincent-hatakeyama Jun 5, 2025
82b1f28
[IMP] mail_environment: Add the `smtp_authentication` field to the `i…
ivantodorovich Jun 30, 2025
cf28214
[MIG] mail_environment: Migration to 19.0
rven Oct 4, 2025
c708d97
[UPD] Update mail_environment.pot
Feb 24, 2026
d029e16
[IMP] mail_environment: uninstall hook
gurneyalex Mar 25, 2026
dbe900b
[FIX] mail_environment: Add migration script for field "smtp_authenti…
qgroulard Apr 2, 2026
919f933
[IMP] mail_environment: pre-commit auto fixes
rven Oct 5, 2026
f1119d4
[MIG] mail_environment: Migration to 20.0
rven Oct 5, 2026
62245d4
[DO NOT MERGE] test-requirements.txt: depend on OCA/server-env#307
rven Oct 5, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
152 changes: 152 additions & 0 deletions mail_environment/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,152 @@
.. image:: https://odoo-community.org/readme-banner-image
:target: https://odoo-community.org/get-involved?utm_source=readme
:alt: Odoo Community Association

==========================================
Mail configuration with server_environment
==========================================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:4bf16114fc0f2ff4c988e874b1c7798280f92b6f105ae90fd27e914e4ab284cf
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |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%2Fserver--env-lightgray.png?logo=github
:target: https://github.com/OCA/server-env/tree/20.0/mail_environment
:alt: OCA/server-env
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/server-env-20-0/server-env-20-0-mail_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/server-env&target_branch=20.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module allows to configure the incoming and outgoing mail servers
using the server_environment mechanism: you can then have different mail
servers for the production and the test environment.

**Table of contents**

.. contents::
:local:

Installation
============

To install this module, you need to have the server_environment module
installed and properly configured.

Configuration
=============

With this module installed, the incoming and outgoing mail servers are
configured in the server_environment_files module (which is a module you
should provide, see the documentation of server_environment for more
information).

In the configuration file of each environment, you may first use the
sections [outgoing_mail] and [incoming_mail] to configure the default
values respectively for SMTP servers and the IMAP/POP servers.

Then for each server, you can define additional values or override the
default values with a section named [outgoing_mail.resource_name] or
[incoming_mail.resource_name] where "resource_name" is the name of the
server.

Example of config file :

::

[outgoing_mail]
smtp_host = smtp.myserver.com
smtp_port = 587
smtp_user =
smtp_pass =
smtp_encryption = ssl

[outgoing_mail.odoo_smtp_server1]
smtp_user = odoo
smtp_pass = odoo

[incoming_mail.odoo_pop_mail1]
server = mail.myserver.com
port = 110
server_type = pop
is_ssl = 0
attach = 0
original = 0
user = odoo@myserver.com
password = uas1ohV0

You will need to create 2 records in the database, one outgoing mail
server with the field name set to "odoo_smtp_server1" and one incoming
mail server with the field name set to "odoo_pop_mail1".

Usage
=====

Once configured, Odoo will read the mail servers values from the
configuration file related to each environment defined in the main Odoo
file.

Known issues / Roadmap
======================

- Due to the special nature of this addon, you cannot test it on the
OCA runbot.

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/server-env/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 <https://github.com/OCA/server-env/issues/new?body=module:%20mail_environment%0Aversion:%2020.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

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

Credits
=======

Authors
-------

* Camptocamp

Contributors
------------

- Nicolas Bessi <nicolas.bessi@camptocamp.com>
- Yannick Vaucher <yannick.vaucher@camptocamp.com>
- Guewen Baconnier <guewen.baconnier@camptocamp.com>
- Joël Grand-Guillaume <joel.grandguillaume@camptocamp.com>
- Holger Brunn <hbrunn@therp.nl>
- Alexandre Fayolle <alexandre.fayolle@camptocamp.com>

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/server-env <https://github.com/OCA/server-env/tree/20.0/mail_environment>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
2 changes: 2 additions & 0 deletions mail_environment/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
from . import models
from .hooks import uninstall_hook
14 changes: 14 additions & 0 deletions mail_environment/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Copyright 2012-2018 Camptocamp SA
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl)

{
"name": "Mail configuration with server_environment",
"version": "20.0.1.0.0",
"category": "Tools",
"summary": "Configure mail servers with server_environment_files",
"author": "Camptocamp, Odoo Community Association (OCA)",
"license": "AGPL-3",
"website": "https://github.com/OCA/server-env",
"depends": ["mail", "server_environment"],
"uninstall_hook": "uninstall_hook",
}
43 changes: 43 additions & 0 deletions mail_environment/hooks.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# Copyright 2026 Camptocamp (https://www.camptocamp.com)
from odoo.addons.server_environment.uninstall import restore_env_managed_columns


def uninstall_hook(env):
"""Restore database columns that server.env.mixin dropped for mail models.

When mail_environment is uninstalled, ``ir.mail_server`` and
``fetchmail.server`` would be left without the columns that the ORM
dropped when this addon was first installed. This hook recreates those
columns and repopulates them with the current effective values so the
database remains usable after removal.

After uninstalling this module, an Odoo server restart is required.
Field definitions referencing the compute methods of the mixin persist in memory
until the Python process restarts.
"""
restore_env_managed_columns(
env,
"ir.mail_server",
[
"smtp_host",
"smtp_port",
"smtp_user",
"smtp_pass",
"smtp_encryption",
"smtp_authentication",
],
)
restore_env_managed_columns(
env,
"fetchmail.server",
[
"server",
"port",
"server_type",
"user",
"password",
"is_ssl",
"attach",
"original",
],
)
73 changes: 73 additions & 0 deletions mail_environment/i18n/de.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_environment
#
# Translators:
# Rudolf Schnapka <rs@techno-flex.de>, 2016
msgid ""
msgstr ""
"Project-Id-Version: server-tools (9.0)\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-17 12:15+0000\n"
"PO-Revision-Date: 2016-04-21 09:16+0000\n"
"Last-Translator: Rudolf Schnapka <rs@techno-flex.de>\n"
"Language-Team: German (http://www.transifex.com/oca/OCA-server-tools-9-0/"
"language/de/)\n"
"Language: de\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"

#. module: mail_environment
#: model:ir.model.fields,help:mail_environment.field_fetchmail_server__is_ssl
#: model:ir.model.fields,help:mail_environment.field_fetchmail_server__x_is_ssl_env_default
msgid ""
"Connections are encrypted with SSL/TLS through a dedicated port (default: "
"IMAPS=993, POP3S=995)"
msgstr ""

#. module: mail_environment
#: model:ir.model,name:mail_environment.model_fetchmail_server
msgid "Incoming Mail Server"
msgstr ""

#. module: mail_environment
#: model:ir.model,name:mail_environment.model_ir_mail_server
#, fuzzy
msgid "Mail Server"
msgstr "ir.mail_server"

#. module: mail_environment
#: model:ir.model.fields,field_description:mail_environment.field_fetchmail_server__is_ssl
msgid "SSL/TLS"
msgstr ""

#. module: mail_environment
#: model:ir.model.fields,field_description:mail_environment.field_fetchmail_server__x_is_ssl_env_default
msgid "SSL/TLS Env Default"
msgstr ""

#. module: mail_environment
#: model:ir.model.fields,field_description:mail_environment.field_fetchmail_server__server_env_defaults
#: model:ir.model.fields,field_description:mail_environment.field_ir_mail_server__server_env_defaults
msgid "Server Env Defaults"
msgstr ""

#. module: mail_environment
#: model:ir.model.fields,field_description:mail_environment.field_fetchmail_server__server_type
msgid "Server Type"
msgstr ""

#. module: mail_environment
#: model:ir.model.fields,field_description:mail_environment.field_fetchmail_server__x_server_type_env_default
msgid "Server Type Env Default"
msgstr ""

#, fuzzy
#~ msgid "IMAP Server"
#~ msgstr "POP/IMAP-Server"

#, fuzzy
#~ msgid "POP Server"
#~ msgstr "POP/IMAP-Server"
66 changes: 66 additions & 0 deletions mail_environment/i18n/es.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_environment
#
# Translators:
# Pedro M. Baeza <pedro.baeza@gmail.com>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-05-01 10:38+0000\n"
"PO-Revision-Date: 2023-07-25 13:10+0000\n"
"Last-Translator: Ivorra78 <informatica@totmaterial.es>\n"
"Language-Team: Spanish (https://www.transifex.com/oca/teams/23907/es/)\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: mail_environment
#: model:ir.model.fields,help:mail_environment.field_fetchmail_server__is_ssl
#: model:ir.model.fields,help:mail_environment.field_fetchmail_server__x_is_ssl_env_default
msgid ""
"Connections are encrypted with SSL/TLS through a dedicated port (default: "
"IMAPS=993, POP3S=995)"
msgstr ""
"Las conexiones se cifran con SSL/TLS a través de un puerto dedicado (por "
"defecto: IMAPS=993, POP3S=995)"

#. module: mail_environment
#: model:ir.model,name:mail_environment.model_fetchmail_server
msgid "Incoming Mail Server"
msgstr "Servidor de correo entrante"

#. module: mail_environment
#: model:ir.model,name:mail_environment.model_ir_mail_server
msgid "Mail Server"
msgstr "Servidor de correo"

#. module: mail_environment
#: model:ir.model.fields,field_description:mail_environment.field_fetchmail_server__is_ssl
msgid "SSL/TLS"
msgstr "SSL/TLS"

#. module: mail_environment
#: model:ir.model.fields,field_description:mail_environment.field_fetchmail_server__x_is_ssl_env_default
msgid "SSL/TLS Env Default"
msgstr ""

#. module: mail_environment
#: model:ir.model.fields,field_description:mail_environment.field_fetchmail_server__server_env_defaults
#: model:ir.model.fields,field_description:mail_environment.field_ir_mail_server__server_env_defaults
msgid "Server Env Defaults"
msgstr "Valores por defecto del entorno de servidor"

#. module: mail_environment
#: model:ir.model.fields,field_description:mail_environment.field_fetchmail_server__server_type
msgid "Server Type"
msgstr "Tipo de servidor"

#. module: mail_environment
#: model:ir.model.fields,field_description:mail_environment.field_fetchmail_server__x_server_type_env_default
msgid "Server Type Env Default"
msgstr ""
Loading
Loading