Aller au contenu principal

Déploiements

Les déploiements hébergent votre serveur Odoo avec les dernières modifications de code de votre dépôt. Apprenez à créer, mettre à jour et gérer les déploiements sur Skysize.

Qu'est-ce qu'un déploiement ?

Un déploiement est une instance en cours d'exécution de votre application Odoo. Chaque déploiement :

  • Exécute votre dernier code à partir d'une branche spécifique
  • Possède sa propre base de données
  • Fonctionne dans un environnement isolé
  • Peut être configuré et géré indépendamment

Actions de déploiement

Lorsque vous poussez des modifications vers votre dépôt, Skysize peut effectuer l'une des trois actions suivantes :

Créer nouveau

Crée un déploiement complètement nouveau avec sa propre base de données.

Quand utiliser :

  • Premier déploiement d'une nouvelle branche
  • Démarrage d'un nouvel environnement à partir de zéro
  • Création d'une instance fraîche pour les tests

Ce qui se passe :

  • Une nouvelle base de données est créée
  • L'application est déployée avec le dernier code
  • Seul le module base est installé (pas d'installation automatique de modules personnalisés)
  • L'environnement est configuré
  • Une nouvelle URL est attribuée

Note : Les nouveaux déploiements nécessitent que vous installiez manuellement les modules personnalisés dont vous avez besoin. Cela vous donne un contrôle total sur les modules actifs dans votre nouvel environnement.

Mettre à jour

Met à jour le déploiement existant avec vos nouvelles modifications de code.

Quand utiliser :

  • Déploiement de modifications de code vers un environnement existant
  • Application de corrections de bugs
  • Déploiement de nouvelles fonctionnalités
  • Mise à jour des dépendances

Ce qui se passe :

  • La base de données existante est préservée
  • Le code est mis à jour vers la dernière version
  • Tous les modules Odoo actuellement installés sont mis à jour automatiquement
  • L'application redémarre avec le nouveau code

Note : Les déploiements de mise à jour ne mettent à jour que les modules déjà installés dans votre base de données. Les nouveaux modules ajoutés à votre code ne seront PAS installés automatiquement—vous devez les installer manuellement via l'interface Odoo ou la base de données.

Aucune action

Aucun déploiement n'a lieu—Skysize ne crée ni ne met à jour quoi que ce soit.

Quand utiliser :

  • Modifications qui ne nécessitent pas de déploiement
  • Mises à jour de documentation
  • Modifications de configuration uniquement
  • Lorsque vous voulez contrôler manuellement les déploiements

Gestion des déploiements par type de branche

Production et Staging

  • Ne sont jamais supprimés automatiquement
  • Les déploiements restent en cours d'exécution en continu
  • Les mises à jour sont appliquées au déploiement existant

Développement

  • Automatiquement nettoyés après 24 heures
  • Rentable pour les tests temporaires
  • Redéployez si vous avez à nouveau besoin de l'environnement
  • Aide à gérer l'utilisation des ressources

Cycle de vie du déploiement

1. Déclenchement

Les déploiements peuvent être déclenchés par :

  • Pousser du code vers votre dépôt
  • Déploiement manuel via le tableau de bord Skysize
  • Création ou mises à jour de branche

2. Construction

Skysize construit votre application :

  • Tire le dernier code du dépôt
  • Initialise et met à jour automatiquement les sous-modules Git (si présents)
  • Installe les dépendances
  • Prépare l'environnement Odoo
  • Configure les workers et les ressources

3. Déploiement

Votre application est mise en ligne :

  • La base de données est créée ou mise à jour
  • Le serveur Odoo démarre
  • Les vérifications de santé confirment le déploiement réussi
  • L'URL devient accessible

4. Surveillance

Suivez la santé de votre déploiement :

  • Affichez le statut du déploiement dans le tableau de bord
  • Surveillez les journaux de l'application
  • Vérifiez l'utilisation des ressources
  • Recevez des notifications en cas de problèmes

Consultation des journaux

Pour consulter les logs de déploiement :

  1. Accédez à votre déploiement dans le tableau de bord Skysize
  2. Cliquez sur le lien "Détails" du déploiement spécifique
  3. Accédez au visualiseur de logs pour voir les sorties et erreurs de l'application

Rétention des logs : Les logs sont conservés pendant 31 jours. Après cette période, les anciens logs sont automatiquement supprimés.

Gestion des déploiements

Création d'un nouveau déploiement

  1. Poussez le code vers une nouvelle branche dans votre dépôt
  2. Skysize détecte la nouvelle branche
  3. Choisissez l'action de déploiement "Créer nouveau"
  4. Attendez que la construction et le déploiement soient terminés
  5. Accédez à votre application à l'URL attribuée

Mise à jour d'un déploiement existant

  1. Poussez les modifications vers une branche existante
  2. Skysize détecte les modifications
  3. Choisissez l'action de déploiement "Mettre à jour"
  4. Le déploiement existant se met à jour avec le nouveau code
  5. L'application redémarre avec les modifications

Reconstruire un déploiement

Reconstruire crée un déploiement complètement nouveau pour une branche, remplaçant le précédent.

Ce qui se passe :

  • Un nouveau déploiement est toujours créé avec une base de données fraîche
  • Pour les branches de staging : Crée un nouveau snapshot de la base de données de production
  • Pour les branches de développement : Crée une nouvelle base de données avec des données de démonstration
  • Les builds précédents de cette branche deviennent éligibles au nettoyage automatique
  • L'ancien déploiement est marqué pour le nettoyage et ses ressources seront libérées

Quand utiliser :

  • Lorsque vous avez besoin d'un nouveau snapshot de base de données de production (staging)
  • Lorsque vous voulez recommencer avec des données de démonstration propres (développement)
  • Après des changements importants du schéma de base de données
  • Lors du dépannage de problèmes persistants de base de données
  • Pour forcer une actualisation complète de votre environnement

Notes importantes :

  • Les reconstructions de production sont restreintes : Pour les déploiements de production en cours d'exécution, l'action de reconstruction est désactivée pour éviter la perte accidentelle de données
  • Les déploiements de production ne peuvent être reconstruits que s'ils ne sont pas actuellement en cours d'exécution
  • La reconstruction est une opération destructive—la base de données du déploiement précédent sera perdue
  • Toute donnée ou modification non commitée dans l'ancien déploiement sera définitivement supprimée

Comment reconstruire :

  1. Accédez à votre déploiement dans le tableau de bord Skysize
  2. Cliquez sur le menu "Gérer le déploiement"
  3. Sélectionnez l'option "Retry Deployment" ou "Rebuild"
  4. Attendez que le nouveau déploiement soit terminé
  5. L'ancien déploiement sera automatiquement nettoyé

Suppression d'un déploiement

Les admins peuvent supprimer les déploiements qui ne sont plus nécessaires :

  • Supprime définitivement l'instance de déploiement
  • Toutes les données de déploiement sont supprimées
  • Les ressources sont libérées
  • L'URL devient inactive

Notes importantes :

  • Confirmation requise : Une fenêtre de confirmation apparaîtra avant la suppression
  • Avertissement de production : Pour les déploiements de production, vous verrez un avertissement bien visible indiquant que cette action ne peut pas être annulée
  • Action irréversible : Les déploiements supprimés et leurs bases de données ne peuvent pas être récupérés
  • Admins uniquement : Seuls les utilisateurs ayant un accès admin peuvent supprimer des déploiements

Comment supprimer :

  1. Accédez à votre déploiement dans le tableau de bord Skysize
  2. Cliquez sur le menu "Gérer le déploiement" (trois points)
  3. Sélectionnez "Delete Deployment"
  4. Examinez la boîte de dialogue de confirmation (les déploiements de production affichent des avertissements supplémentaires)
  5. Confirmez la suppression pour retirer définitivement le déploiement

Bonnes pratiques

Pour la production

  • Testez avant de déployer : Testez toujours les modifications en staging d'abord
  • Déployez pendant le faible trafic : Planifiez les mises à jour de production pendant les heures creuses
  • Surveillez après le déploiement : Surveillez les erreurs ou problèmes après les mises à jour
  • Ayez un plan de retour en arrière : Sachez comment revenir en arrière si quelque chose ne va pas
  • Évitez de reconstruire la production en cours d'exécution : La reconstruction est désactivée pour les déploiements de production en cours d'exécution afin d'éviter la perte de données
  • Soyez prudent avec la suppression : Les suppressions de production affichent des avertissements supplémentaires—cette action est permanente et ne peut pas être annulée

Pour le staging

  • Maintenez le staging à jour : Mettez régulièrement à jour le staging pour qu'il corresponde à la production
  • Utilisez des instantanés de données de production : Testez avec des données réalistes en reconstruisant le staging pour obtenir de nouveaux snapshots de base de données de production
  • Reconstruisez régulièrement : Reconstruisez périodiquement les déploiements de staging pour vous assurer que vous testez avec les données de production actuelles
  • Testez minutieusement : Exécutez des suites de tests complètes avant de promouvoir en production

Pour le développement

  • Nettoyez régulièrement : Supprimez les branches de développement inutilisées
  • Utilisez des branches de courte durée : Profitez du nettoyage automatique après 24 heures
  • Testez tôt, testez souvent : Déployez fréquemment pour détecter les problèmes tôt
  • Reconstruisez pour un nouveau départ : Utilisez la reconstruction pour obtenir une base de données propre avec des données de démonstration lors de tests à partir de zéro

Dépannage

Échec du déploiement

Si un déploiement échoue :

  1. Vérifiez les journaux de déploiement dans le tableau de bord Skysize
  2. Vérifiez que votre code compile avec succès localement
  3. Assurez-vous que toutes les dépendances sont spécifiées correctement
  4. Vérifiez les erreurs de module Odoo
  5. Contactez le support si les problèmes persistent

Application non accessible

Si vous ne pouvez pas accéder à votre application déployée :

  1. Vérifiez que le statut de déploiement est "En cours d'exécution"
  2. Vérifiez que l'URL est correcte
  3. Assurez-vous que le DNS s'est propagé (pour les domaines personnalisés)
  4. Vérifiez les paramètres du pare-feu
  5. Examinez les journaux d'application pour les erreurs

Support des sous-modules Git

Skysize prend automatiquement en charge les sous-modules Git publics dans votre dépôt. Cela vous permet de :

  • Inclure des modules Odoo tiers en tant que sous-modules
  • Référencer des bibliothèques et dépendances externes
  • Garder votre code modulaire et organisé

Comment ça fonctionne

Lorsque vous déployez votre code :

  1. Skysize clone votre dépôt avec le flag --recurse-submodules
  2. Tous les sous-modules Git publics sont automatiquement initialisés et mis à jour
  3. Le code des sous-modules est disponible dans votre déploiement aux côtés de votre code principal

Exigences

  • Dépôts publics uniquement : Les sous-modules doivent être accessibles publiquement
  • Sous-modules Git standard : Utilisez le fichier .gitmodules à la racine de votre dépôt
  • Aucune authentification requise : Les sous-modules privés ne sont actuellement pas pris en charge

Exemple d'utilisation

Ajouter un module Odoo externe en tant que sous-module :

git submodule add https://github.com/OCA/web.git addons/web
git commit -m "Ajouter le module web en tant que sous-module"
git push

Au prochain déploiement, Skysize récupérera automatiquement le code du sous-module.

Configuration du déploiement

Chemin des addons personnalisés

Chaque branche peut être configurée avec des chemins d'addons personnalisés pour organiser vos modules Odoo.

Ce que cela fait :

  • Spécifie des répertoires supplémentaires où Odoo cherchera des modules
  • Permet la séparation des modules enterprise, community et personnalisés
  • Rend les modules disponibles pour l'installation dans votre instance Odoo

Comment configurer :

  • Spécifiez un ou plusieurs répertoires, séparés par des virgules
  • Les chemins sont relatifs à la racine de votre dépôt
  • Modèle courant : /enterprise-addons,/custom-addons,/extra-addons

Notes importantes :

  • Les chemins d'addons personnalisés rendent les modules disponibles mais ne les installent pas automatiquement
  • Vous devez installer manuellement les modules via l'interface Applications d'Odoo
  • Tous les modules dans les chemins spécifiés apparaîtront dans la liste des Applications
  • Les déploiements de mise à jour ne mettront à jour que les modules déjà installés

Exemples d'utilisation :

  • Séparer les modules OCA des modules personnalisés
  • Organiser les modules par fonctionnalité ou équipe
  • Inclure des modules de sous-modules Git dans différents répertoires

Configuration des workers

Les admins peuvent configurer le nombre de workers Odoo :

  • Plus de workers : Meilleures performances pour une forte concurrence
  • Moins de workers : Utilisation des ressources et coûts réduits
  • Ajustez en fonction de vos modèles de trafic

Allocation des ressources

Les ressources sont allouées en fonction de :

  • Type de branche (production, staging, développement)
  • Nombre de workers configurés
  • Votre plan de facturation
  • Niveau de remise sur engagement