Compare commits
124 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 70e1dac884 | |||
| 4837aa7eef | |||
| 75368f52e8 | |||
| 646fc412d0 | |||
| 235bcf85f2 | |||
| e8e75d4175 | |||
| 869d8d1961 | |||
| 0f2b82cb37 | |||
| 121be6a81e | |||
| 978e4b3bac | |||
| e9943acebe | |||
| e7aac2eed3 | |||
| 8ffc93b3c1 | |||
| 3da237343f | |||
| a0a4a2da98 | |||
| f93aeec22f | |||
| 3d145e7759 | |||
| 7aae398cf7 | |||
| 404b954a0e | |||
| 4887907ef7 | |||
| 8722ea902e | |||
| 3901e3b241 | |||
| a81e0623b0 | |||
| d5d232bb50 | |||
| 5ddc402467 | |||
| 79e3055ff4 | |||
| 55a8c391c4 | |||
| eb28322572 | |||
| ded1e69553 | |||
| 951e47708d | |||
| 6191b57da3 | |||
| 9e902c7a7e | |||
| 6073895598 | |||
| 835d77f3cf | |||
| 889c9cf0f9 | |||
| 28fe18157e | |||
| 026d6a76be | |||
| f559ec5939 | |||
| d12773b496 | |||
| a7a0db9ca3 | |||
| 8b5db69cae | |||
| 663157179f | |||
| 35da831350 | |||
| ee64b99c07 | |||
| 9a5c4e5a40 | |||
| 74840c9223 | |||
| eee614be25 | |||
| cee726d01d | |||
| 7f2829f6c6 | |||
| f3a541ad73 | |||
| ed4a7be19b | |||
| f6b60c1010 | |||
| 7277af11d1 | |||
| e588d900c9 | |||
| 9e71bb2a7b | |||
| 78f66a5298 | |||
| 84ecfaa4a8 | |||
| 27e9c1b2f2 | |||
| 1ae7cfa506 | |||
| dec529af18 | |||
| 493d45d687 | |||
| f997758e12 | |||
| b4bbc63478 | |||
| 4e1cfeb606 | |||
| fc268ae277 | |||
| 214fba8896 | |||
| 58be362009 | |||
| ba4f9d6354 | |||
| 4eb09d95f2 | |||
| fa70e54d1a | |||
| 1aa28868e4 | |||
| cb825e247d | |||
| c8a1814007 | |||
| c57decd8b0 | |||
| e6d9a9dac2 | |||
| 8c1a7ae400 | |||
| 22e6fcc760 | |||
| 0c0a7086ac | |||
| cadf860b42 | |||
| 17b5636645 | |||
| df991cb75d | |||
| 279dc5a623 | |||
| bad60e1fa8 | |||
| 7316152764 | |||
| 7b9bb78801 | |||
| 4721c7291f | |||
| 990ca4f7ca | |||
| 31df0a841a | |||
| 2a96d2c969 | |||
| 8036fd51b5 | |||
| 9ecc73df71 | |||
| 66d3bf35d0 | |||
| f0707ad049 | |||
| 9c56734a3a | |||
| f47c3db3bb | |||
| 3c552336da | |||
| ee52601986 | |||
| d4367c4d9a | |||
| a75c78e9d4 | |||
| 617fc00c52 | |||
| 71c45a1525 | |||
| cdf5c7eda4 | |||
| d530c8e566 | |||
| b49da1df09 | |||
| 0e89b54be2 | |||
| be8e8f0579 | |||
| 1c2ea73923 | |||
| 9f179bd49d | |||
| dce73864eb | |||
| d8e4894f5b | |||
| e133c53f52 | |||
| 8d032bae61 | |||
| d827ce586c | |||
| 53b921d934 | |||
| 2269ee51e8 | |||
| 484d245556 | |||
| 0754e169dc | |||
| 6172c98159 | |||
| cf6ca0fbb2 | |||
| b71cf50f9e | |||
| f2179ad8a0 | |||
| c40fbdbe0d | |||
| 1e7fe12478 | |||
| 42bef26a5d |
@@ -0,0 +1,2 @@
|
||||
# Include RST files in language statistics on GitHub.
|
||||
*.rst linguist-detectable
|
||||
@@ -1,6 +1,7 @@
|
||||
*.pyc
|
||||
.*
|
||||
*.mo
|
||||
.*
|
||||
!.gitattributes
|
||||
|
||||
# Sphinx build files
|
||||
_build/
|
||||
|
||||
@@ -19,6 +19,8 @@ SPHINXOPTS = -D project_root=$(ROOT) -D canonical_version=$(CANONICAL_VERSIO
|
||||
-D versions=$(VERSIONS) -D languages=$(LANGUAGES) -D language=$(CURRENT_LANG) \
|
||||
-D is_remote_build=$(IS_REMOTE_BUILD) \
|
||||
-A google_analytics_key=$(GOOGLE_ANALYTICS_KEY) \
|
||||
-A plausible_script=$(PLAUSIBLE_SCRIPT) \
|
||||
-A plausible_domain=$(PLAUSIBLE_DOMAIN) \
|
||||
-j $(WORKERS)
|
||||
SOURCE_DIR = content
|
||||
|
||||
@@ -77,6 +79,6 @@ $(HTML_BUILD_DIR)/_static/style.css: extensions/odoo_theme/static/style.scss ext
|
||||
fast: SPHINXOPTS += -A collapse_menu=True
|
||||
fast: html
|
||||
|
||||
static: $(HTML_BUILD_DIR)/static/style.css
|
||||
static: $(HTML_BUILD_DIR)/_static/style.css
|
||||
cp -r extensions/odoo_theme/static/* $(HTML_BUILD_DIR)/_static/
|
||||
cp -r static/* $(HTML_BUILD_DIR)/_static/
|
||||
|
||||
@@ -1,9 +1,12 @@
|
||||
import re
|
||||
import os
|
||||
import shutil
|
||||
import sys
|
||||
from pathlib import Path
|
||||
|
||||
import docutils
|
||||
from pygments.lexers import JsonLexer, XmlLexer
|
||||
from sphinx.ext import graphviz
|
||||
from sphinx.util import logging
|
||||
import sphinx
|
||||
|
||||
@@ -53,6 +56,11 @@ add_function_parentheses = True
|
||||
|
||||
#=== Extensions configuration ===#
|
||||
|
||||
source_read_replace_vals = {
|
||||
'GITHUB_PATH': f'https://github.com/odoo/odoo/blob/{version}',
|
||||
'GITHUB_ENT_PATH': f'https://github.com/odoo/enterprise/blob/{version}',
|
||||
}
|
||||
|
||||
# Add extensions directory to PYTHONPATH
|
||||
extension_dir = Path('extensions')
|
||||
sys.path.insert(0, str(extension_dir.absolute()))
|
||||
@@ -74,11 +82,15 @@ if not odoo_sources_dirs:
|
||||
{'dir_list': '\n'.join([f'\t- {d.resolve()}' for d in odoo_sources_candidate_dirs])},
|
||||
)
|
||||
else:
|
||||
odoo_dir = odoo_sources_dirs[0].resolve()
|
||||
sys.path.insert(0, str(odoo_dir))
|
||||
if (3, 6) < sys.version_info < (3, 7):
|
||||
# Running odoo needs python 3.7 min but monkey patch version_info to be compatible with 3.6
|
||||
# Running odoo needs python 3.7 min but monkey patch version_info to be compatible with 3.6.
|
||||
sys.version_info = (3, 7, 0)
|
||||
odoo_dir = odoo_sources_dirs[0].resolve()
|
||||
source_read_replace_vals['ODOO_RELPATH'] = '/../' + str(odoo_sources_dirs[0])
|
||||
source_read_replace_vals['ODOO_ABSPATH'] = str(odoo_dir)
|
||||
sys.path.insert(0, str(odoo_dir))
|
||||
import odoo.addons
|
||||
odoo.addons.__path__.append(str(odoo_dir) + '/addons')
|
||||
from odoo import release as odoo_release # Don't collide with Sphinx's 'release' config option
|
||||
odoo_version = odoo_release.version.replace('~', '-') # Change saas~XX.Y to saas-XX.Y
|
||||
odoo_version = 'master' if 'alpha' in odoo_release.version else odoo_version
|
||||
@@ -98,12 +110,18 @@ else:
|
||||
)
|
||||
odoo_dir_in_path = True
|
||||
|
||||
# Mapping between odoo models related to master data and the declaration of the
|
||||
# data. This is used to point users to available xml_ids when giving values for
|
||||
# a field with the autodoc_field extension.
|
||||
model_references = {
|
||||
'account.account.type': 'addons/account/data/data_account_type.xml',
|
||||
'res.country': 'odoo/addons/base/data/res_country_data.xml',
|
||||
'res.currency': 'odoo/addons/base/data/res_currency_data.xml',
|
||||
}
|
||||
|
||||
# The Sphinx extensions to use, as module names.
|
||||
# They can be extensions coming with Sphinx (named 'sphinx.ext.*') or custom ones.
|
||||
extensions = [
|
||||
# Parse Python docstrings (autodoc, automodule, autoattribute directives)
|
||||
'sphinx.ext.autodoc' if odoo_dir_in_path else 'autodoc_placeholder',
|
||||
|
||||
# Link sources in other projects (used to build the reference doc)
|
||||
'sphinx.ext.intersphinx',
|
||||
|
||||
@@ -121,18 +139,27 @@ extensions = [
|
||||
# Redirection generator
|
||||
'redirects',
|
||||
|
||||
# Code switcher (switcher and case directives)
|
||||
'switcher',
|
||||
# Content tabs
|
||||
'sphinx_tabs.tabs',
|
||||
|
||||
# Strange html domain logic used in memento pages
|
||||
'html_domain',
|
||||
]
|
||||
|
||||
if odoo_dir_in_path:
|
||||
# GitHub links generation
|
||||
extensions += [
|
||||
'sphinx.ext.linkcode',
|
||||
'github_link',
|
||||
# Parse Python docstrings (autodoc, automodule, autoattribute directives)
|
||||
'sphinx.ext.autodoc',
|
||||
'autodoc_field',
|
||||
]
|
||||
else:
|
||||
extensions += [
|
||||
'autodoc_placeholder',
|
||||
]
|
||||
extensions.append('sphinx.ext.graphviz' if shutil.which('dot') else 'graphviz_placeholder')
|
||||
|
||||
todo_include_todos = False
|
||||
|
||||
@@ -153,7 +180,20 @@ sphinx.transforms.i18n.docname_to_domain = (
|
||||
sphinx.util.i18n.docname_to_domain
|
||||
) = lambda docname, compact: docname.split('/')[1 if docname.startswith('applications/') else 0]
|
||||
|
||||
supported_languages = {
|
||||
# The version names that should be shown in the version switcher, if the config option `versions`
|
||||
# is populated. If a version is passed to `versions` but is not listed here, it will not be shown.
|
||||
versions_names = {
|
||||
'master': "Master",
|
||||
'saas-15.2': "Odoo Online",
|
||||
'saas-15.1': "Odoo Online",
|
||||
'15.0': "Odoo 15",
|
||||
'14.0': "Odoo 14",
|
||||
'13.0': "Odoo 13",
|
||||
}
|
||||
|
||||
# The language names that should be shown in the language switcher, if the config option `languages`
|
||||
# is populated. If a language is passed to `languages` but is not listed here, it will not be shown.
|
||||
languages_names = {
|
||||
'de': 'Deutsch',
|
||||
'en': 'English',
|
||||
'es': 'Español',
|
||||
@@ -167,6 +207,9 @@ supported_languages = {
|
||||
# The specifications of redirect rules used by the redirects extension.
|
||||
redirects_file = 'redirects.txt'
|
||||
|
||||
sphinx_tabs_disable_tab_closing = True
|
||||
sphinx_tabs_disable_css_loading = True
|
||||
|
||||
#=== Options for HTML output ===#
|
||||
|
||||
html_theme = 'odoo_theme'
|
||||
@@ -209,7 +252,7 @@ latex_elements = {
|
||||
'tableofcontents': '', # no TOC
|
||||
|
||||
# Output manually in latex docs
|
||||
'releasename': '14.0',
|
||||
'releasename': release,
|
||||
}
|
||||
|
||||
latex_additional_files = ['static/latex/odoo.sty']
|
||||
@@ -249,6 +292,22 @@ latex_logo = 'static/img/odoo_logo.png'
|
||||
# If true, show URL addresses after external links.
|
||||
latex_show_urls = 'True'
|
||||
|
||||
# https://github.com/sphinx-doc/sphinx/issues/4054#issuecomment-329097229
|
||||
def source_read_replace(app, docname, source):
|
||||
"""Substitute parts of strings with computed values.
|
||||
|
||||
Since the RST substitution is not working everywhere, i.e. in directives'
|
||||
options, we need to be able to input those values when reading the sources.
|
||||
This is using the config `source_read_replace_vals`, mapping a name to its
|
||||
replacement. This will look for the name surrounded by curly braces in the source.
|
||||
|
||||
Meant to be connected to the `source-read` event.
|
||||
"""
|
||||
result = source[0]
|
||||
for key in app.config.source_read_replace_vals:
|
||||
result = result.replace(f"{{{key}}}", app.config.source_read_replace_vals[key])
|
||||
source[0] = result
|
||||
|
||||
|
||||
def setup(app):
|
||||
# Generate all alternate URLs for each document
|
||||
@@ -257,12 +316,34 @@ def setup(app):
|
||||
app.add_config_value('versions', None, 'env')
|
||||
app.add_config_value('languages', None, 'env')
|
||||
app.add_config_value('is_remote_build', None, 'env') # Whether the build is remotely deployed
|
||||
app.add_config_value('source_read_replace_vals', {}, 'env')
|
||||
app.connect('source-read', source_read_replace)
|
||||
|
||||
app.add_lexer('json', JsonLexer)
|
||||
app.add_lexer('xml', XmlLexer)
|
||||
|
||||
app.connect('html-page-context', _generate_alternate_urls)
|
||||
|
||||
# Add a `condition` option on directives to ignore them based on config values
|
||||
app.add_config_value('odoo_dir_in_path', None, 'env')
|
||||
def context_eval(expr):
|
||||
return eval(expr, {confval.name: confval.value for confval in app.config})
|
||||
|
||||
def patch(to_patch):
|
||||
to_patch.option_spec['condition'] = context_eval
|
||||
original_run = to_patch.run
|
||||
def new_run(self):
|
||||
if not self.options.get('condition', True):
|
||||
return []
|
||||
return original_run(self)
|
||||
to_patch.run = new_run
|
||||
|
||||
for to_patch in (
|
||||
sphinx.directives.code.LiteralInclude,
|
||||
docutils.parsers.rst.directives.tables.CSVTable,
|
||||
):
|
||||
patch(to_patch)
|
||||
|
||||
|
||||
def _generate_alternate_urls(app, pagename, templatename, context, doctree):
|
||||
""" Add keys of required alternate URLs for the current document in the rendering context.
|
||||
@@ -294,15 +375,18 @@ def _generate_alternate_urls(app, pagename, templatename, context, doctree):
|
||||
|
||||
The entry 'version' is added by Sphinx in the rendering context.
|
||||
"""
|
||||
# If the list of versions is not set, assume that the project has no alternate version
|
||||
_alternate_versions = app.config.versions and app.config.versions.split(',') or []
|
||||
context['alternate_versions'] = [
|
||||
(_alternate_version, _build_url(_version=_alternate_version))
|
||||
for _alternate_version in sorted(_alternate_versions, reverse=True)
|
||||
if _alternate_version != version and (
|
||||
_alternate_version != 'master' or pagename.startswith('developer')
|
||||
) and not _alternate_version.startswith('saas')
|
||||
]
|
||||
context['version_display_name'] = versions_names[version]
|
||||
|
||||
# If the list of versions is not set, assume the project has no alternate version
|
||||
_provided_versions = app.config.versions and app.config.versions.split(',') or []
|
||||
|
||||
# Map alternate versions to their display names and URLs.
|
||||
context['alternate_versions'] = []
|
||||
for _alternate_version, _display_name in versions_names.items():
|
||||
if _alternate_version in _provided_versions and _alternate_version != version:
|
||||
context['alternate_versions'].append(
|
||||
(_display_name, _build_url(_alternate_version))
|
||||
)
|
||||
|
||||
def _localize():
|
||||
""" Add the pairs of (lang, code, url) for the current document in the rendering context.
|
||||
@@ -313,19 +397,22 @@ def _generate_alternate_urls(app, pagename, templatename, context, doctree):
|
||||
"""
|
||||
_current_lang = app.config.language or 'en'
|
||||
# Replace the context value by its translated description ("Français" instead of "french")
|
||||
context['language'] = supported_languages.get(_current_lang)
|
||||
context['language'] = languages_names.get(_current_lang)
|
||||
|
||||
# If the list of languages is not set, assume that the project has no alternate language
|
||||
_alternate_languages = app.config.languages and app.config.languages.split(',') or []
|
||||
context['alternate_languages'] = [
|
||||
(
|
||||
supported_languages.get(_alternate_lang),
|
||||
_alternate_lang.split('_')[0] if _alternate_lang != 'en' else 'x-default',
|
||||
_build_url(_lang=_alternate_lang),
|
||||
)
|
||||
for _alternate_lang in _alternate_languages
|
||||
if _alternate_lang in supported_languages and _alternate_lang != _current_lang
|
||||
]
|
||||
_provided_languages = app.config.languages and app.config.languages.split(',') or []
|
||||
|
||||
# Map alternate languages to their display names and URLs.
|
||||
context['alternate_languages'] = []
|
||||
for _alternate_lang, _display_name in languages_names.items():
|
||||
if _alternate_lang in _provided_languages and _alternate_lang != _current_lang:
|
||||
context['alternate_languages'].append(
|
||||
(
|
||||
_display_name,
|
||||
_alternate_lang.split('_')[0] if _alternate_lang != 'en' else 'x-default',
|
||||
_build_url(_lang=_alternate_lang),
|
||||
)
|
||||
)
|
||||
|
||||
def _build_url(_version=None, _lang=None):
|
||||
if app.config.is_remote_build:
|
||||
|
||||
@@ -4,6 +4,8 @@
|
||||
Install
|
||||
=======
|
||||
|
||||
.. If you add content on this page, remove the redirect rule 'install -> install/install'
|
||||
|
||||
.. toctree::
|
||||
|
||||
install/install
|
||||
|
||||
@@ -7,7 +7,7 @@ internet-facing server. It follows :ref:`installation <setup/install>`, and is
|
||||
not generally necessary for a development systems that is not exposed on the
|
||||
internet.
|
||||
|
||||
.. warning:: If you are setting up a public server, be sure to check our :ref:`security` recommandations!
|
||||
.. warning:: If you are setting up a public server, be sure to check our :ref:`security` recommendations!
|
||||
|
||||
.. _db_filter:
|
||||
|
||||
@@ -299,7 +299,7 @@ in ``/etc/nginx/sites-enabled/odoo.conf`` set:
|
||||
}
|
||||
|
||||
server {
|
||||
listen 443;
|
||||
listen 443 ssl;
|
||||
server_name odoo.mycompany.com;
|
||||
proxy_read_timeout 720s;
|
||||
proxy_connect_timeout 720s;
|
||||
@@ -312,7 +312,6 @@ in ``/etc/nginx/sites-enabled/odoo.conf`` set:
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
|
||||
# SSL parameters
|
||||
ssl on;
|
||||
ssl_certificate /etc/ssl/nginx/server.crt;
|
||||
ssl_certificate_key /etc/ssl/nginx/server.key;
|
||||
ssl_session_timeout 30m;
|
||||
@@ -389,20 +388,112 @@ The solutions to support livechat/motifications in a WSGI application are:
|
||||
with ``/longpolling/`` to
|
||||
:option:`the longpolling port <odoo-bin --longpolling-port>`.
|
||||
|
||||
Serving Static Files
|
||||
====================
|
||||
.. _deploy/streaming:
|
||||
|
||||
For development convenience, Odoo directly serves all static files in its
|
||||
modules. This may not be ideal when it comes to performances, and static
|
||||
files should generally be served by a static HTTP server.
|
||||
Serving static files and attachments
|
||||
====================================
|
||||
|
||||
Odoo static files live in each module's ``static/`` folder, so static files
|
||||
can be served by intercepting all requests to :samp:`/{MODULE}/static/{FILE}`,
|
||||
and looking up the right module (and file) in the various addons paths.
|
||||
For development convenience, Odoo directly serves all static files and attachments in its modules.
|
||||
This may not be ideal when it comes to performances, and static files should generally be served by
|
||||
a static HTTP server.
|
||||
|
||||
Serving static files
|
||||
--------------------
|
||||
|
||||
Odoo static files are located in each module's :file:`static/` folder, so static files can be served
|
||||
by intercepting all requests to :samp:`/{MODULE}/static/{FILE}`, and looking up the right module
|
||||
(and file) in the various addons paths.
|
||||
|
||||
.. example::
|
||||
Say Odoo has been installed via the **debian packages** for Community and Enterprise, the addons
|
||||
paths is :file:`/usr/lib/python3/dist-packages/odoo/addons`. Using the above NGINX (https)
|
||||
configuration, the following location block should be added to serve static files via NGINX.
|
||||
|
||||
.. code-block:: nginx
|
||||
|
||||
location @odoo {
|
||||
# copy-paste the content of the / location block
|
||||
}
|
||||
|
||||
# Serve static files right away
|
||||
location ~ ^/[^/]+/static/.+$ {
|
||||
root /usr/lib/python3/dist-packages/odoo/addons;
|
||||
try_files $uri @odoo;
|
||||
expires 24h;
|
||||
}
|
||||
|
||||
.. example::
|
||||
Say Odoo has been installed via the **source**, and the two git repositories for Community and
|
||||
Enterprise has been cloned in :file:`/opt/odoo` and :file:`/opt/odoo-enterprise` respectively.
|
||||
The addons paths is ``/opt/odoo/odoo,/opt/odoo/addons,/opt/odoo-enterprise``. Using the above
|
||||
NGINX (https) configuragion, the following location block should be added to serve static files
|
||||
via NGINX.
|
||||
|
||||
.. code-block:: nginx
|
||||
|
||||
location @odoo {
|
||||
# copy-paste the content of the / location block
|
||||
}
|
||||
|
||||
# Serve static files right away
|
||||
location ~ ^/[^/]+/static/.+$ {
|
||||
try_files /static-base$uri /static-addons$uri /static-enterprise$uri @odoo$uri;
|
||||
expires 24h;
|
||||
}
|
||||
|
||||
location /static-base {
|
||||
internal;
|
||||
alias /opt/odoo/odoo/addons;
|
||||
}
|
||||
|
||||
location /static-addons {
|
||||
internal;
|
||||
alias /opt/odoo/addons;
|
||||
}
|
||||
|
||||
location /static-enterprise {
|
||||
internal;
|
||||
alias /opt/odoo-enterprise;
|
||||
}
|
||||
|
||||
.. warning::
|
||||
The actual NGINX configuration you need is highly dependent on your own installation. The two
|
||||
above snippets only highlight two possible configurations and may not be used as-is.
|
||||
|
||||
Serving attachments
|
||||
-------------------
|
||||
|
||||
Attachments are files stored in the filestore which access is regulated by Odoo. They cannot be
|
||||
directly accessed via a static web server as accessing them requires multiple lookups in the
|
||||
database to determine where the files are stored and whether the current user can access them or
|
||||
not.
|
||||
|
||||
Nevertheless, once the file has been located and the access rights verified by Odoo, it is a good
|
||||
idea to serve the file using the static web server instead of Odoo. For Odoo to delegate serving
|
||||
files to the static web server, the `X-Sendfile <https://tn123.org/mod_xsendfile/>`_ (apache) or
|
||||
`X-Accel <https://www.nginx.com/resources/wiki/start/topics/examples/x-accel/>`_ (nginx) extensions
|
||||
must be enabled and configured on the static web server. Once it is set up, start Odoo with the
|
||||
:option:`--x-sendfile <odoo-bin --x-sendfile>` CLI flag (this unique flag is used for both
|
||||
X-Sendfile and X-Accel).
|
||||
|
||||
|
||||
.. note::
|
||||
- The X-Sendfile extension for apache (and compatible web servers) does not require any
|
||||
supplementary configuration.
|
||||
- The X-Accel extension for NGINX **does** require the following additionnal configuration:
|
||||
|
||||
.. code-block:: nginx
|
||||
|
||||
location /web/filestore {
|
||||
internal;
|
||||
alias /path/to/odoo/data-dir/filestore;
|
||||
}
|
||||
|
||||
In case you don't know what is the path to your filestore, start Odoo with the
|
||||
:option:`--x-sendfile <odoo-bin --x-sendfile>` option and navigate to the ``/web/filestore`` URL
|
||||
directly via Odoo (don't navigate to the URL via NGINX). This logs a warnings, the message
|
||||
contains the configuration you need.
|
||||
|
||||
.. todo:: test whether it would be interesting to serve filestored attachments
|
||||
via this, and how (e.g. possibility of mapping ir.attachment id to
|
||||
filestore hash in the database?)
|
||||
|
||||
.. _security:
|
||||
|
||||
|
||||
@@ -44,4 +44,4 @@ For Exim
|
||||
|
||||
.. tip::
|
||||
If you don't have access/manage your email server, use :ref:`inbound messages
|
||||
<discuss/email_servers/inbound_messages>`.
|
||||
<email_communication/inbound_messages>`.
|
||||
|
||||
@@ -6,6 +6,7 @@ Maintain
|
||||
|
||||
.. toctree::
|
||||
|
||||
maintain/domain_names
|
||||
maintain/update
|
||||
maintain/enterprise
|
||||
maintain/hosting_changes
|
||||
|
||||
@@ -0,0 +1,334 @@
|
||||
============
|
||||
Domain names
|
||||
============
|
||||
|
||||
A **domain name** works as an address for your website. It makes the Internet much more accessible
|
||||
as it allows users to type a meaningful web address, such as ``www.odoo.com``, rather than its
|
||||
server's IP address with a series of numbers.
|
||||
|
||||
You can use a custom domain name to access your Odoo database and websites:
|
||||
|
||||
- By :ref:`registering a free domain name with Odoo <domain-name/odoo-register>` (for Odoo Online
|
||||
databases)
|
||||
- By :ref:`configuring a custom domain that you already own <domain-name/existing>`.
|
||||
|
||||
.. note::
|
||||
Odoo Online and Odoo.sh databases, including their websites, use by default a subdomain of
|
||||
``odoo.com`` for both the URL and the emails (e.g., ``https://example.odoo.com``).
|
||||
|
||||
.. important::
|
||||
Odoo offers a :ref:`free custom domain name <domain-name/odoo-register>` to all Odoo Online
|
||||
databases for one year. Visitors can then access your website with an address such as
|
||||
``www.example.com`` rather than the default ``example.odoo.com``.
|
||||
|
||||
.. seealso::
|
||||
- `Odoo Tutorials: Register a Free Domain Name
|
||||
<https://www.odoo.com/slides/slide/register-a-free-domain-name-1663>`_
|
||||
- `Odoo Quick Tips: Get a free domain name! <https://www.youtube.com/watch?v=eAfgeNOHLP4>`_
|
||||
|
||||
.. _domain-name/about:
|
||||
|
||||
About domain names
|
||||
==================
|
||||
|
||||
Having a **good domain name** is as important to your branding as the name of your business or
|
||||
organization as it is the first thing your visitors will notice. We recommend you keep them *simple,
|
||||
short, easy to remember and spell*.
|
||||
|
||||
A **subdomain** is a domain that is a part of another domain. It often refers to the additional part
|
||||
that comes before the main domain name. Traditionally, most websites use the ``www.`` subdomain,
|
||||
but any string of letters can be used as well. You can use subdomains to direct your visitors to
|
||||
other websites than your main website or to specific pages (e.g., ``experience.odoo.com`` points to
|
||||
a specific page.)
|
||||
|
||||
All domain names are referenced in the **Domain Name System**, or **DNS**, which works as a giant
|
||||
directory for the Internet. There are many DNS servers, so any modification to the DNS can take up
|
||||
to 72 hours to propagate worldwide on all servers.
|
||||
|
||||
.. _domain-name/odoo-register:
|
||||
|
||||
Register a free domain name with Odoo
|
||||
=====================================
|
||||
|
||||
You can register a domain name for your Odoo Online database directly from Odoo Website or your
|
||||
database manager.
|
||||
|
||||
.. important::
|
||||
- Your domain name is **free for one year** if you register it with Odoo!
|
||||
- The domain name is registered with `Gandi <https://www.gandi.net/>`_, the domain name
|
||||
registrar.
|
||||
- You are the owner of the domain name and can use it for other purposes.
|
||||
- Odoo manages payment and technical support for you.
|
||||
|
||||
To do so, go to :menuselection:`Website --> Go to website --> Promote --> Domain Name`.
|
||||
Alternatively, open your `database manager <https://www.odoo.com/my/databases>`_, click on the
|
||||
:guilabel:`settings` button next to your database, then on :guilabel:`Domain names`.
|
||||
|
||||
.. image:: domain_names/register-promote.png
|
||||
:align: center
|
||||
:alt: Clicking on Domain Names from an Odoo website
|
||||
|
||||
Search for the domain name of your choice to check its availability, then select the one you want to
|
||||
register for your website.
|
||||
|
||||
.. image:: domain_names/register-search.png
|
||||
:align: center
|
||||
:alt: The search of the domain name example.com shows which associated domains are available.
|
||||
|
||||
Next, fill in the form with your information to become the domain name owner.
|
||||
|
||||
Your domain name is directly linked to your database, but you still have to :ref:`map your domain
|
||||
name with your website <domain-name/website-map>`.
|
||||
|
||||
.. note::
|
||||
- Free domain names are also available for free Odoo Online databases (if you installed one app
|
||||
only, for example). In this case, Odoo reviews your request and your website to avoid abuse.
|
||||
This process may take up to three days.
|
||||
- This is not available for Odoo.sh databases yet.
|
||||
|
||||
.. _domain-name/odoo-manage:
|
||||
|
||||
Manage your domain name registered with Odoo
|
||||
--------------------------------------------
|
||||
|
||||
To manage the DNS records of your domain name registered with Odoo or to visualize the contacts
|
||||
associated with it, open your `database manager <https://www.odoo.com/my/databases>`_, click on the
|
||||
:guilabel:`settings` button next to your database, on :guilabel:`Domain names`, and then on
|
||||
:guilabel:`Contacts` or :guilabel:`DNS`.
|
||||
|
||||
.. image:: domain_names/manage.png
|
||||
:align: center
|
||||
:alt: Management of the domain names linked to an Odoo database
|
||||
|
||||
.. note::
|
||||
Please `submit a support ticket <https://www.odoo.com/help>`_ if you need further assistance to
|
||||
manage your domain name.
|
||||
|
||||
.. _domain-name/existing:
|
||||
|
||||
Configure your existing domain name
|
||||
===================================
|
||||
|
||||
If you already own a domain name, you can use it to point to your website.
|
||||
|
||||
To avoid any issue with the :ref:`SSL certificate validation <domain-name/ssl>`, we highly recommend
|
||||
that you proceed with the following actions in this order:
|
||||
|
||||
#. :ref:`Add a CNAME record <domain-name/cname>` on your domain name's DNS zone.
|
||||
#. :ref:`Map your domain name with your Odoo database <domain-name/db-map>`.
|
||||
#. :ref:`Map your domain name with your Odoo website <domain-name/website-map>`.
|
||||
|
||||
.. _domain-name/cname:
|
||||
|
||||
Add a CNAME record
|
||||
------------------
|
||||
|
||||
A **CNAME record** is a type of DNS record that points to the IP address of another website rather
|
||||
than to directly to an IP address.
|
||||
|
||||
You need a CNAME record that points to your Odoo database. The requirements are detailed in your
|
||||
database manager.
|
||||
|
||||
.. tabs::
|
||||
|
||||
.. group-tab:: Odoo Online
|
||||
|
||||
The target address is the current address of your database, as defined at its creation (e.g.,
|
||||
``example.odoo.com``)
|
||||
|
||||
.. group-tab:: Odoo.sh
|
||||
|
||||
Your project's main address is defined in :menuselection:`Settings --> Project Name`.
|
||||
|
||||
If you want to target a specific branch (production, staging or development), go to
|
||||
:menuselection:`Branches --> select your branch --> Settings --> Custom domains`, and click on
|
||||
:guilabel:`How to set up my domain?`. A message indicates which address your CNAME record
|
||||
should target.
|
||||
|
||||
#. Open your domain name's manager dashboard.
|
||||
#. Open the **DNS zone** management page for the domain name you want to configure.
|
||||
#. Create a **CNAME record** pointing to the address of your database.
|
||||
|
||||
While Odoo suggests creating a CNAME record for your ``www.`` subdomain (``www.example.com``, you
|
||||
can of course use any domain name of your choice, with any subdomain (e.g.,
|
||||
``anything.example.com``).
|
||||
|
||||
.. example::
|
||||
You own the domain name ``example.com``, and you have an Odoo Online database at the address
|
||||
``example.odoo.com``. You want to access your Odoo database primarily with the domain
|
||||
``www.example.com`` but also with the :ref:`naked domain <domain-name/naked-domain>`
|
||||
``example.com``.
|
||||
|
||||
To do so, you create a CNAME record for the ``www`` subdomain, with ``example.odoo.com`` as the
|
||||
target. The DNS zone manager generates the following rule and adds it to your DNS zone: ``www IN
|
||||
CNAME example.odoo.com.``
|
||||
|
||||
You also create a redirection from ``example.com`` to ``wwww.example.com``.
|
||||
|
||||
Your new DNS records are propagated to all DNS servers.
|
||||
|
||||
.. note::
|
||||
Here are some specific guidelines to create a CNAME record:
|
||||
|
||||
- `GoDaddy <https://www.godaddy.com/help/add-a-cname-record-19236>`_
|
||||
- `Namecheap <https://www.namecheap.com/support/knowledgebase/article.aspx/9646/2237/how-to-create-a-cname-record-for-your-domain>`_
|
||||
- `OVH <https://docs.ovh.com/us/en/domains/web_hosting_how_to_edit_my_dns_zone/#add-a-new-dns-record>`_
|
||||
- `CloudFlare <https://support.cloudflare.com/hc/en-us/articles/360019093151>`_
|
||||
- `Google Domains <https://support.google.com/domains/answer/3290350?hl=en>`_
|
||||
|
||||
.. _domain-name/naked-domain:
|
||||
|
||||
Naked domain
|
||||
~~~~~~~~~~~~
|
||||
|
||||
A **naked domain** is a domain name that doesn't have any subdomain at the beginning of the address
|
||||
(e.g., ``odoo.com`` instead of ``www.odoo.com``).
|
||||
|
||||
You may want your naked domain to redirect to your website as some visitors may not type the full
|
||||
domain name to access your website.
|
||||
|
||||
#. Open your domain name's manager dashboard.
|
||||
#. Create a **redirection** from the naked domain (``example.com``) to your main domain name
|
||||
(``www.example.com``).
|
||||
|
||||
.. note::
|
||||
Depending on your domain name registrar, this redirection may be already pre-configured.
|
||||
|
||||
.. _domain-name/db-map:
|
||||
|
||||
Map your domain name with your Odoo database
|
||||
--------------------------------------------
|
||||
|
||||
.. tabs::
|
||||
|
||||
.. group-tab:: Odoo Online
|
||||
|
||||
Open your `database manager <https://www.odoo.com/my/databases>`_, click on the
|
||||
:guilabel:`settings` button next to your database, on :guilabel:`Domain names`, and then on
|
||||
:guilabel:`Use my own domain` at the bottom of the right column.
|
||||
|
||||
Type the domain name you want to add to this database, then click on :guilabel:`Verify` to
|
||||
check if the CNAME record is correctly configured. Once done, click on :guilabel:`I confirm,
|
||||
it's done`.
|
||||
|
||||
.. image:: domain_names/online-map.png
|
||||
:align: center
|
||||
:alt: Verification of the CNAME records of a domain name before mapping it with a database
|
||||
|
||||
.. group-tab:: Odoo.sh
|
||||
|
||||
Go to :menuselection:`Branches --> select your branch --> Settings --> Custom domains`, type
|
||||
the domain name you want to add to this database, then click on :guilabel:`Add domain`.
|
||||
|
||||
.. image:: domain_names/odoo-sh-map.png
|
||||
:align: center
|
||||
:alt: Mapping a domain name with an Odoo.sh branch
|
||||
|
||||
.. seealso::
|
||||
- :ref:`Odoo.sh branches: settings tab <odoosh-gettingstarted-branches-tabs-settings>`
|
||||
|
||||
.. warning::
|
||||
Make sure to :ref:`add a CNAME record <domain-name/cname>` to your domain name's DNS **before**
|
||||
mapping your domain name with your Odoo database.
|
||||
|
||||
Failing to do so may impede the validation of the :ref:`SSL certificate <domain-name/ssl>` and
|
||||
would result in a *certificate name mismatch* error. This is often displayed by web browsers as a
|
||||
warning such as *"Your connection is not private"*.
|
||||
|
||||
If this is the case and you have added the domain name to your database's settings less than five
|
||||
days ago, wait 24 hours as the validation may still happen. Otherwise, please `submit a support
|
||||
ticket <https://www.odoo.com/help>`_ including screenshots of your CNAME records.
|
||||
|
||||
.. _domain-name/ssl:
|
||||
|
||||
SSL encryption (HTTPS protocol)
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
**SSL encryption** is an encryption-based Internet security protocol. It allows your visitors to
|
||||
navigate your website through a secure connection, which appears as an ``https://`` protocol at the
|
||||
beginning of your web address, rather than a non-secure ``http://`` protocol.
|
||||
|
||||
Odoo generates a separate SSL certificate for each domain :ref:`mapped in the database manager
|
||||
<domain-name/db-map>`, using integration with `Let's Encrypt Certificate Authority and ACME protocol
|
||||
<https://letsencrypt.org/how-it-works/>`_.
|
||||
|
||||
.. note::
|
||||
- The certificate generation may take up to 24h.
|
||||
- Several attempts to validate your certificate are made during the five days following the
|
||||
moment you add your domain name in your database's settings.
|
||||
- If you already use another service, you can keep using it or simply change for Odoo.
|
||||
|
||||
.. _domain-name/web-base-url:
|
||||
|
||||
Web base URL of a database
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
.. note::
|
||||
If you have Odoo Website, you can disregard this part and directly :ref:`map your domain name
|
||||
with your website <domain-name/website-map>`.
|
||||
|
||||
The **web base URL** of a database, or **root URL** affects your main website address and all the
|
||||
links sent to your customers (e.g., quotations, portal links, etc.).
|
||||
|
||||
To configure it, access your Odoo database with your custom address, then log in as an administrator
|
||||
of your database (any user in the *Settings* group) from the login screen.
|
||||
|
||||
.. warning::
|
||||
Connecting to your database with the original Odoo subdomain address (e.g., ``example.odoo.com``
|
||||
also updates the web base URL of your database. See below to prevent these automatic updates.
|
||||
|
||||
Alternatively, you can do it manually. To do so, activate the :ref:`developer mode
|
||||
<developer-mode>`, then go to :menuselection:`Settings --> Technical --> System Parameters`.
|
||||
|
||||
Find the key called ``web.base.url`` (or create it if it does not exist) and enter the full address
|
||||
of your website as value, such as ``https://www.example.com``.
|
||||
|
||||
.. note::
|
||||
The URL must include the protocol ``https://`` (or ``http://``) and must not end with a slash
|
||||
(``/``).
|
||||
|
||||
To prevent the automatic update of the web base URL when an administrator logs in the database, you
|
||||
can create the following System Parameter:
|
||||
|
||||
- key: ``web.base.url.freeze``
|
||||
- value: ``True``
|
||||
|
||||
.. _domain-name/website-map:
|
||||
|
||||
Map your domain name with your website
|
||||
======================================
|
||||
|
||||
Mapping your domain name to your website isn't the same as mapping it with your database:
|
||||
|
||||
- It defines your domain name as the main one for your website, helping search engines to index your
|
||||
website properly.
|
||||
- It defines your domain name as the base URL for your database, including the portal links sent by
|
||||
email to your customers.
|
||||
- If you have multiple websites, it maps your domain name with the appropriate website.
|
||||
|
||||
Go to :menuselection:`Website --> Configuration --> Settings --> Website Info`. If you have multiple
|
||||
websites, select the one you want to configure.
|
||||
|
||||
In the :guilabel:`Domain` field, fill in the web address of your website (e.g.,
|
||||
``https://www.example.com``) and click on :guilabel:`Save`.
|
||||
|
||||
.. image:: domain_names/website-settings.png
|
||||
:align: center
|
||||
:alt: Configuring https://www.example.com as the Domain of the website
|
||||
|
||||
.. warning::
|
||||
Mapping your domain name with your Odoo website prevents Google from indexing both your custom
|
||||
domain name ``www.example.com`` and your original odoo database address ``example.odoo.com``.
|
||||
|
||||
If both addresses are already indexed, it may take some time before Google removes the indexation
|
||||
of the second address. You may also try using the `Google Search Console
|
||||
<https://search.google.com/search-console/welcome>`_ to fix this.
|
||||
|
||||
.. note::
|
||||
If you have multiple websites and companies on your database, make sure that you select the
|
||||
right :guilabel:`Company` in the website settings, next to the :guilabel:`Domain` settings. Doing
|
||||
so indicates Odoo which URL to use as the :ref:`base URL <domain-name/web-base-url>` according to
|
||||
the company in use.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`/applications/general/email_communication/email_servers`
|
||||
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 8.9 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 38 KiB |
|
After Width: | Height: | Size: 32 KiB |
|
After Width: | Height: | Size: 7.2 KiB |
@@ -11,8 +11,6 @@ Depending on the platforms, you have to do it by yourself or contact our support
|
||||
From on-premises to Odoo Online
|
||||
===============================
|
||||
|
||||
.. warning:: Odoo Online is not compatible with **non-standard apps**.
|
||||
|
||||
1. Create a :ref:`duplicate <duplicate_premise>` of your database: in this duplicate, uninstall all the **non-standard apps**.
|
||||
2. Grab a "dump with filestore" of your database by using the Database Manager.
|
||||
3. **If you have time constraints, contact us earlier to schedule the transfer.**
|
||||
@@ -20,6 +18,11 @@ From on-premises to Odoo Online
|
||||
5. We will make sure your database is compatible and upload it to our cloud. In case of technical issues, we will get in touch with you.
|
||||
6. It's done!
|
||||
|
||||
.. important::
|
||||
- Odoo Online is not compatible with **non-standard apps**.
|
||||
- The database you are moving to Odoo Online must be in a :doc:`supported version
|
||||
<supported_versions>`.
|
||||
|
||||
From on-premises to Odoo.sh
|
||||
===========================
|
||||
|
||||
|
||||
@@ -35,14 +35,26 @@ Several actions are available:
|
||||
Upgrade
|
||||
=======
|
||||
|
||||
Upgrade the database to the latest Odoo version.
|
||||
If you are *not* on the latest **Online version**, you should receive an invitation to :doc:`upgrade
|
||||
<../upgrade>` your database. A **Rolling Release button** on your database's main screen proposes an
|
||||
upgrade to the latest version (e.g., 13.0 to 15.1).
|
||||
|
||||
.. warning::
|
||||
Upgrading a database to a newer version of Odoo is a complex operation that requires time and
|
||||
caution. It is essential to test the upgrade before upgrading the production database.
|
||||
.. important::
|
||||
- | **If your Odoo database's version is lower than the latest major release:**
|
||||
| You must upgrade your database within two months. After these two months, an automatic
|
||||
upgrade is initiated.
|
||||
- | **If your Odoo database's version is equal to or higher than the latest major release:**
|
||||
| You can disregard the invitation to upgrade as you probably wouldn't benefit from new
|
||||
features every two months.
|
||||
|
||||
.. note::
|
||||
Versions that are not supported anymore become deprecated and need to be updated to avoid
|
||||
security issues. We recommend you initiate the upgrade of the database yourself, as this method
|
||||
allows you to request a test upgrade of your database to check for any discrepancies.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`../upgrade/process`
|
||||
- :doc:`../upgrade`
|
||||
- :doc:`supported_versions`
|
||||
|
||||
.. _online/duplicate:
|
||||
|
||||
@@ -83,7 +95,7 @@ Domains
|
||||
Configure custom domains to access the database via another URL.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`/applications/websites/website/publish/domain_name`
|
||||
- :doc:`domain_names`
|
||||
|
||||
.. _online/tags:
|
||||
|
||||
|
||||
@@ -5,13 +5,15 @@
|
||||
Supported versions
|
||||
==================
|
||||
|
||||
|
||||
Odoo provides support and bug fixing **for the 3 last major versions** of Odoo.
|
||||
|
||||
Users hosted on **Odoo Online** may use intermediary versions (sometimes called *SaaS versions*) that are
|
||||
supported as well. These versions are not published for Odoo.sh or On-Premise
|
||||
installations.
|
||||
.. note::
|
||||
Odoo releases intermediary versions called **Online versions** on the :doc:`Odoo Online <online>`
|
||||
hosting every two months. Odoo Online users can then benefit from the latest features of Odoo.
|
||||
|
||||
- Admins of Odoo Online databases are invited to :doc:`upgrade <../upgrade>` them regularly.
|
||||
- Online versions are *not* released for Odoo.sh and On-Premise installations.
|
||||
- Online versions are listed below as *SaaS*.
|
||||
|
||||
What's the support status of my Odoo?
|
||||
=====================================
|
||||
@@ -23,36 +25,39 @@ This matrix shows the support status of every version.
|
||||
+-----------------+-------------+----------+-------------+----------------+------------------------+
|
||||
| | Odoo Online | Odoo.sh | On-Premise | Release date | End of support |
|
||||
+=================+=============+==========+=============+================+========================+
|
||||
| Odoo saas~15.2 | |green| | N/A | N/A | March 2022 | |
|
||||
+-----------------+-------------+----------+-------------+----------------+------------------------+
|
||||
| Odoo saas~15.1 | |red| | N/A | N/A | February 2022 | |
|
||||
+-----------------+-------------+----------+-------------+----------------+------------------------+
|
||||
| **Odoo 15.0** | |green| | |green| | |green| | October 2021 | October 2024 (planned) |
|
||||
+-----------------+-------------+----------+-------------+----------------+------------------------+
|
||||
| **Odoo 14.0** | |green| | |green| | |green| | October 2020 | October 2023 (planned) |
|
||||
+-----------------+-------------+----------+-------------+----------------+------------------------+
|
||||
| **Odoo 13.0** | |green| | |green| | |green| | October 2019 | October 2022 (planned) |
|
||||
+-----------------+-------------+----------+-------------+----------------+------------------------+
|
||||
| Odoo 12.saas~3 | |orange| | N/A | N/A | August 2019 | |
|
||||
| Odoo saas~12.3 | |red| | N/A | N/A | August 2019 | |
|
||||
+-----------------+-------------+----------+-------------+----------------+------------------------+
|
||||
| **Odoo 12.0** | |orange| | |orange| | |red| | October 2018 | October 2021 |
|
||||
| **Odoo 12.0** | |red| | |red| | |red| | October 2018 | October 2021 |
|
||||
+-----------------+-------------+----------+-------------+----------------+------------------------+
|
||||
| Odoo 11.saas~3 | |orange| | N/A | N/A | April 2018 | |
|
||||
| Odoo saas~11.3 | |red| | N/A | N/A | April 2018 | |
|
||||
+-----------------+-------------+----------+-------------+----------------+------------------------+
|
||||
| **Odoo 11.0** | |orange| | |orange| | |red| | October 2017 | October 2020 |
|
||||
| **Odoo 11.0** | |red| | |red| | |red| | October 2017 | October 2020 |
|
||||
+-----------------+-------------+----------+-------------+----------------+------------------------+
|
||||
| Odoo 10.saas~15 | |orange| | N/A | N/A | March 2017 | |
|
||||
| Odoo 10.saas~15 | |red| | N/A | N/A | March 2017 | |
|
||||
+-----------------+-------------+----------+-------------+----------------+------------------------+
|
||||
| Odoo 10.saas~14 | |orange| | N/A | N/A | January 2017 | |
|
||||
| Odoo 10.saas~14 | |red| | N/A | N/A | January 2017 | |
|
||||
+-----------------+-------------+----------+-------------+----------------+------------------------+
|
||||
| **Odoo 10.0** | |orange| | |orange| | |red| | October 2016 | October 2019 |
|
||||
| **Odoo 10.0** | |red| | |red| | |red| | October 2016 | October 2019 |
|
||||
+-----------------+-------------+----------+-------------+----------------+------------------------+
|
||||
| Odoo 9.saas~11 | |orange| | N/A | N/A | May 2016 | |
|
||||
| Odoo 9.saas~11 | |red| | N/A | N/A | May 2016 | |
|
||||
+-----------------+-------------+----------+-------------+----------------+------------------------+
|
||||
| **Odoo 9.0** | |orange| | N/A | |red| | October 2015 | October 2018 |
|
||||
| **Odoo 9.0** | |red| | N/A | |red| | October 2015 | October 2018 |
|
||||
+-----------------+-------------+----------+-------------+----------------+------------------------+
|
||||
| Odoo 8.saas~6 | |orange| | N/A | N/A | February 2015 | |
|
||||
| Odoo 8.saas~6 | |red| | N/A | N/A | February 2015 | |
|
||||
+-----------------+-------------+----------+-------------+----------------+------------------------+
|
||||
| **Odoo 8.0** | |orange| | N/A | |red| | September 2014 | October 2017 |
|
||||
| **Odoo 8.0** | |red| | N/A | |red| | September 2014 | October 2017 |
|
||||
+-----------------+-------------+----------+-------------+----------------+------------------------+
|
||||
|
||||
|
||||
.. note::
|
||||
|
||||
|green| Supported version
|
||||
@@ -61,11 +66,8 @@ This matrix shows the support status of every version.
|
||||
|
||||
N/A Never released for this platform
|
||||
|
||||
|orange| Some of our older customers may still run this version on our Odoo Online servers, we provide help only on blocking issues and advise you to upgrade.
|
||||
|
||||
🏁 Future version, not released yet
|
||||
|
||||
|
||||
.. This is an awful way to display colored circles but "Large Green Circle Emoji" was only released
|
||||
in 2019 (see https://unicode-table.com/en/1F7E2/). Let's wait a few more years...
|
||||
|
||||
@@ -75,9 +77,6 @@ This matrix shows the support status of every version.
|
||||
.. |red| image:: data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMzIuMTkgMjMyLjE5Ij48Y2lyY2xlIGN4PSIxMTYuMDkiIGN5PSIxMTYuMDkiIHI9IjExNi4wOSIgc3R5bGU9ImZpbGw6I2QwMDAwMCIvPjwvc3ZnPg==
|
||||
:width: 15
|
||||
|
||||
.. |orange| image:: data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMzIuMTkgMjMyLjE5Ij48Y2lyY2xlIGN4PSIxMTYuMDkiIGN5PSIxMTYuMDkiIHI9IjExNi4wOSIgc3R5bGU9ImZpbGw6I2ZmYTcwMCIvPjwvc3ZnPg==
|
||||
:width: 15
|
||||
|
||||
I run an older version of Odoo/OpenERP/TinyERP
|
||||
==============================================
|
||||
|
||||
|
||||
@@ -232,6 +232,6 @@ Save the file and then run the Odoo Shell:
|
||||
Finally, *via* the Odoo Shell, you can trigger the piece of code/function/method
|
||||
you want to debug.
|
||||
|
||||
.. image:: ./media/pdb_sh.png
|
||||
.. image:: containers/pdb_sh.png
|
||||
:align: center
|
||||
:alt: Console screenshot showing ``pdb`` running in an Odoo.sh shell.
|
||||
|
||||
|
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 72 KiB |
@@ -44,7 +44,7 @@ On Odoo.sh, in the branches view of your project, choose the branch in which you
|
||||
|
||||
In the upper right corner, click on the *Submodule* button, and then on *Run*.
|
||||
|
||||
.. image:: ./media/advanced-submodules-button.png
|
||||
.. image:: submodules/advanced-submodules-button.png
|
||||
:align: center
|
||||
|
||||
A dialog with a form is shown. Fill the inputs as follows:
|
||||
@@ -53,12 +53,12 @@ A dialog with a form is shown. Fill the inputs as follows:
|
||||
* Branch: The branch you want to use.
|
||||
* Path: The folder in which you want to add this submodule in your branch.
|
||||
|
||||
.. image:: ./media/advanced-submodules-dialog.png
|
||||
.. image:: submodules/advanced-submodules-dialog.png
|
||||
:align: center
|
||||
|
||||
On Github, you can get the repository URL with the *Clone or download* button of the repository. Make sure to *use SSH*.
|
||||
|
||||
.. image:: ./media/advanced-submodules-github-sshurl.png
|
||||
.. image:: submodules/advanced-submodules-github-sshurl.png
|
||||
:align: center
|
||||
|
||||
.. _odoosh-advanced-submodules-withgit:
|
||||
|
||||
|
Before Width: | Height: | Size: 6.1 KiB After Width: | Height: | Size: 6.1 KiB |
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 8.4 KiB After Width: | Height: | Size: 8.4 KiB |
@@ -8,7 +8,7 @@ Overview
|
||||
|
||||
The branches view gives you an overview of the different branches your repository has.
|
||||
|
||||
.. image:: ./media/interface-branches.png
|
||||
.. image:: branches/interface-branches.png
|
||||
:align: center
|
||||
|
||||
.. _odoosh-gettingstarted-branches-stages:
|
||||
@@ -20,7 +20,7 @@ Odoo.sh offers three different stages for your branches: production, staging and
|
||||
|
||||
You can change the stage of a branch by drag and dropping it into the stage section title.
|
||||
|
||||
.. image:: ./media/interface-branches-stagechange.png
|
||||
.. image:: branches/interface-branches-stagechange.png
|
||||
:align: center
|
||||
|
||||
.. _stage_production:
|
||||
@@ -109,7 +109,7 @@ Merging your branches
|
||||
---------------------
|
||||
You can merge your branches easily by drag and dropping them into each other.
|
||||
|
||||
.. image:: ./media/interface-branches-merge.png
|
||||
.. image:: branches/interface-branches-merge.png
|
||||
:align: center
|
||||
|
||||
When you want to test the changes of your development branches with the production data,
|
||||
@@ -156,7 +156,7 @@ An overview of your branch history:
|
||||
* The messages of the commits and their authors,
|
||||
* The various events linked to the platform, such as stage changes, database imports, backup restores.
|
||||
|
||||
.. image:: ./media/interface-branches-history.png
|
||||
.. image:: branches/interface-branches-history.png
|
||||
:align: center
|
||||
|
||||
For each event, a status is displayed in the top right-hand corner.
|
||||
@@ -172,7 +172,7 @@ This tab contains the mail catcher. It displays an overview of the emails sent b
|
||||
The mail catcher is available for your development and
|
||||
staging branches as the emails of your production database are really sent instead of being intercepted.
|
||||
|
||||
.. image:: ./media/interface-branches-mails.png
|
||||
.. image:: branches/interface-branches-mails.png
|
||||
:align: center
|
||||
:scale: 50%
|
||||
|
||||
@@ -181,7 +181,7 @@ Shell
|
||||
A shell access to your container. You can perform basic linux commands (:code:`ls`, :code:`top`)
|
||||
and open a shell on your database by typing :code:`psql`.
|
||||
|
||||
.. image:: ./media/interface-branches-shell.png
|
||||
.. image:: branches/interface-branches-shell.png
|
||||
:align: center
|
||||
|
||||
You can open multiple tabs and drag-and-drop them to arrange the layout as you wish,
|
||||
@@ -197,7 +197,7 @@ Editor
|
||||
An online integrated development environment (IDE) to edit the source code.
|
||||
You can also open terminals, Python consoles and even Odoo Shell consoles.
|
||||
|
||||
.. image:: ./media/interface-branches-editor.png
|
||||
.. image:: branches/interface-branches-editor.png
|
||||
:align: center
|
||||
|
||||
You can open multiple tabs and drag-and-drop them to arrange the layout as you wish,
|
||||
@@ -207,17 +207,19 @@ Monitoring
|
||||
----------
|
||||
This link contains various monitoring metrics of the current build.
|
||||
|
||||
.. image:: ./media/interface-branches-monitoring.png
|
||||
.. image:: branches/interface-branches-monitoring.png
|
||||
:align: center
|
||||
|
||||
You can zoom, change the time range or select a specific metric on each graph.
|
||||
On the graphs, annotations help you relate to changes on the build (database import, git push, etc...).
|
||||
|
||||
.. _odoosh/logs:
|
||||
|
||||
Logs
|
||||
----
|
||||
A viewer to have a look to your server logs.
|
||||
|
||||
.. image:: ./media/interface-branches-logs.png
|
||||
.. image:: branches/interface-branches-logs.png
|
||||
:align: center
|
||||
|
||||
Different logs are available:
|
||||
@@ -241,7 +243,7 @@ Backups
|
||||
A list of the backups available for download and restore, the ability to perform a manual backup and to import a
|
||||
database.
|
||||
|
||||
.. image:: ./media/interface-branches-backups.png
|
||||
.. image:: branches/interface-branches-backups.png
|
||||
:align: center
|
||||
|
||||
Odoo.sh makes daily backups of the production database. It keeps 7 daily, 4 weekly and 3 monthly backups.
|
||||
@@ -283,7 +285,7 @@ Settings
|
||||
--------
|
||||
Here you can find a couple of settings that only apply to the currently selected branch.
|
||||
|
||||
.. image:: ./media/interface-branches-settings.jpg
|
||||
.. image:: branches/interface-branches-settings.jpg
|
||||
:align: center
|
||||
|
||||
**Behaviour upon new commit**
|
||||
@@ -300,7 +302,7 @@ back from staging to development will automatically be set to 'Do nothing'.
|
||||
|
||||
Choose the modules to install automatically for your development builds.
|
||||
|
||||
.. image:: ./media/interface-settings-modulesinstallation.png
|
||||
.. image:: branches/interface-settings-modulesinstallation.png
|
||||
:align: center
|
||||
|
||||
* *Install only my modules* will install the modules of the branch only. This is the default option.
|
||||
@@ -382,7 +384,9 @@ we are considering the feature if there is enough demand.
|
||||
In case the domain of your users email addresses use SPF (Sender Policy Framework) or DKIM
|
||||
(DomainKeys Identified Mail), don't forget to authorize Odoo as a sending host in your domain name
|
||||
settings to increase the deliverability of your outgoing emails.
|
||||
The configuration steps are explained in the :ref:`Discuss app documentation <discuss-email_servers-spf-compliant>`.
|
||||
The configuration steps are explained in the documentation about :ref:`SPF
|
||||
<email_communication/spf_compliant>` and :ref:`DKIM <email_communication/dkim_compliant>`.
|
||||
|
||||
|
||||
.. Warning::
|
||||
Forgetting to configure your SPF or DKIM to authorize Odoo as a sending host can lead to the
|
||||
@@ -393,7 +397,7 @@ Shell commands
|
||||
==============
|
||||
In the top right-hand corner of the view, different shell commands are available.
|
||||
|
||||
.. image:: ./media/interface-branches-shellcommands.png
|
||||
.. image:: branches/interface-branches-shellcommands.png
|
||||
:align: center
|
||||
|
||||
Each command can be copied in the clipboard to be used in a terminal,
|
||||
@@ -462,12 +466,12 @@ To do so, follow these steps:
|
||||
(only apply the step 1)
|
||||
#. Paste the copied content to your profile SSH keys and press "Add"
|
||||
|
||||
.. image:: ./media/SSH-key-pasting.png
|
||||
.. image:: branches/SSH-key-pasting.png
|
||||
:align: center
|
||||
|
||||
#. The key should appear below
|
||||
|
||||
.. image:: ./media/SSH-key-appearing.png
|
||||
.. image:: branches/SSH-key-appearing.png
|
||||
:align: center
|
||||
|
||||
Connection
|
||||
@@ -481,7 +485,7 @@ To connect to your builds using ssh use the following command in a terminal:
|
||||
|
||||
You will find a shortcut for this command into the SSH tab in the upper right corner.
|
||||
|
||||
.. image:: ./media/SSH-panel.png
|
||||
.. image:: branches/SSH-panel.png
|
||||
:align: center
|
||||
|
||||
Provided you have the :ref:`correct access rights <odoosh-gettingstarted-settings-collaborators>` on the project,
|
||||
|
||||
|
Before Width: | Height: | Size: 6.1 KiB After Width: | Height: | Size: 6.1 KiB |
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 4.7 KiB After Width: | Height: | Size: 4.7 KiB |
|
Before Width: | Height: | Size: 66 KiB After Width: | Height: | Size: 66 KiB |
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 40 KiB After Width: | Height: | Size: 40 KiB |
|
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 27 KiB |
|
Before Width: | Height: | Size: 6.4 KiB After Width: | Height: | Size: 6.4 KiB |
|
Before Width: | Height: | Size: 84 KiB After Width: | Height: | Size: 84 KiB |
|
Before Width: | Height: | Size: 78 KiB After Width: | Height: | Size: 78 KiB |
|
Before Width: | Height: | Size: 8.3 KiB After Width: | Height: | Size: 8.3 KiB |
|
Before Width: | Height: | Size: 4.9 KiB After Width: | Height: | Size: 4.9 KiB |
|
Before Width: | Height: | Size: 5.6 KiB After Width: | Height: | Size: 5.6 KiB |
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 5.1 KiB After Width: | Height: | Size: 5.1 KiB |
@@ -13,7 +13,7 @@ In Odoo.sh, a build is considered as a database loaded by an Odoo server
|
||||
running on a specific revision of your project repository in a containerized environment.
|
||||
Its purpose is to test the well-behavior of the server, the database and the features with this revision.
|
||||
|
||||
.. image:: ./media/interface-builds.png
|
||||
.. image:: builds/interface-builds.png
|
||||
:align: center
|
||||
|
||||
In this view, a row represents a branch, and a cell of a row represents a build of this branch.
|
||||
@@ -95,7 +95,7 @@ Features
|
||||
The production branch will always appear first,
|
||||
and then the other branches are ordered by last build created. You can filter out the branches.
|
||||
|
||||
.. image:: ./media/interface-builds-branches.png
|
||||
.. image:: builds/interface-builds-branches.png
|
||||
:align: center
|
||||
|
||||
For each branch, you can access the last build's database using the *Connect* link and jump to the branch code using
|
||||
@@ -103,7 +103,7 @@ the *Github* link. For other branches than the production, you can create a new
|
||||
of the branch using the link *rebuild*. This last link is not available when there is already a build in progress for
|
||||
the branch.
|
||||
|
||||
.. image:: ./media/interface-builds-build.png
|
||||
.. image:: builds/interface-builds-build.png
|
||||
:align: center
|
||||
|
||||
For each build, you can access the revision changes using the button with the Github icon.
|
||||
@@ -113,7 +113,7 @@ in the dropdown menu of the *Connect* button.
|
||||
|
||||
.. _odoosh-gettingstarted-builds-download-dump:
|
||||
|
||||
.. image:: ./media/interface-builds-build-dropdown.png
|
||||
.. image:: builds/interface-builds-build-dropdown.png
|
||||
:align: center
|
||||
|
||||
.. _odoosh-gettingstarted-builds-dropdown-menu:
|
||||
|
||||
|
Before Width: | Height: | Size: 4.4 KiB After Width: | Height: | Size: 4.4 KiB |
|
Before Width: | Height: | Size: 6.9 KiB After Width: | Height: | Size: 6.9 KiB |
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.5 KiB |
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
@@ -10,7 +10,7 @@ Deploy your platform
|
||||
|
||||
Go to `Odoo.sh <https://www.odoo.sh/>`_ and hit the *Deploy your platform* button.
|
||||
|
||||
.. image:: ./media/deploy.png
|
||||
.. image:: create/deploy.png
|
||||
:align: center
|
||||
|
||||
Sign in with Github
|
||||
@@ -18,7 +18,7 @@ Sign in with Github
|
||||
|
||||
Sign in with your Github account. If you do not have an account yet, hit the *Create an account* link.
|
||||
|
||||
.. image:: ./media/github-signin.png
|
||||
.. image:: create/github-signin.png
|
||||
:align: center
|
||||
|
||||
Authorize Odoo.sh
|
||||
@@ -26,7 +26,7 @@ Authorize Odoo.sh
|
||||
|
||||
Grant Odoo.sh the required accesses to your account by clicking the *Authorize* button.
|
||||
|
||||
.. image:: ./media/github-authorize.png
|
||||
.. image:: create/github-authorize.png
|
||||
:align: center
|
||||
|
||||
Odoo.sh basically needs:
|
||||
@@ -62,7 +62,7 @@ When submitting the form, if you are notified your subscription is not valid, it
|
||||
|
||||
In case of doubt with your subscription, please contact the `Odoo support <https://www.odoo.com/help>`_.
|
||||
|
||||
.. image:: ./media/deploy-form.png
|
||||
.. image:: create/deploy-form.png
|
||||
:align: center
|
||||
|
||||
You're done !
|
||||
@@ -70,7 +70,7 @@ You're done !
|
||||
|
||||
You can start using Odoo.sh. Your first build is about to be created. You will soon be able to connect to your first database.
|
||||
|
||||
.. image:: ./media/deploy-done.png
|
||||
.. image:: create/deploy-done.png
|
||||
:align: center
|
||||
|
||||
.. _odoo_sh_import_your_database:
|
||||
@@ -113,12 +113,12 @@ Access the URL :file:`/web/database/manager` of your on-premise database and dow
|
||||
|
||||
You will need the master password of your database server. If you do not have it, contact your system administrator.
|
||||
|
||||
.. image:: ./media/create-import-onpremise-backup.png
|
||||
.. image:: create/create-import-onpremise-backup.png
|
||||
:align: center
|
||||
|
||||
Choose a zip including the filestore as the backup format.
|
||||
|
||||
.. image:: ./media/create-import-onpremise-backup-dialog.png
|
||||
.. image:: create/create-import-onpremise-backup-dialog.png
|
||||
:align: center
|
||||
|
||||
Odoo Online databases
|
||||
@@ -126,7 +126,7 @@ Odoo Online databases
|
||||
|
||||
`Access your databases manager <https://accounts.odoo.com/my/databases/manage>`_ and download a backup of your database.
|
||||
|
||||
.. image:: ./media/create-import-online-backup.png
|
||||
.. image:: create/create-import-online-backup.png
|
||||
:align: center
|
||||
|
||||
.. Warning::
|
||||
@@ -138,12 +138,12 @@ Upload the backup
|
||||
|
||||
Then, in your Odoo.sh project, in the backups tab of your production branch, import the backup you just downloaded.
|
||||
|
||||
.. image:: ./media/create-import-production.png
|
||||
.. image:: create/create-import-production.png
|
||||
:align: center
|
||||
|
||||
Once the backup imported, you can access the database using the *Connect* button in the history of the branch.
|
||||
|
||||
.. image:: ./media/create-import-production-done.png
|
||||
.. image:: create/create-import-production-done.png
|
||||
:align: center
|
||||
|
||||
Check your outgoing email servers
|
||||
|
||||
|
Before Width: | Height: | Size: 7.4 KiB After Width: | Height: | Size: 7.4 KiB |
|
Before Width: | Height: | Size: 7.9 KiB After Width: | Height: | Size: 7.9 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 29 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 6.9 KiB After Width: | Height: | Size: 6.9 KiB |
@@ -37,20 +37,20 @@ In the branches view:
|
||||
|
||||
|pic1| |pic2|
|
||||
|
||||
.. |pic1| image:: ./media/firstmodule-development-+.png
|
||||
.. |pic1| image:: first_module/firstmodule-development-+.png
|
||||
:width: 45%
|
||||
|
||||
.. |pic2| image:: ./media/firstmodule-development-fork.png
|
||||
.. |pic2| image:: first_module/firstmodule-development-fork.png
|
||||
:width: 45%
|
||||
|
||||
|
||||
Once the build created, you can access the editor and browse to the folder *~/src/user* to access
|
||||
to the code of your development branch.
|
||||
|
||||
.. image:: ./media/firstmodule-development-editor.png
|
||||
.. image:: first_module/firstmodule-development-editor.png
|
||||
:align: center
|
||||
|
||||
.. image:: ./media/firstmodule-development-editor-interface.png
|
||||
.. image:: first_module/firstmodule-development-editor-interface.png
|
||||
:align: center
|
||||
|
||||
From your computer
|
||||
@@ -95,7 +95,7 @@ Or, from your computer, if you have an :ref:`installation of Odoo <setup/install
|
||||
$ ./odoo-bin scaffold my_module ~/src/odoo-addons/
|
||||
|
||||
If you do not want to bother installing Odoo on your computer,
|
||||
you can also :download:`download this module structure template <media/my_module.zip>` in which you replace every occurrences of
|
||||
you can also :download:`download this module structure template <first_module/my_module.zip>` in which you replace every occurrences of
|
||||
*my_module* to the name of your choice.
|
||||
|
||||
The below structure will be generated:
|
||||
@@ -201,19 +201,19 @@ Test your module
|
||||
|
||||
Your branch should appear in your development branches in your project.
|
||||
|
||||
.. image:: ./media/firstmodule-test-branch.png
|
||||
.. image:: first_module/firstmodule-test-branch.png
|
||||
:align: center
|
||||
|
||||
In the branches view of your project,
|
||||
you can click on your branch name in the left navigation panel to access its history.
|
||||
|
||||
.. image:: ./media/firstmodule-test-branch-history.png
|
||||
.. image:: first_module/firstmodule-test-branch-history.png
|
||||
:align: center
|
||||
|
||||
You can see here the changes you just pushed, including the comment you set.
|
||||
Once the database ready, you can access it by clicking the *Connect* button.
|
||||
|
||||
.. image:: ./media/firstmodule-test-database.png
|
||||
.. image:: first_module/firstmodule-test-database.png
|
||||
:align: center
|
||||
|
||||
If your Odoo.sh project is configured to install your module automatically,
|
||||
@@ -234,12 +234,12 @@ You can either:
|
||||
|
||||
* Make your development branch a staging branch, by drag and dropping it onto the *staging* section title.
|
||||
|
||||
.. image:: ./media/firstmodule-test-devtostaging.png
|
||||
.. image:: first_module/firstmodule-test-devtostaging.png
|
||||
:align: center
|
||||
|
||||
* Merge it in an existing staging branch, by drag and dropping it onto the given staging branch.
|
||||
|
||||
.. image:: ./media/firstmodule-test-devinstaging.png
|
||||
.. image:: first_module/firstmodule-test-devinstaging.png
|
||||
:align: center
|
||||
|
||||
You can also use the :code:`git merge` command to merge your branches.
|
||||
@@ -247,7 +247,7 @@ You can also use the :code:`git merge` command to merge your branches.
|
||||
This will create a new staging build, which will duplicate the production database and make it run using a server
|
||||
updated with your latest changes of your branch.
|
||||
|
||||
.. image:: ./media/firstmodule-test-mergedinstaging.png
|
||||
.. image:: first_module/firstmodule-test-mergedinstaging.png
|
||||
:align: center
|
||||
|
||||
Once the database ready, you can access it using the *Connect* button.
|
||||
@@ -267,12 +267,12 @@ Your module may not appear directly in your apps to install either, you need to
|
||||
* in the apps menu, click the *Update Apps List* button,
|
||||
* in the dialog that appears, click the *Update* button.
|
||||
|
||||
.. image:: ./media/firstmodule-test-updateappslist.png
|
||||
.. image:: first_module/firstmodule-test-updateappslist.png
|
||||
:align: center
|
||||
|
||||
Your module will then appear in the list of available apps.
|
||||
|
||||
.. image:: ./media/firstmodule-test-mymoduleinapps.png
|
||||
.. image:: first_module/firstmodule-test-mymoduleinapps.png
|
||||
:align: center
|
||||
|
||||
Deploy in production
|
||||
@@ -283,7 +283,7 @@ and believe it is ready for production, you can merge your branch in the product
|
||||
|
||||
Drag and drop your staging branch on the production branch.
|
||||
|
||||
.. image:: ./media/firstmodule-test-mergeinproduction.png
|
||||
.. image:: first_module/firstmodule-test-mergeinproduction.png
|
||||
:align: center
|
||||
|
||||
You can also use the :code:`git merge` command to merge your branches.
|
||||
@@ -291,7 +291,7 @@ You can also use the :code:`git merge` command to merge your branches.
|
||||
This will merge the latest changes of your staging branch in the production branch,
|
||||
and update your production server with these latest changes.
|
||||
|
||||
.. image:: ./media/firstmodule-test-mergedinproduction.png
|
||||
.. image:: first_module/firstmodule-test-mergedinproduction.png
|
||||
:align: center
|
||||
|
||||
Once the database ready, you can access it using the *Connect* button.
|
||||
@@ -411,7 +411,7 @@ Or, from your computer terminal:
|
||||
|
||||
The platform will then create a new build for the branch *feature-1*.
|
||||
|
||||
.. image:: ./media/firstmodule-test-addachange-build.png
|
||||
.. image:: first_module/firstmodule-test-addachange-build.png
|
||||
:align: center
|
||||
|
||||
Once you tested your changes, you can merge your changes in the production branch, for instance by drag-and-dropping the
|
||||
|
||||
|
Before Width: | Height: | Size: 5.2 KiB After Width: | Height: | Size: 5.2 KiB |
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 3.2 KiB |
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 27 KiB |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 2.0 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 4.2 KiB After Width: | Height: | Size: 4.2 KiB |
|
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 3.4 KiB |
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 3.7 KiB After Width: | Height: | Size: 3.7 KiB |
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 1.6 KiB |
@@ -12,7 +12,7 @@ The online editor allows you to edit the source code of your builds from a web b
|
||||
It also gives you the possibility to open terminals, Python consoles, Odoo Shell consoles and
|
||||
`Notebooks <https://jupyterlab.readthedocs.io/en/stable/user/notebook.html>`_.
|
||||
|
||||
.. image:: ./media/interface-editor.png
|
||||
.. image:: online-editor/interface-editor.png
|
||||
:align: center
|
||||
|
||||
You can access the editor of a build through
|
||||
@@ -66,20 +66,20 @@ server is not a good practice.
|
||||
|
||||
To open a file in the editor, just double-click on it in the file browser panel on the left.
|
||||
|
||||
.. image:: ./media/interface-editor-open-file.png
|
||||
.. image:: online-editor/interface-editor-open-file.png
|
||||
:align: center
|
||||
|
||||
You can then begin to make your changes. You can save your changes with the menu
|
||||
:menuselection:`File --> Save .. File` or by hitting the :kbd:`Ctrl+S` shortcut.
|
||||
|
||||
.. image:: ./media/interface-editor-save-file.png
|
||||
.. image:: online-editor/interface-editor-save-file.png
|
||||
:align: center
|
||||
|
||||
If you save a Python file which is under your Odoo server addons path,
|
||||
Odoo will detect it and reload automatically so your changes are reflected immediately,
|
||||
without having to restart the server manually.
|
||||
|
||||
.. image:: ./media/interface-editor-automaticreload.gif
|
||||
.. image:: online-editor/interface-editor-automaticreload.gif
|
||||
:align: center
|
||||
|
||||
However, if the change is a data stored in database, such as the label of a field, or a view,
|
||||
@@ -88,7 +88,7 @@ You can update the module of the currently opened file by using the menu
|
||||
:menuselection:`Odoo --> Update current module`. Note that the file considered as currently opened
|
||||
is the file focused in the text editor, not the file highlighted in the file browser.
|
||||
|
||||
.. image:: ./media/interface-editor-update-current-module.png
|
||||
.. image:: online-editor/interface-editor-update-current-module.png
|
||||
:align: center
|
||||
|
||||
You can also open a terminal and execute the command:
|
||||
@@ -118,7 +118,7 @@ In this last command,
|
||||
* <branch> must be replaced by the name of the branch to which you want to push the changes,
|
||||
most-likely the current branch if you work in a development build.
|
||||
|
||||
.. image:: ./media/interface-editor-commit-push.png
|
||||
.. image:: online-editor/interface-editor-commit-push.png
|
||||
:align: center
|
||||
|
||||
.. Note::
|
||||
@@ -160,7 +160,7 @@ Thanks to this, you will be able to display objects in HTML.
|
||||
You can for instance display cells of a CSV file using
|
||||
`pandas <https://pandas.pydata.org/pandas-docs/stable/tutorials.html>`_.
|
||||
|
||||
.. image:: ./media/interface-editor-console-python-read-csv.png
|
||||
.. image:: online-editor/interface-editor-console-python-read-csv.png
|
||||
:align: center
|
||||
|
||||
You can also open an Odoo Shell console to play around
|
||||
@@ -189,12 +189,12 @@ to easily display lists and dicts in a pretty way, using the
|
||||
`rich display <https://ipython.readthedocs.io/en/stable/config/integrating.html#rich-display>`_
|
||||
mentioned above.
|
||||
|
||||
.. image:: ./media/interface-editor-console-odoo-pretty.png
|
||||
.. image:: online-editor/interface-editor-console-odoo-pretty.png
|
||||
:align: center
|
||||
|
||||
You can also use
|
||||
`pandas <https://pandas.pydata.org/pandas-docs/stable/tutorials.html>`_
|
||||
to display graphs.
|
||||
|
||||
.. image:: ./media/interface-editor-console-odoo-graph.png
|
||||
.. image:: online-editor/interface-editor-console-odoo-graph.png
|
||||
:align: center
|
||||
|
||||
|
Before Width: | Height: | Size: 2.0 MiB After Width: | Height: | Size: 2.0 MiB |
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 7.8 KiB After Width: | Height: | Size: 7.8 KiB |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 42 KiB |
|
Before Width: | Height: | Size: 43 KiB After Width: | Height: | Size: 43 KiB |
|
Before Width: | Height: | Size: 44 KiB After Width: | Height: | Size: 44 KiB |
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 23 KiB |
@@ -8,7 +8,7 @@ Overview
|
||||
|
||||
The settings allow you to manage the configuration of your project.
|
||||
|
||||
.. image:: ./media/interface-settings.png
|
||||
.. image:: settings/interface-settings.png
|
||||
:align: center
|
||||
|
||||
Project name
|
||||
@@ -16,7 +16,7 @@ Project name
|
||||
|
||||
The name of your project.
|
||||
|
||||
.. image:: ./media/interface-settings-projectname.png
|
||||
.. image:: settings/interface-settings-projectname.png
|
||||
:align: center
|
||||
|
||||
This defines the address that will be used to access your production database.
|
||||
@@ -31,7 +31,7 @@ Collaborators
|
||||
|
||||
Manage the Github users who can access your project.
|
||||
|
||||
.. image:: ./media/interface-settings-collaborators.png
|
||||
.. image:: settings/interface-settings-collaborators.png
|
||||
:align: center
|
||||
|
||||
There are two levels of users:
|
||||
@@ -87,7 +87,7 @@ Public Access
|
||||
|
||||
Allow public access to your development builds.
|
||||
|
||||
.. image:: ./media/interface-settings-public.png
|
||||
.. image:: settings/interface-settings-public.png
|
||||
:align: center
|
||||
|
||||
If activated, this option exposes the Builds page publicly, allowing visitors to connect to your development builds.
|
||||
@@ -117,7 +117,7 @@ as submodules in your branches to allow Odoo.sh to download them.
|
||||
If you are looking on how to set up your submodules,
|
||||
instructions are available in the chapter :ref:`Submodules <odoosh-advanced-submodules>` of this documentation.
|
||||
|
||||
.. image:: ./media/interface-settings-submodules.png
|
||||
.. image:: settings/interface-settings-submodules.png
|
||||
:align: center
|
||||
|
||||
When a repository is private, it is not possible to publicly download its branches and revisions.
|
||||
@@ -148,7 +148,7 @@ Storage Size
|
||||
|
||||
This section shows the storage size used by your project.
|
||||
|
||||
.. image:: ./media/interface-settings-storage.png
|
||||
.. image:: settings/interface-settings-storage.png
|
||||
:align: center
|
||||
|
||||
Storage size is computed as follows:
|
||||
@@ -170,7 +170,7 @@ Additional database workers can be configured here. More workers help increase t
|
||||
production database is able to handle. If you add more, it will automatically be synchronized
|
||||
with your subscription.
|
||||
|
||||
.. image:: ./media/interface-settings-workers.png
|
||||
.. image:: settings/interface-settings-workers.png
|
||||
:align: center
|
||||
|
||||
.. Warning::
|
||||
@@ -185,7 +185,7 @@ Staging Branches
|
||||
Additional staging branches allow you to develop and test more features at the same time. If you
|
||||
add more, it will automatically be synchronized with your subscription.
|
||||
|
||||
.. image:: ./media/interface-settings-staging-branches.png
|
||||
.. image:: settings/interface-settings-staging-branches.png
|
||||
:align: center
|
||||
|
||||
Activation
|
||||
@@ -193,5 +193,5 @@ Activation
|
||||
|
||||
Shows the status of the project's activation. You can change the project's activation code if needed.
|
||||
|
||||
.. image:: ./media/interface-settings-activation.png
|
||||
.. image:: settings/interface-settings-activation.png
|
||||
:align: center
|
||||
|
||||
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 3.9 KiB After Width: | Height: | Size: 3.9 KiB |
|
Before Width: | Height: | Size: 4.9 KiB After Width: | Height: | Size: 4.9 KiB |
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
@@ -8,5 +8,5 @@ Overview
|
||||
|
||||
The status page shows statistics regarding the servers your project uses. It includes the servers availability.
|
||||
|
||||
.. image:: ./media/interface-status.png
|
||||
.. image:: status/interface-status.png
|
||||
:align: center
|
||||
|
||||
|
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 35 KiB |
@@ -1,12 +1,257 @@
|
||||
:nosearch:
|
||||
:show-content:
|
||||
|
||||
.. |assistance-contact| replace::
|
||||
If you need Odoo assistance on this matter, please get in touch with your Odoo Account Manager or
|
||||
our `Sales department`_.
|
||||
.. _Sales department: mailto:sales@odoo.com
|
||||
|
||||
=======
|
||||
Upgrade
|
||||
=======
|
||||
|
||||
.. toctree::
|
||||
:titlesonly:
|
||||
|
||||
upgrade/process
|
||||
upgrade/odoo_sh
|
||||
upgrade/service_level
|
||||
upgrade/faq
|
||||
upgrade/online_hosting
|
||||
upgrade/odoo_sh
|
||||
upgrade/on_premise
|
||||
upgrade/faq
|
||||
|
||||
An upgrade is switching to a newer version of Odoo (e.g., Odoo 14.0 to Odoo 15.0).
|
||||
|
||||
An upgrade does not cover:
|
||||
|
||||
* Changing :ref:`editions <upgrade-faq/editions-change>` (i.e., Community to Enterprise edition)
|
||||
* Switching :ref:`hosting type <upgrade-faq/hosting-types-switch>` (i.e., On-Premise to Online or
|
||||
Odoo.sh)
|
||||
* Migration from another ERP to Odoo
|
||||
|
||||
.. note:: |assistance-contact|
|
||||
|
||||
.. seealso::
|
||||
- :ref:`upgrade/sla`
|
||||
|
||||
.. _upgrade/process-workflow:
|
||||
|
||||
Process workflow
|
||||
================
|
||||
|
||||
The upgrade process in a nutshell:
|
||||
|
||||
#. You create a test upgrade request.
|
||||
#. Odoo processes the request automatically by running the database through an upgrade script, which
|
||||
takes between 20 and 120 minutes.
|
||||
#. Odoo delivers a test database.
|
||||
#. You test your database for possible discrepancies (see :ref:`upgrade/test-guidance`).
|
||||
#. If there are any discrepancies, you report them to the Upgrade support team via the help portal
|
||||
(see :ref:`upgrade/test-assistance`).
|
||||
#. We fix the issues and send you a new test database.
|
||||
#. Once you have completed the testing and are happy with the result, you decide on a date and time
|
||||
when you stop users from accessing Odoo, freeze all data entries, and create an upgrade request
|
||||
for the production upgrade.
|
||||
#. Odoo delivers the production database through the automated process.
|
||||
#. You restore it in your Production environment a few short hours later and continue working on the
|
||||
newly upgraded database (this is done automatically on Odoo Online).
|
||||
|
||||
.. seealso::
|
||||
- :doc:`Upgrade process for Odoo Online (SaaS) <upgrade/online_hosting>`
|
||||
- :doc:`Upgrade process for Odoo.sh <upgrade/odoo_sh>`
|
||||
- :doc:`Upgrade process for On-Premise <upgrade/on_premise>`
|
||||
|
||||
.. _upgrade/testing-phase:
|
||||
|
||||
Testing
|
||||
=======
|
||||
|
||||
This phase allows you to review an upgraded version of your database without affecting your
|
||||
production database in any way. We suggest that you run the test upgrade process at least once, but
|
||||
you can do it as many times as you need (one at a time).
|
||||
|
||||
Once you receive your upgraded test database, check that all data, processes, and functionality are
|
||||
still correct and working as expected.
|
||||
|
||||
If you do find discrepancies, :ref:`report your issues <upgrade/test-assistance>` and :ref:`request
|
||||
a new test database <upgrade/test-db-request>` when the reported issues are fixed in the upgrade
|
||||
script.
|
||||
|
||||
If you do not find any discrepancies, you can move on to the upgrade of your production database.
|
||||
|
||||
.. important::
|
||||
A test database is only intended for testing and remains completely unrelated to your present or
|
||||
future production database. Any data you add, or changes you make, will not be reflected in your
|
||||
upgraded production database.
|
||||
|
||||
.. note::
|
||||
Test databases are neutered and features are disabled to prevent them from having an impact on
|
||||
the production database:
|
||||
|
||||
#. The serial number of the database is modified (to prevent it from sending information as if it
|
||||
was the production database).
|
||||
#. The :ref:`base URL of the database <domain-name/web-base-url>` is reset to
|
||||
``http://localhost:8069`` and the email domain to ``localhost``.
|
||||
#. Scheduled actions are disabled (the calendar synchronization, the bank statement
|
||||
synchronization, the planned automated actions, the fetching of incoming mail servers, etc.).
|
||||
#. Outgoing mail servers are disabled by archiving the existing ones and adding a
|
||||
fake/non-working one.
|
||||
#. Payment providers and delivery carriers are reset to test environment.
|
||||
#. Accounting localization Electronic Data Interchange (EDI) services are disabled.
|
||||
#. A system parameter is set to tell the database has been neutered.
|
||||
|
||||
.. _upgrade/test-db-request:
|
||||
|
||||
Request a test database
|
||||
=======================
|
||||
|
||||
Follow the instructions available per hosting type on the `website form
|
||||
<https://upgrade.odoo.com>`_ and select *Testing* purpose.
|
||||
|
||||
.. image:: upgrade/test-purpose.png
|
||||
:align: center
|
||||
:alt: Selection of the "Testing" purpose in the upgrade form on Odoo
|
||||
|
||||
.. _upgrade/test-guidance:
|
||||
|
||||
Test guidance
|
||||
=============
|
||||
|
||||
Every business and organization has its own operational needs and has to test its specific Odoo
|
||||
database individually. We recommend you look at `the test scenario
|
||||
<https://docs.google.com/document/d/1ypNs7JKPOsjNbKpdiKFH7Al6g6whZ9jr7f7duAQ5E1w/>`_ for further
|
||||
information.
|
||||
|
||||
.. todo:: change link "test scenario" once the related doc is published
|
||||
|
||||
.. _upgrade/test-assistance:
|
||||
|
||||
Assistance
|
||||
----------
|
||||
|
||||
If you encounter an issue in the **test database**, please get in touch with Odoo Upgrade Support
|
||||
via the `Odoo Support page <https://www.odoo.com/help>`_.
|
||||
|
||||
Under the *Ticket Description* section, select *An issue related to my upgrade* ticket type.
|
||||
|
||||
.. image:: upgrade/test-assistance.png
|
||||
:align: center
|
||||
:alt: Selection of "An issue related to my upgrade" as Ticket Type in the support form on Odoo
|
||||
|
||||
.. warning::
|
||||
If you choose another *Ticket Description* type, the request will be redirected to another
|
||||
team. This will slow down the processing and response time.
|
||||
|
||||
Please provide as much detail as you can (i.e., videos and screenshots to illustrate your issue).
|
||||
This will avoid clarifying questions and speed up the resolution process significantly.
|
||||
|
||||
.. note::
|
||||
* The purpose of the test phase is not to correct existing data or configurations in your
|
||||
database.
|
||||
* |assistance-contact|
|
||||
|
||||
.. _upgrade/steps-production:
|
||||
|
||||
The production launch
|
||||
=====================
|
||||
|
||||
The production upgrade request is when you decide to upgrade your current database with all your
|
||||
production data (invoices, VAT returns, inventories, current orders) to a new version of your
|
||||
choice.
|
||||
|
||||
After your :ref:`tests <upgrade/testing-phase>` are completed to your satisfaction, submit the
|
||||
request to upgrade your production database via our `website form <https://upgrade.odoo.com>`_.
|
||||
Select *Production* purpose.
|
||||
|
||||
.. important::
|
||||
Going into production without first testing may lead to:
|
||||
|
||||
- business interruptions (e.g., no longer having the possibility to validate an action)
|
||||
- poor customer experiences (e.g., an eCommerce website that does not work correctly)
|
||||
|
||||
.. _upgrade/production-assistance:
|
||||
|
||||
Assistance
|
||||
----------
|
||||
|
||||
If you encounter issues or problems in the **production database**, please get in touch with **Odoo
|
||||
Support**:
|
||||
|
||||
#. Connect to our `Odoo Support page <https://www.odoo.com/help>`_.
|
||||
#. Under the *Ticket Description* section, select the appropriate type related to your issue but
|
||||
**do not select** the option *An issue related to my upgrade*.
|
||||
|
||||
.. note::
|
||||
After upgrading to production, the support will be provided by the Support team instead of the
|
||||
Upgrade team.
|
||||
|
||||
#. Please provide as much detail as you can (i.e., videos and screenshots to illustrate your issue).
|
||||
This will avoid clarifying questions and speed up the resolution process significantly.
|
||||
|
||||
.. warning::
|
||||
If you choose *An issue related to my upgrade* as ticket type, the request will be redirected
|
||||
to another team than the support one and will slow down the processing and response time.
|
||||
|
||||
.. _upgrade/assistance:
|
||||
|
||||
Help
|
||||
====
|
||||
|
||||
.. _upgrade/contact:
|
||||
|
||||
Contact our Upgrade service support
|
||||
-----------------------------------
|
||||
|
||||
Should you have any more questions about the upgrade, do not hesitate to send a message to `Odoo
|
||||
Upgrade Team <mailto:upgrade@odoo.com>`_. We will be happy to answer it as soon as possible.
|
||||
|
||||
.. _upgrade/supported-versions:
|
||||
|
||||
Supported versions
|
||||
------------------
|
||||
|
||||
Please note that Odoo provides support and bug fixing only for the three last major versions of
|
||||
Odoo.
|
||||
|
||||
This is a factor to take into consideration before upgrading. If you are on an older version, we
|
||||
suggest you to prefer the most recent version to benefit from longer support (before having to
|
||||
upgrade again).
|
||||
|
||||
.. seealso::
|
||||
:doc:`maintain/supported_versions`
|
||||
|
||||
.. _upgrade/sla:
|
||||
|
||||
Service Level Agreement
|
||||
=======================
|
||||
|
||||
What is covered by the Enterprise Licence?
|
||||
------------------------------------------
|
||||
|
||||
Databases hosted on Odoo’s Cloud platforms (Saas and Odoo.sh) or On-Premise (Self-Hosting) enjoy the
|
||||
following services at all times.
|
||||
|
||||
The upgrade of:
|
||||
|
||||
* standard applications
|
||||
* Studio customization (as long as the :guilabel:`Studio` app is still active)
|
||||
* customizations done by our consulting and developer services *if* they are covered by a
|
||||
‘Maintenance of Customisations’ subscription
|
||||
|
||||
The Upgrade Service is limited to your database's technical conversion and adaptation (standard
|
||||
modules and data) to make it compatible with the targeted version.
|
||||
|
||||
What upgrading does NOT cover
|
||||
-----------------------------
|
||||
|
||||
* The cleaning of pre-existing data & configuration while upgrading
|
||||
* Any new developments and/or upgrades of your own :ref:`custom modules
|
||||
<upgrade-faq/custom-modules>`
|
||||
* `Training <https://www.odoo.com/learn>`_ on the latest version
|
||||
|
||||
You can get more information about your Enterprise Licence on our :ref:`Odoo Enterprise Subscription
|
||||
Agreement <upgrade>` page.
|
||||
|
||||
.. note:: |assistance-contact|
|
||||
|
||||
.. seealso::
|
||||
- :doc:`upgrade/faq`
|
||||
- :doc:`odoo_sh`
|
||||
- :doc:`maintain/supported_versions`
|
||||
@@ -47,13 +47,13 @@ In general, the "smaller" the database, the quickest the upgrade request is comp
|
||||
database that uses only CRM will be processed faster than a multi-company, multi-user database that
|
||||
uses Accounting, Sales, Purchase, and Manufacturing.
|
||||
|
||||
You can expect the time it takes for the platform to upgrade the test database will be similar to
|
||||
the production upgrade.
|
||||
You can expect the time it takes for the platform to upgrade the test database to be similar to the
|
||||
production upgrade.
|
||||
|
||||
.. _upgrade-faq/project:
|
||||
|
||||
The upgrade project
|
||||
===================
|
||||
Duration of the upgrade project
|
||||
-------------------------------
|
||||
|
||||
It depends on the user involvement (the time spent on testing, reporting problems, etc.) and the
|
||||
issues encountered that might need to be addressed by our technical team.
|
||||
@@ -80,6 +80,17 @@ partners, or you can do it yourself.
|
||||
|
||||
.. note:: |assistance-contact|
|
||||
|
||||
.. _upgrade-faq/upgrade-or-migration:
|
||||
|
||||
Upgrade or Migration
|
||||
====================
|
||||
|
||||
An upgrade is switching to a newer version of Odoo, while a migration reflects the change of
|
||||
:ref:`editions <upgrade-faq/editions-change>` or change of :ref:`hosting type
|
||||
<upgrade-faq/hosting-types-switch>`.
|
||||
|
||||
.. note:: |assistance-contact|
|
||||
|
||||
.. _upgrade-faq/editions-change:
|
||||
|
||||
Editions change (from Community to Enterprise)
|
||||
@@ -88,7 +99,9 @@ Editions change (from Community to Enterprise)
|
||||
The upgrade always returns an Enterprise edition of Odoo, whether the database you sent was a
|
||||
community or enterprise edition. It is required to have an enterprise subscription to upgrade.
|
||||
|
||||
.. note:: |assistance-contact|
|
||||
.. note::
|
||||
If you need assistance on this matter, please contact us via the `Odoo Support page
|
||||
<https://www.odoo.com/help>`_.
|
||||
|
||||
.. seealso::
|
||||
- `Editions <https://www.odoo.com/page/editions>`_
|
||||
@@ -105,6 +118,28 @@ Open the following link to get :doc:`more information about how to change your h
|
||||
|
||||
.. note:: |assistance-contact|
|
||||
|
||||
.. _upgrade-faq/upgrade-report:
|
||||
|
||||
The Upgrade Report
|
||||
==================
|
||||
|
||||
When an upgrade request completes successfully (test or production), you receive an email
|
||||
notification about it that includes an 'Upgrade Report'. This report is also sent to you via the
|
||||
Discuss app. It contains valuable information regarding changes that occurred during the upgrade.
|
||||
While it serves as a guide to possible issues to look out for, it is not an exhaustive list. It
|
||||
remains imperative that you test the upgraded database thoroughly and report any discrepancies you
|
||||
might find, before you decide to upgrade your production database.
|
||||
|
||||
.. _upgrade-faq/custom-views:
|
||||
|
||||
Custom views
|
||||
============
|
||||
|
||||
During the upgrade, some custom views might get disabled for technical reasons. Therefore they might
|
||||
have to be fixed after the upgrade. The :ref:`Upgrade Report <upgrade-faq/upgrade-report>` that is
|
||||
generated after the upgrade is available in the Discuss app, and lists all the custom views that
|
||||
might be impacted by this.
|
||||
|
||||
.. _upgrade-faq/release-notes:
|
||||
|
||||
Release Notes by version
|
||||
@@ -114,38 +149,37 @@ Open our `Release Note <https://www.odoo.com/page/release-notes>`_ page to get a
|
||||
features and improvements made in each version.
|
||||
|
||||
How long is my test available for
|
||||
---------------------------------
|
||||
=================================
|
||||
|
||||
An Odoo Online (SaaS) test database is available for one month by default. We can extend this trial
|
||||
period upon request. For Odoo.sh or on-premise, there is no restriction.
|
||||
|
||||
How many tests to perform before upgrading to production?
|
||||
---------------------------------------------------------
|
||||
=========================================================
|
||||
|
||||
As many as needed. When you are comfortable with the database, run a last test upgrade 48 hours
|
||||
before requesting your production upgrade and test your workflows one last time.
|
||||
|
||||
How to/Where to report upgrade issues?
|
||||
--------------------------------------
|
||||
======================================
|
||||
|
||||
If you encounter issues during the upgrade process, please contact the Odoo Support through the
|
||||
`Odoo Support page <https://www.odoo.com/help>`_
|
||||
`Odoo Support page <https://www.odoo.com/help>`_.
|
||||
|
||||
- To report an issue discovered during the testing phase, please select **An issue related to my
|
||||
upgrade (test phase)**.
|
||||
- To report an issue discovered post-upgrade, please select **An issue related to my upgrade
|
||||
(production)**
|
||||
(production)**.
|
||||
|
||||
Upgrading to production
|
||||
-----------------------
|
||||
=======================
|
||||
|
||||
Once you have completed testing and are happy with the result, you decide on a date and time when
|
||||
you stop users from accessing Odoo, freeze all data entries, and create an upgrade request for the
|
||||
production upgrade.
|
||||
|
||||
|
||||
How is my data handled in the Upgrade Platform?
|
||||
-----------------------------------------------
|
||||
===============================================
|
||||
|
||||
The Odoo Upgrade platform uses the same Privacy Policy as the rest of Odoo.com services.
|
||||
|
||||
@@ -168,4 +202,27 @@ The uploaded and migrated databases uploaded to the Upgrade platform are kept fo
|
||||
are permanently deleted following that period.
|
||||
|
||||
You can learn more about privacy and data handling at Odoo by visiting our `General Data Protection
|
||||
Regulation page <https://www.odoo.com/gdpr>`_.
|
||||
Regulation page <https://www.odoo.com/gdpr>`_.
|
||||
|
||||
Rolling Release (applicable to Odoo Online databases)
|
||||
=====================================================
|
||||
|
||||
This feature allows customers to upgrade their database directly from a message prompt sent to the
|
||||
database administrator as soon as the new version is released. Odoo first tests the upgrade to the
|
||||
next version. The rolling release upgrade option is displayed if the automated tests are successful.
|
||||
The message offers two options:
|
||||
|
||||
#. To 'Upgrade Now', which immediately triggers the upgrade of your live production database.
|
||||
|
||||
#. To take you to your `database manager <https://www.odoo.com/my/databases/>`_ where you can
|
||||
`request an upgraded test database <https://upgrade.odoo.com/#online/>`_ and check the upgraded
|
||||
test database for any discrepancies.
|
||||
|
||||
When you choose to proceed with the production upgrade directly, make sure all users have saved
|
||||
their work and are logged out. The upgrade takes approximately 15 minutes. During this time your
|
||||
database is unreachable. If you notice any problem after the upgrade, please report it via the `Odoo
|
||||
Support page <https://www.odoo.com/help>`_.
|
||||
|
||||
.. note::
|
||||
If you are using the Website or Studio app, we recommend you always do a test upgrade before
|
||||
upgrading your production instance.
|
||||
|
||||