Odoo.sh

Vue d’ensemble

Odoo.sh est intégré à la plateforme de mise à niveau pour faciliter le processus de mise à niveau.

Note

L’onglet Mise à niveau est disponible dans la vue des branches. Il n’est disponible que pour les projets valides avec une version de production valide.

Click on the upgrade menu

Les étapes de mise à niveau suggérées dans Odoo.sh sont les suivantes :

  1. Sur une branche de Development, mettez à jour vos modules personnalisés pour les rendre compatibles avec la nouvelle version et testez de manière approfondie.

  2. Switch that branch to the Staging branch, upgrade the last daily production backup and test it. Write upgrade scripts if necessary.

  3. Trigger the production upgrade from your Production branch and sit tight.

Mise à niveau de vos modules personnalisés

La première étape consiste à mettre à niveau vos modules personnalisés pour qu’ils restent compatibles avec la nouvelle version. Forkez votre branche de Production au stade Development, puis allez dans les paramètres de votre branche de Development et sélectionnez la version de Odoo que vous visez. Si nécessaire, modifiez votre code pour être compatible avec la nouvelle version. Assurez-vous de tester que vos fonctionnalités fonctionnent toujours correctement.

Note

En fonction de votre contrat, la mise à niveau de vos modules personnalisés peut être effectuée par vous-même, par votre partenaire ou par Odoo (si vous êtes titulaire d’un abonnement incluant la maintenance des personnalisations).

Mettez à niveau votre base de données sur une branche de staging

Prenez la branche de développement mise à niveau et faites-la glisser vers Staging.

Allez dans l’onglet Mise à niveau et sélectionnez la version cible. Ensuite, cliquez sur Tester la mise à niveau.

Odoo.sh project and tabs

The latest production daily automatic backup is sent to the upgrade platform to start the upgrade test process.

Note

Vous pouvez suivre le processus de mise à niveau en allant dans le menu Mise à niveau de votre branche de Production.

Lorsque le back up mis à niveau est prêt sur la plateforme de mise à niveau, elle est automatiquement téléchargée de nouveau dans votre projet.

La branche est maintenant dans un mode spécial : chaque fois qu’un commit est poussé sur la branche, une opération de restauration de la sauvegarde mise à niveau se produit, et une mise à niveau de tous les modules personnalisés se produit. Cela vous permet d’itérer rapidement sur vos scripts de mise à niveau des modules personnalisés. Le fichier de log du processus de mise à niveau peut être trouvé dans ~/logs/upgrade.log dans votre build de mise à jour.

Note

  • Le mode spécial de mise à niveau est automatiquement fermé après 30 jours.

  • Il peut arriver que les modules personnalisés ne soient plus nécessaires après une mise à niveau. Les modules personnalisés de la base de données mise à niveau sont définis pour être mis à niveau. Si les modules sont manquants dans le code, la mise à niveau échoue, ce qui fait échouer l’ensemble du processus. Un module vide avec un manifeste et éventuellement un script de mise à niveau personnalisé sont nécessaires pour nettoyer la base de données. La suppression complète du module doit être gérée par la suite.

Test fonctionnel de votre base de données mise à niveau

Maintenant que la base de données de test mise à niveau est disponible sur votre branche de staging, testez-la minutieusement et assurez-vous que tout fonctionne comme prévu. Une fois que vous êtes satisfait du résultat, vous êtes prêt à mettre à niveau votre base de données de production.

Mise à niveau en production

Une fois que vous êtes satisfait de vos tests, vous pouvez commencer le processus sur la branche de Production.

Sur votre branche de Production, allez dans l’onglet Mise à niveau, sélectionnez la version ciblée et cliquez sur le bouton démarrer la mise à niveau.

View from the upgrade tab

Le processus actuel est déclenché dès que vous poussez un nouveau commit dans votre branche. Assurez-vous de pousser du code qui est compatible avec la nouvelle version. Par exemple en fusionnant le code de votre branche de staging mise à niveau.

Note

Vous pouvez voir la progression de la mise à niveau en allant dans l’onglet Mise à niveau de la branche principale.

View showing the progress of the upgrade

Important

Votre base de données est indisponible pendant toute la durée du processus.

Note

En cas de problème, la plate-forme annule automatiquement la mise à niveau, comme dans le cas d’une mise à jour ordinaire. En cas de succès, une sauvegarde est toujours effectuée.

La mise à jour de vos modules personnalisés doit être réussie pour que le processus de mise à niveau soit complet. Assurez-vous que le statut de votre mise à jour est réussie avant de l’essayer en production.

Note

Il peut arriver que les modules personnalisés ne soient plus nécessaires après une mise à niveau. Les modules personnalisés de la base de données mise à niveau sont définis pour être mis à niveau. Si les modules sont manquants dans le code, la mise à niveau échoue, ce qui fait échouer l’ensemble du processus. Un module vide avec un manifeste et éventuellement un script de mise à niveau personnalisé sont nécessaires pour nettoyer la base de données. La suppression complète du module doit être gérée par la suite.