diff --git a/content/administration/maintain/odoo_online.rst b/content/administration/maintain/odoo_online.rst index 9d76cd480..f3926e85c 100644 --- a/content/administration/maintain/odoo_online.rst +++ b/content/administration/maintain/odoo_online.rst @@ -30,8 +30,8 @@ Upgrade Trigger a database upgrade. .. seealso:: - For more information about the upgrade process, check out the :doc:`Odoo Online upgrade - documentation <../upgrade/odoo_online>`. + For more information about the upgrade process, check out the :ref:`Odoo Online upgrade + documentation `. .. _odoo_online/duplicate: diff --git a/content/administration/odoo_sh/getting_started/branches.rst b/content/administration/odoo_sh/getting_started/branches.rst index 40ddd57c3..27d2e6462 100644 --- a/content/administration/odoo_sh/getting_started/branches.rst +++ b/content/administration/odoo_sh/getting_started/branches.rst @@ -295,7 +295,7 @@ Upgrade Available for production and staging branches for valid projects. .. seealso:: - :doc:`Upgrade - Odoo.sh <../../upgrade/odoo_sh>` + :doc:`Upgrade documentation <../../upgrade>` .. _odoosh-gettingstarted-branches-tabs-settings: diff --git a/content/administration/upgrade.rst b/content/administration/upgrade.rst index 3695b98e7..00c8992e4 100644 --- a/content/administration/upgrade.rst +++ b/content/administration/upgrade.rst @@ -1,226 +1,371 @@ -: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: +An upgrade is the process of moving your database from an older version to a newer :doc:`supported +version ` (e.g., Odoo 14.0 to Odoo 16.0). Frequently upgrading is +essential as each version comes with new and improved features, bug fixes, and security patches. - upgrade/odoo_online - upgrade/odoo_sh - upgrade/on_premise - upgrade/faq +.. _upgrade_faq/rolling_release: -An upgrade is switching to a newer version of Odoo (e.g., Odoo 14.0 to Odoo 15.0). +.. spoiler:: Automatic upgrades: Odoo Online's Rolling Release process + + The Rolling Release process allows Odoo Online customers to upgrade their database directly from + a message prompt sent to the database administrator as soon as a new version is released. The + invitation to upgrade is only sent if no issues are detected during the automatic tests. + + .. image:: upgrade/rr-upgrade-message.png + :alt: The upgrade message prompt on the top right of the database + + It is strongly recommended to manually :ref:`test the upgrade first `. + Clicking :guilabel:`I want to test first` redirects to `the database manager + `_, where it is possible to request an upgraded test database + and check it for any discrepancies. + + It is **not** recommended to click :guilabel:`Upgrade Now` without testing first, as it + immediately triggers the live production database upgrade. + + If the Rolling Release process detects an issue with the upgrade, it will be deactivated until + the issue is resolved. An upgrade does not cover: -* Changing :ref:`editions ` (i.e., Community to Enterprise edition) -* Switching :ref:`hosting type ` (i.e., On-Premise to Odoo Online - or Odoo.sh) -* Migration from another ERP to Odoo + - Downgrading to a previous version of Odoo + - :doc:`Switching editions ` (e.g., from Community to Enterprise) + - :doc:`Changing hosting type ` (e.g., from on-premise + to Odoo Online) + - Migrating from another ERP to Odoo -.. note:: |assistance-contact| +.. warning:: + If your database contains a **custom module**, you must first upgrade its source code to be + compatible with the new version of Odoo **before upgrading**. +.. TODOUPG : once the page for developers is published, uncomment and link +.. :doc:`first upgrade its source code ` -.. seealso:: - - :ref:`upgrade/sla` -.. _upgrade/process-workflow: +Upgrading in a nutshell +----------------------- -Process workflow -================ +#. Request an upgraded test database (see :ref:`obtaining an upgraded test database + `). -The upgrade process in a nutshell: +#. Thoroughly test the upgraded database (see :ref:`testing the new version of the database + `). -#. 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). +#. Report any issue encountered during the testing to Odoo via the `support page + `__. -.. seealso:: - - :doc:`Upgrade process for Odoo Online ` - - :doc:`Upgrade process for Odoo.sh ` - - :doc:`Upgrade process for On-Premise ` +#. (If applicable) : upgrade the source code of your custom module to be compatible with the new + version of Odoo. -.. _upgrade/testing-phase: +#. Once all issues are resolved and you are confident that the upgraded database can be used as + your main database without any issues, plan the upgrade of your production database. -Testing -======= +#. Request the upgrade for the production database, rendering it unavailable for the time it takes + to complete the process (see :ref:`upgrading the production database `). -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). +#. Report any issue encountered during the upgrade to Odoo via the `support page + `__. -Once you receive your upgraded test database, check that all data, processes, and functionality are -still correct and working as expected. +.. TODOUPG: Once the page for developers is published, put this at 4) +.. (see :ref:`upgrading customizations `). -If you do find discrepancies, :ref:`report your issues ` and :ref:`request -a new test database ` when the reported issues are fixed in the upgrade -script. +.. _upgrade/request-test-database: -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 ` 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 -`_ 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 -`_ 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 `_. - -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 ` are completed to your satisfaction, submit the -request to upgrade your production database via our `website form `_. -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 `_. -#. 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 +Obtaining an upgraded test database ----------------------------------- -Should you have any more questions about the upgrade, do not hesitate to send a message to `Odoo -Upgrade Team `_. We will be happy to answer it as soon as possible. +The `Upgrade page `_ is the main platform for requesting an upgraded +database. However, depending on the hosting type, you can upgrade from the command line +(on-premise), the `Odoo Online database manager `_, or your `Odoo.sh +project `_. -.. _upgrade/supported-versions: +.. note:: + The Upgrade platform follows the same `Privacy Policy `_ as the + other Odoo.com services. Visit the `General Data Protection Regulation page + `_ to learn more about how Odoo handles your data and privacy. -Supported versions ------------------- +.. tabs:: -Please note that Odoo provides support and bug fixing only for the three last major versions of -Odoo. + .. group-tab:: Odoo Online -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). + Odoo Online databases can be manually upgraded via the `database manager + `_. + + The database manager displays all databases associated with the user's account. Databases + not on the most recent version of Odoo display an arrow in a circle icon next to their name, + indicating that they can be upgraded. + + .. image:: upgrade/databases-page.png + :alt: The database manager with an upgrade button next to the name of a database. + + Click the **arrow in a circle** icon to start the upgrade process. In the popup, fill in: + + - The **version** of Odoo you want to upgrade to, usually the latest version + - The **email** address that should receive the link to the upgraded database + - The :guilabel:`Purpose` of the upgrade, which is automatically set to :guilabel:`Test` for + your first upgrade request + + .. image:: upgrade/upgrade-popup.png + :alt: The "Upgrade your database" popup. + + The :guilabel:`Upgrade in progress` tag is displayed next to the database name until + completion. Once the process succeeds, an email containing a link to the upgraded test + database is sent to the address provided. The database can also be accessed from the database + manager by clicking the dropdown arrow before the database name. + + .. image:: upgrade/access-upgraded-db.png + :alt: Clicking the menu arrow displays the upgraded test database. + + .. group-tab:: Odoo.sh + + Odoo.sh is integrated with the upgrade platform to simplify the upgrade process. + + .. image:: upgrade/odoo-sh-staging.png + :alt: Odoo.sh project and tabs + + The **latest production daily automatic backup** is then sent to the `upgrade platform + `_. + + Once the upgrade platform is done upgrading the backup and uploading it on the branch, it is + put in a **special mode**: each time a **commit is pushed** on the branch, a **restore + operation** of the upgraded backup and an **update of all the custom modules** occur. This + allows you to test your custom modules on a pristine copy of the upgraded database. The log + file of the upgrade process can be found in your newly upgraded staging build by going to + :file:`~/logs/upgrade.log`. + + .. note:: + In databases where custom modules are installed, their source code + must be up-to-date with the target version of Odoo before the upgrade + can be performed. If there are none, the "update on commit" mode is + skipped, the upgraded database is built as soon as it is transferred from the upgrade + platform, and the upgrade mode is exited. + + .. TODOUPG : once the page for developers is published, uncomment + .. Check out the :doc:`upgrade for developers' + .. documentation ` for more information. In + .. addition, if a module is not needed after an upgrade, :ref:`you can + .. remove customizations `. + + .. group-tab:: On-premise + + The standard upgrade process can be initiated by entering the following command line on the + machine where the database is hosted: + + .. code-block:: console + + $ python <(curl -s https://upgrade.odoo.com/upgrade) test -d -t + + The following command can be used to display the general help and the main commands: + + .. code-block:: console + + $ python <(curl -s https://upgrade.odoo.com/upgrade) --help + + An upgraded test database can also be requested via the `Upgrade page + `_. + + .. note:: + - For security reasons, only the person who submitted the upgrade request can download it. + - For storage reasons, the database's copy is submitted without a filestore to the upgrade + server. Therefore, the upgraded database does not contain the production filestore. + - Before restoring the upgraded database, its filestore must be merged with the production + filestore to be able to perform tests in the same conditions as it would be in the new + version. + - The upgraded database contains: + + - A `dump.sql` file containing the upgraded database + - A `filestore` folder containing files extracted from in-database records into + attachments (if there are any) and new standard Odoo files from the targeted Odoo + version (e.g., new images, icons, payment provider's logos, etc.). + This is the folder that should be merged with the production filestore + in order to get the full upgraded filestore. + +.. note:: + You can request multiple test databases if you wish to test an upgrade more than once. + +.. _upgrade/upgrade_report: + +.. note:: + When an upgrade request is completed, an upgrade report is attached to the successful upgrade + email, and it becomes available in the Discuss app for users who are part of the "Administration + / Settings" group. This report provides important information about the changes introduced by + the new version. + +.. _upgrade/test_your_db: + +Testing the new version of the database +--------------------------------------- + +It is essential to spend some time testing the upgraded test database to ensure that you are not +stuck in your day-to-day activities by a change in views, behavior, or an error message once the +upgrade goes live. + +.. note:: + Test databases are neutralized, and some features are disabled to prevent them from impacting the + production database: + + #. Scheduled actions are disabled. + #. Outgoing mail servers are disabled by archiving the existing ones and adding a fake one. + #. Payment providers and delivery carriers are reset to the test environment. + +Testing as many of your business flows as possible is strongly recommended to ensure they are +working correctly and to get more familiar with the new version. + +.. admonition:: Basic test checklist + + - Are there views that are deactivated in your test database but active in your production + database? + - Are your usual views still displayed correctly? + - Are your reports (invoice, sales order, etc.) correctly generated? + - Are your website pages working correctly? + - Are you able to create and modify records? (sales orders, invoices, purchases, users, contacts, + companies, etc.) + - Are there any issues with your mail templates? + - Are there any issues with saved translations? + - Are your search filters still present? + - Can you export your data? + +.. spoiler:: Example of end-to-end testing + + - Checking a random product in your product catalog and comparing its test and production data to + verify everything is the same (product category, selling price, cost price, vendor, accounts, + routes, etc.). + - Buying this product (Purchase app). + - Confirming the reception of this product (Inventory app). + - Checking if the route to receive this product is the same in your production database + (Inventory app). + - Selling this product (Sales app) to a random customer. + - Opening your customer database (Contacts app), selecting a customer (or company), and checking + its data. + - Shipping this product (Inventory app). + - Checking if the route to ship this product is the same as in your production database + (Inventory app). + - Validating a customer invoice (Invoicing or Accounting app). + - Crediting the invoice (issuing a credit note) and checking if it behaves as in your production + database. + - Checking your reports' results (Accounting app). + - Randomly checking your taxes, currencies, bank accounts, and fiscal year (Accounting app). + - Making an online order (Website apps) from the product selection in your shop until the + checkout process and checking if everything behaves as in your production database. + + This list is **not** exhaustive. Extend the example to your other apps based on your use of Odoo. + +If you face an issue while testing your upgraded test database, you can request the assistance of +Odoo via the `support page `__ by selecting the option +related to testing the upgrade. In any case, it is essential to report any +problem encountered during the testing to fix it before upgrading your production database. + +You might encounter significant differences with standard views, features, fields, and models during +testing. Those changes cannot be reverted on a case-by-case basis. However, if a change introduced +by a new version breaks a customization, it is the responsibility of the maintainer of your custom +module to make it compatible with the new version of Odoo. + +.. tip:: + Do not forget to test: + + - Integrations with external software (EDI, APIs, etc.) + - Workflows between different apps (online sales with eCommerce, converting a lead all the way to + a sales order, delivery of products, etc.) + - Data exports + - Automated actions + - Server actions in the action menu on form views, as well as by selecting multiple records on + list views + +.. _upgrade/upgrade-prod: + +Upgrading the production database +--------------------------------- + +Once the :ref:`tests ` are completed and you are confident that the upgraded +database can be used as your main database without any issues, it is time to plan the go-live day. It +can be planned in coordination with Odoo's upgrade support analysts, reachable via the `support page +`__. + +Your production database will be unavailable during its upgrade. Therefore, we recommend planning +the upgrade at a time when the use of the database is minimal. + +As the standard upgrade scripts and your database are constantly evolving, it is also recommended +to frequently request another upgraded test database to ensure that the upgrade process is +still successful, especially if it takes a long time to finish. Fully rehearsing the upgrade +process the day before upgrading the production database is also recommended. + +.. important:: + - Going into production without first testing may lead to: + + - Users failing to adjust to the changes and new features + - Business interruptions (e.g., no longer having the possibility to validate an action) + - Poor customer experience (e.g., an eCommerce website that does not work correctly) + +The process of upgrading a production database is similar to upgrading a test database with a few +exceptions. + +.. tabs:: + + .. group-tab:: Odoo Online + + The process is similar to :ref:`obtaining an upgraded test database + `, except for the purpose option, which must be set to + :guilabel:`Production` instead of :guilabel:`Test`. + + .. warning:: + Once the upgrade is requested, the database will be unavailable until the upgrade is + finished. Once the process is completed, it is impossible to revert to the previous + version. + + .. group-tab:: Odoo.sh + + The process is similar to :ref:`obtaining an upgraded test database + ` on the :guilabel:`Production` branch. + + .. image:: upgrade/odoo-sh-prod.png + :alt: View from the upgrade tab + + The process is **triggered as soon as a new commit is made** on the branch. This + allows the upgrade process to be synchronized with the deployment of the custom modules' + upgraded source code. + If there are no custom modules, the upgrade process is triggered immediately. + + .. important:: + The database is unavailable throughout the process. If anything goes wrong, the platform + automatically reverts the upgrade, as it would be for a regular update. In case of success, + a backup of the database before the upgrade is created. + + The update of your custom modules must be successful to complete the entire upgrade process. + Make sure the status of your staging upgrade is :guilabel:`successful` before trying it in + production. + .. TODOUPG : once the page for developers is published, uncomment + .. More information on how to upgrade your custom modules can be found in the :ref:`upgrading customizations documentation `. + + .. group-tab:: On-premise + + The command to upgrade a database to production is similar to the one of upgrading a test + database except for the argument `test`, which must be replaced by `production`: + + .. code-block:: console + + $ python <(curl -s https://upgrade.odoo.com/upgrade) production -d -t + + An upgraded production database can also be requested via the `Upgrade page + `_. + Once the database is uploaded, any modification to your production database will **not** be + present on your upgraded database. This is why we recommend not using it during the upgrade + process. + + .. important:: + When requesting an upgraded database for production purposes, the copy is submitted without + a filestore. Therefore, the upgraded database filestore must be merged with the production + filestore before deploying the new version. + +In case of an issue with your production database, you can request the assistance of Odoo via the +`support page `__ by selecting the option related to +the upgrade in production. -.. seealso:: - :doc:`maintain/supported_versions` .. _upgrade/sla: Service-level agreement (SLA) -============================= +----------------------------- With Odoo Enterprise, upgrading a database to the most recent version of Odoo is **free**, including any support required to rectify potential discrepancies in the upgraded database. @@ -230,7 +375,7 @@ Information about the upgrade services included in the Enterprise Licence is ava upgrade services you can expect. Upgrade services covered by the SLA ------------------------------------ +=================================== Databases hosted on Odoo's cloud platforms (Odoo Online and Odoo.sh) or self-hosted (On-Premise) can benefit from upgrade services at all times for: @@ -245,7 +390,7 @@ Upgrade services are limited to the technical conversion and adaptation of a dat modules and data) to make it compatible with the version targeted by the upgrade. Upgrade services not covered by the SLA ---------------------------------------- +======================================= The following upgrade-related services are **not** included: @@ -256,9 +401,6 @@ The following upgrade-related services are **not** included: `; and - **training** on using the upgraded version's features and workflows. -.. note:: |assistance-contact| - .. seealso:: - - :doc:`Upgrade FAQ ` - :doc:`Odoo.sh documentation ` - :doc:`Supported Odoo versions ` diff --git a/content/administration/upgrade/access-upgraded-db.png b/content/administration/upgrade/access-upgraded-db.png new file mode 100644 index 000000000..a6dfcc518 Binary files /dev/null and b/content/administration/upgrade/access-upgraded-db.png differ diff --git a/content/administration/upgrade/databases-page.png b/content/administration/upgrade/databases-page.png new file mode 100644 index 000000000..1105fd1d3 Binary files /dev/null and b/content/administration/upgrade/databases-page.png differ diff --git a/content/administration/upgrade/faq.rst b/content/administration/upgrade/faq.rst deleted file mode 100644 index f4fba7a73..000000000 --- a/content/administration/upgrade/faq.rst +++ /dev/null @@ -1,228 +0,0 @@ -.. |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 - -=== -FAQ -=== - -.. _upgrade-faq/why: - -Why upgrade -=========== - -* You benefit from the latest features of the :ref:`new major version - ` released by Odoo. -* If you are in an :ref:`unsupported version `, you get a new version - with support. - -.. _upgrade-faq/when: - -When to upgrade -=============== - -Whenever you want. You can make your upgrade request as soon as a new version is released or when -your version turns unsupported, and you still wish to enjoy support. - -.. _upgrade-faq/availability: - -Availability of the new version -=============================== - -As soon as Odoo announces the release of a new major version, you can create a test upgrade request -to try the latest version. Please note that at this point, the upgrade scripts will only have been -tested with demo data. Please report any issue you might encounter while testing via the `Odoo -Support page `_ and make sure to be happy with your test version before -requesting the upgrade of your database in production. - -.. _upgrade-faq/duration: - -Duration of the upgrade -======================= - -It is impossible to give time estimates for every upgrade request. - -In general, the "smaller" the database, the quickest the upgrade request is completed. A single-user -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 to be similar to the -production upgrade. - -.. _upgrade-faq/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. - -So, in a nutshell, what can impact your upgrade lead time? - -* Source & targeted versions -* Installed apps -* Volume of data -* Amount of customization (models, fields, methods, workflows, reports, website, etc.) -* Installation of new apps or configuration changes after the start of the test phase -* User commitment - -.. _upgrade-faq/custom-modules: - -Upgrade of the custom modules -============================= - -As stated in our :doc:`/legal/terms/enterprise`, section :ref:`charges_standard`, this optional -service is subject to additional fees. - -Depending on your situation, the custom code could be upgraded by our services, by one of our -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 ` or change of :ref:`hosting type -`. - -.. note:: |assistance-contact| - -.. _upgrade-faq/editions-change: - -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:: - If you need assistance on this matter, please contact us via the `Odoo Support page - `_. - -.. seealso:: - - `Editions `_ - -.. _upgrade-faq/hosting-types-switch: - -Switching the hosting types (On-premise vs. Odoo Online vs. Odoo.sh) -==================================================================== - -An upgrade does not cover a change of `Hosting types `_. - -Open the following link to get :doc:`more information about how to change your hosting type -<../maintain/hosting_changes>`. - -.. 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 ` 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 -======================== - -Open our `Release Note `_ page to get a summary of the new -features and improvements made in each version. - -How long is my test available for -================================= - -An Odoo Online 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 `_. - -- 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)**. - -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. - -Your data is hosted on servers that follow our security guidelines, namely: - -- SSL - All web connections to client instances are protected with 256-bit SSL encryption - (HTTPS with a 2048-bit modulus SSL certificate), and running behind Grade A SSL stacks. All our - certificate chains are using SHA-2 already. -- Safe System - Our servers are running recent Linux distribution with up-to-date security patches, - with firewall and intrusion countermeasures (not disclosed for obvious reasons). - -Servers are located at the same locations as our Cloud providers with the following services: - -- Restricted perimeter, physically accessed by authorized data center employees only -- Physical access control with security badges or biometrical security -- Security cameras monitoring the data center locations 24/7 -- Security personnel on-site 24/7 - -The uploaded and migrated databases uploaded to the Upgrade platform are kept for up to 3 months and -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 `_. - -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 `_ where you can - `request an upgraded test database `_ 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 `_. - -.. note:: - If you are using the Website or Studio app, we recommend you always do a test upgrade before - upgrading your production instance. diff --git a/content/administration/upgrade/odoo-sh-prod.png b/content/administration/upgrade/odoo-sh-prod.png new file mode 100644 index 000000000..1ce8eb1ba Binary files /dev/null and b/content/administration/upgrade/odoo-sh-prod.png differ diff --git a/content/administration/upgrade/odoo-sh-staging.png b/content/administration/upgrade/odoo-sh-staging.png new file mode 100644 index 000000000..4dbe83d87 Binary files /dev/null and b/content/administration/upgrade/odoo-sh-staging.png differ diff --git a/content/administration/upgrade/odoo_online.rst b/content/administration/upgrade/odoo_online.rst deleted file mode 100644 index 383c4175d..000000000 --- a/content/administration/upgrade/odoo_online.rst +++ /dev/null @@ -1,92 +0,0 @@ -=========== -Odoo Online -=========== - -Odoo databases can be manually upgraded directly from the main Odoo website. To upgrade an Odoo -database, navigate to the `database manager `_ page and sign in. - -The database manager page displays all of the Odoo databases associated with the user's account. Any -databases that are not already on the most recent version of Odoo display an **arrow in a circle** -icon next to the database name, indicating that the database can be upgraded. - -.. image:: odoo_online/databases-page.png - :align: center - :alt: The database manager page with an upgrade button next to the name of a database. - -.. important:: - - If the database's version is **lower** than the latest major release: the database must be - upgraded within two months. After these two months, an automatic upgrade is initiated. - - If the database's version is **equal** to or **higher** than the latest major release: - you can disregard the invitation to upgrade, as the database probably would not benefit from - new features every two months. - -If a database is *not* on the latest online version, its administrator should receive an invitation -to upgrade on the database's dashboard, displayed as an **arrow in a circle**. - -.. image:: odoo_online/database-notification.png - :alt: Invitation to upgrade on the database dashboard. - -.. note:: - Versions that are not supported anymore become deprecated and must be updated to avoid - security issues. It is recommended to initiate the upgrade yourself and not wait for the - automatic upgrade, as the former method allows you to request a test upgrade of the database to - check for any discrepancies. - -Test database -============= - -Click on the **arrow in a circle** icon to start the upgrade process. On the :guilabel:`Upgrade your -database` pop-up, select the version of Odoo that the platform will be upgraded to. In the -:guilabel:`Email to notify` field, enter an email address that will receive email notifications -about the database upgrade. - -There is also a :guilabel:`Purpose` section on the pop-up that is used to specify the reason for the -upgrade. However, at this stage of the process, the only selectable option is :guilabel:`Test`, as -Odoo requires users to create a test copy of the upgraded database before converting the actual -database. - -.. image:: odoo_online/upgrade-pop-up.png - :align: center - :alt: The "Upgrade your database" pop-up. - -After filling out the form, click the :guilabel:`Upgrade` button. The pop-up disappears and the -database being upgraded shows a red :guilabel:`Upgrade in progress` tag next to its name. An email -confirming that the upgrade is in progress is also sent to the email address specified on the -pop-up. - -.. image:: odoo_online/upgrade-in-progress.png - :align: center - :alt: The "Upgrade in progress" tag next to the database name. - -Once the upgrade is complete, a new test database appears on the `database manager -`_ page. To access the test database, click the drop-down arrow -(:guilabel:`⯆`) to the left of the main database's name. Doing so makes the test version appear -below it. Finally, click the green :guilabel:`Connect` button on the right side of the test -version's row to go to the database. - -.. image:: odoo_online/test-database.png - :align: center - :alt: A test database on the database manager page. - -Except for being on the newer version of Odoo, the test database is an exact copy of the one being -upgraded. It is important to do extensive testing in this database to ensure that the upgrade has -not altered or corrupted any data, and that all workflows still proceed as expected. - -Production database -=================== - -After confirming the integrity of the new version, return to the `database manager -`_ page. Once again, click on the **arrow in a circle** icon next -to the database being upgraded. The :guilabel:`Upgrade your database` pop-up appears as before, -except that there is now a :guilabel:`Production` option under the :guilabel:`Purpose` section. - -Select the :guilabel:`Production` option and then click :guilabel:`Upgrade` to begin the upgrade -process. As before, a notification email is sent to the email address provided and a red -:guilabel:`Upgrade in progress` tag appears next to the name of the database. - -The production database is then taken offline and will be upgraded automatically. The time it takes -to upgrade the production database should be similar to the time that was necessary to upgrade the -test database. Make sure to inform database users of the scheduled downtime. - -After the upgrade is finished, the :guilabel:`Upgrade in progress` tag disappears and the database -is upgraded to the version specified. diff --git a/content/administration/upgrade/odoo_online/database-notification.png b/content/administration/upgrade/odoo_online/database-notification.png deleted file mode 100644 index ab63c6613..000000000 Binary files a/content/administration/upgrade/odoo_online/database-notification.png and /dev/null differ diff --git a/content/administration/upgrade/odoo_online/databases-page.png b/content/administration/upgrade/odoo_online/databases-page.png deleted file mode 100644 index 590e8c57d..000000000 Binary files a/content/administration/upgrade/odoo_online/databases-page.png and /dev/null differ diff --git a/content/administration/upgrade/odoo_online/test-database.png b/content/administration/upgrade/odoo_online/test-database.png deleted file mode 100644 index a9ce2bf83..000000000 Binary files a/content/administration/upgrade/odoo_online/test-database.png and /dev/null differ diff --git a/content/administration/upgrade/odoo_online/upgrade-in-progress.png b/content/administration/upgrade/odoo_online/upgrade-in-progress.png deleted file mode 100644 index 6835d15e0..000000000 Binary files a/content/administration/upgrade/odoo_online/upgrade-in-progress.png and /dev/null differ diff --git a/content/administration/upgrade/odoo_online/upgrade-pop-up.png b/content/administration/upgrade/odoo_online/upgrade-pop-up.png deleted file mode 100644 index 5ce654422..000000000 Binary files a/content/administration/upgrade/odoo_online/upgrade-pop-up.png and /dev/null differ diff --git a/content/administration/upgrade/odoo_sh.rst b/content/administration/upgrade/odoo_sh.rst deleted file mode 100644 index b1d63c3dd..000000000 --- a/content/administration/upgrade/odoo_sh.rst +++ /dev/null @@ -1,132 +0,0 @@ -======= -Odoo.sh -======= - -.. _upgrade/odoo_sh/overview: - -Overview -======== - -Odoo.sh is integrated with the upgrade platform to make the upgrade process easier. - -.. note:: - The :guilabel:`Upgrade` tab is available in the branches view. It is only available for valid - projects with a valid production build. - -.. image:: odoo_sh/odoo-sh-menu.png - :align: center - :alt: Click on the upgrade menu - -The suggested upgrade steps on Odoo.sh are: - -#. On a :guilabel:`Development` branch, upgrade your custom modules to keep them compatible with the - new version and thoroughly **test them**. -#. Switch that branch to the :guilabel:`Staging` branch, **upgrade** the last daily production - backup and **test it**. Write upgrade scripts if necessary. -#. Trigger the production upgrade from your :guilabel:`Production` branch and sit tight. - -.. seealso:: - - :doc:`../../administration/upgrade` - - :doc:`Upgrade FAQ <../upgrade/faq>` - - :doc:`Introduction to Odoo.sh <../odoo_sh/overview/introduction>` - -.. _upgrade/odoo_sh/custom-modules: - -Upgrade your custom modules -=========================== - -The first step is to upgrade your custom modules to keep them compatible with the new version. Fork -your :guilabel:`Production` branch in the :guilabel:`Development` stage, then go to the settings of -your :guilabel:`Development` branch and select the Odoo version you target. If needed, modify your -code to be compatible with the new version. Make sure to **test** your features are still working -correctly. - -.. note:: - Depending on your contract, the upgrade of your custom modules can be done by yourself, by your - Partner or by Odoo (if you hold a subscription including maintenance of customizations). - -.. _upgrade/odoo_sh/testing-phase: - -Upgrade your database on a staging branch -========================================= - -Take the upgraded development branch and drag & drop it to :guilabel:`Staging`. - -Go to the :guilabel:`Upgrade` tab and select the :guilabel:`target version`. Then, click on -:guilabel:`Test Upgrade`. - -.. image:: odoo_sh/odoo-sh-staging.png - :align: center - :alt: Odoo.sh project and tabs - -The **latest production daily automatic backup** is sent to the -`upgrade platform `_ to start the upgrade test process. - -.. note:: - You can follow the upgrade process by going to the :guilabel:`Upgrade` menu of your - :guilabel:`Production` branch. - -When the upgraded backup is ready on the `upgrade platform `_, it is -automatically downloaded back to your project. - -The branch is now in a **special mode**: each time a **commit is pushed** on the branch, a -**restore operation** of the upgraded backup occurs, and an **update of all the custom modules** -happens. This allows you to quickly iterate on your custom modules upgrade scripts. The log file of -the upgrade process can be found at :file:`~/logs/upgrade.log` in your newly upgraded staging build. - -.. note:: - - The **special upgrade mode** is automatically closed after 30 days. - - It may happen that custom modules are no longer needed after an upgrade. Custom modules in the - upgraded database are set to be updated. If the modules are missing in the code, the update - fails, thus failing the whole process. An empty module with a manifest and possibly some custom - upgrade script are necessary to clean up the database. The complete removal of the module has - to be handled afterwards. - -Functionally test your upgraded database -======================================== - -Now that the test upgraded database is available on your staging branch, **thoroughly test it** and -make sure everything runs as it's supposed to. Once you are satisfied with the result, you are ready -to upgrade your production database. - -Production upgrade -================== - -Once you are happy with your testing, you can start the process on the :guilabel:`Production` -branch. - -On your :guilabel:`Production` branch, go to the :guilabel:`Upgrade` tab, select the -:guilabel:`targeted version` and click on the :guilabel:`start Upgrade` button. - -.. image:: odoo_sh/odoo-sh-prod.png - :align: center - :alt: View from the upgrade tab - -The actual process is **triggered as soon as you push a new commit** in your branch. Make sure you -are pushing code that is compatible with the new version. For example by merging the code from your -upgraded staging branch. - -.. note:: - You can see the progress of the upgrade by going to the :guilabel:`Upgrade` tab of the main - branch. - -.. image:: odoo_sh/odoo-sh-progress.png - :align: center - :alt: View showing the progress of the upgrade - -.. important:: - Your database is unavailable throughout the process. - -.. note:: - If anything goes wrong, the platform automatically reverts the upgrade, the same as it would be - for a regular update. In case of success, a backup is always made. - -The update of your custom modules must be successful to complete the entire upgrade process. Make -sure the status of your staging upgrade is :guilabel:`successful` before trying it in production. - -.. note:: - It may happen that custom modules are no longer needed after an upgrade. Custom modules in the - upgraded database are set to be updated. If the modules are missing in the code, the update - fails, thus failing the whole process. An empty module with a manifest and possibly some custom - upgrade script are necessary to clean up the database. The complete removal of the module has to - be handled afterwards. diff --git a/content/administration/upgrade/odoo_sh/odoo-sh-menu.png b/content/administration/upgrade/odoo_sh/odoo-sh-menu.png deleted file mode 100644 index 85d5a1c40..000000000 Binary files a/content/administration/upgrade/odoo_sh/odoo-sh-menu.png and /dev/null differ diff --git a/content/administration/upgrade/odoo_sh/odoo-sh-prod.png b/content/administration/upgrade/odoo_sh/odoo-sh-prod.png deleted file mode 100644 index b7379fb5a..000000000 Binary files a/content/administration/upgrade/odoo_sh/odoo-sh-prod.png and /dev/null differ diff --git a/content/administration/upgrade/odoo_sh/odoo-sh-progress.png b/content/administration/upgrade/odoo_sh/odoo-sh-progress.png deleted file mode 100644 index 97bcc65b2..000000000 Binary files a/content/administration/upgrade/odoo_sh/odoo-sh-progress.png and /dev/null differ diff --git a/content/administration/upgrade/odoo_sh/odoo-sh-staging.png b/content/administration/upgrade/odoo_sh/odoo-sh-staging.png deleted file mode 100644 index d84c8b470..000000000 Binary files a/content/administration/upgrade/odoo_sh/odoo-sh-staging.png and /dev/null differ diff --git a/content/administration/upgrade/on_premise.rst b/content/administration/upgrade/on_premise.rst deleted file mode 100644 index 65d1487a2..000000000 --- a/content/administration/upgrade/on_premise.rst +++ /dev/null @@ -1,76 +0,0 @@ -========== -On-Premise -========== - -Test upgrade request -==================== - -There are two ways to create your upgrade request. - -Upgrade request via command line --------------------------------- - -For technically-advanced users and partners, the upgrade process can be initiated via the following -command line on the server where the database is hosted: - -:command:`python <(curl -s https://upgrade.odoo.com/upgrade) test -d -t -` - -The above command creates the database dump, sends it to the upgrade platform, and initiates the -automated upgrade process. During the upgrade, you can follow the live logs on your screen. -Once the upgrade process is completed successfully, the upgraded database is restored onto the -server (as a duplicate test database). - -Upgrade request via the Odoo Upgrade Portal -------------------------------------------- - -#. Download a recent copy of your database and select the option :guilabel:`pg_dump custom format - (without filestore)`. -#. Upload this dump file at https://upgrade.odoo.com and select *Testing* as the aim. - Odoo performs the automated upgrade process. Once it is completed, you receive an email with a - link to download the upgrade database dump file. -#. Import the upgraded database into your on-premise environment and manually test all processes and - workflows. - -.. note:: - - For security reasons, only the person who submitted the upgrade request is able to download it. - - Any problem found during testing should be reported via the `helpdesk - `_. - - For storage reasons, the copy of your database is submitted without a filestore to the upgrade - server. Therefore, the upgraded database does not contain the production filestore. - - Before restoring the upgraded database, its filestore must be merged with the production - filestore to be able to perform tests in the same conditions as it would be in the new version. - - The upgraded database contains: - - - A `dump.sql` file containing the upgraded database. - - A `filestore` folder containing files that were extracted from in-database records into - attachments (if there are any) and new standard Odoo files from the targeted Odoo version - (like new images, icons, payment provider's logos, etc.). This is the folder that should be - merged with the production filestore in order to get the full upgraded filestore. - -Upgrade your production database -================================ - -Once you have completed the testing successfully, you can proceed to upgrade your live database in -production. Download your upgraded database from the link in the email and import it onto your live -environment. - -.. important:: - - Same as in the test phase, when requesting an upgrade for production purposes, the copy of your - database is submitted without a filestore. - - Therefore, the upgraded database filestore must be merged with the production filestore before - deploying the new version. - -Custom modules (if applicable) -============================== - -The upgrade of a database that contains custom modules is a two-step process. - -#. The standard upgrade is done when your upgrade request is completed. -#. Your custom modules also need to be upgraded to keep them compatible with the new version. - -Depending on your contract, the upgrade of your custom modules can be done - -#. by yourself. -#. by your Partner. -#. by Odoo (if you hold a subscription to 'Maintenance of Customizations'). diff --git a/content/administration/upgrade/rr-upgrade-message.png b/content/administration/upgrade/rr-upgrade-message.png new file mode 100644 index 000000000..7ac2facc4 Binary files /dev/null and b/content/administration/upgrade/rr-upgrade-message.png differ diff --git a/content/administration/upgrade/test-assistance.png b/content/administration/upgrade/test-assistance.png deleted file mode 100644 index 2fac7cf86..000000000 Binary files a/content/administration/upgrade/test-assistance.png and /dev/null differ diff --git a/content/administration/upgrade/test-purpose.png b/content/administration/upgrade/test-purpose.png deleted file mode 100644 index 4a8f9fd46..000000000 Binary files a/content/administration/upgrade/test-purpose.png and /dev/null differ diff --git a/content/administration/upgrade/upgrade-popup.png b/content/administration/upgrade/upgrade-popup.png new file mode 100644 index 000000000..8be275bef Binary files /dev/null and b/content/administration/upgrade/upgrade-popup.png differ diff --git a/redirects/14.0.txt b/redirects/14.0.txt index b1e3e04f7..1baf537be 100644 --- a/redirects/14.0.txt +++ b/redirects/14.0.txt @@ -8,7 +8,11 @@ administration/maintain/online.rst administration/maintain/odoo_online.rst # administration/upgrade -administration/upgrade/online_hosting.rst administration/upgrade/odoo_online.rst +administration/upgrade/online_hosting.rst administration/upgrade.rst +administration/upgrade/faq.rst administration/upgrade.rst +administration/upgrade/odoo_online.rst administration/upgrade.rst +administration/upgrade/odoo_sh.rst administration/upgrade.rst +administration/upgrade/on_premise.rst administration/upgrade.rst # applications/accounting