
Consignes générales
Assurez-vous toujours de sauvegarder votre base de données avant de commencer le processus de mise à niveau en exécutantdocker exec -it <db_container_name_or_id> pg_dumpall -U <postgres_user> > databases_backup.sql.
Pour restaurer la sauvegarde, exécutez cat databases_backup.sql | docker exec -i <db_container_name_or_id> psql -U <postgres_user>.
Si vous avez utilisé Docker Compose, suivez ces étapes :
-
Dans un terminal, sur l’hôte où Twenty est en cours d’exécution, éteignez Twenty:
docker compose down -
Mettez à niveau la version en changeant la valeur
TAGdans le fichier .env près de votre docker-compose. (Nous recommandons de consommer la versionmajor.minortelle quev0.53) -
Remettez Twenty en ligne avec
docker compose up -d
Étapes de mise à niveau spécifiques à la version
v1.0
Bonjour Twenty v1.0 ! 🎉v0.60
Améliorations des performances
Toutes les interactions avec l’API des métadonnées ont été optimisées pour de meilleures performances, en particulier pour la manipulation des métadonnées d’objets et les opérations de création d’espaces de travail. Nous avons remanié notre stratégie de mise en cache pour privilégier les accès cache plutôt que les requêtes de base de données lorsque c’est possible, améliorant ainsi significativement les performances des opérations de l’API des métadonnées. Si vous rencontrez des problèmes d’exécution après la mise à niveau, vous devrez peut-être vider votre cache pour vous assurer qu’il est synchronisé avec les dernières modifications. Exécutez cette commande dans votre conteneur twenty-server :v0.55
Mettez à niveau votre instance Twenty pour utiliser l’image v0.55 Vous n’avez plus besoin de lancer de commande, la nouvelle image se chargera automatiquement de l’exécution de toutes les migrations requises.Erreur L'utilisateur n'a pas d'autorisation
Si vous rencontrez des erreurs d’autorisation sur la plupart des requêtes après la mise à niveau, vous devrez peut-être vider votre cache pour recalculer les dernières autorisations.
Dans votre conteneur twenty-server, exécutez :
v0.54
Depuis la version0.53, aucune action manuelle n’est nécessaire.
Abandon du schéma de métadonnées
Nous avons fusionné le schémametadata dans celui de core pour simplifier la récupération de données de TypeORM.
Nous avons intégré l’étape de commande migrate dans la commande upgrade. Nous ne recommandons pas l’exécution manuelle de migrate dans l’un de vos conteneurs serveur/travailleur.
Depuis la v0.53
À partir de0.53, la mise à niveau est effectuée de manière programmatique au sein du DockerFile, cela signifie que vous ne devez plus exécuter de commande manuellement.
Assurez-vous de continuer à mettre à jour votre instance de manière séquentielle, sans sauter de version majeure (par exemple, de 0.43.3 à 0.44.0 est autorisé, mais de 0.43.1 à 0.45.0 ne l’est pas), sinon cela pourrait entraîner une désynchronisation de la version de l’espace de travail pouvant entraîner une erreur d’exécution et des fonctionnalités manquantes.
Pour vérifier si un espace de travail a été correctement migré, vous pouvez consulter sa version dans la base de données dans la table core.workspace.
Il doit toujours être dans la plage de la version major.minor de votre instance Twenty actuelle, vous pouvez consulter la version de votre instance dans le panneau d’administration (à l’adresse /settings/admin-panel, accessible si votre utilisateur a la propriété canAccessFullAdminPanel définie comme vraie dans la base de données) ou en exécutant echo $APP_VERSION dans votre conteneur twenty-server.
Pour corriger une version d’espace de travail désynchronisée, vous devrez effectuer une mise à niveau à partir de la version correspondante de Twenty en suivant le guide de mise à niveau correspondant séquentiellement, et ainsi de suite jusqu’à atteindre la version souhaitée.
Suppression de auditLog
Nous avons supprimé l’objet standard auditLog, ce qui signifie que la taille de votre sauvegarde pourrait être considérablement réduite après cette migration.
v0.51 à v0.52
Mettez à jour votre instance Twenty pour utiliser l’image v0.52J’ai un espace de travail bloqué dans la version entre 0.52.0 et 0.52.6
Malheureusement, 0.52.0 et 0.52.6 ont été entièrement supprimés de dockerHub.
Vous devrez mettre à jour manuellement la version de votre espace de travail à 0.51.0 dans la base de données et mettre à niveau en utilisant la version twenty 0.52.11 en suivant son guide de mise à niveau juste au-dessus.
v0.50 à v0.51
Mettez à jour votre instance Twenty pour utiliser l’image v0.51v0.44.0 à v0.50.0
Mettez à jour votre instance Twenty pour utiliser l’image v0.50.0Mutation docker-compose.yml
Cette version inclut une mutationdocker-compose.yml pour donner au service worker accès au volume server-local-data.
Veuillez mettre à jour votre docker-compose.yml local avec docker-compose.yml v0.50.0
v0.43.0 à v0.44.0
Mettez à jour votre instance Twenty pour utiliser l’image v0.44.0v0.42.0 à v0.43.0
Mettez à jour votre instance Twenty pour utiliser l’image v0.43.0docker-compose.yml.
(Option 1) Migration de base de données
Conserver l’image postgres-spilo existante est correct, mais vous devrez geler la version dans votre docker-compose.yml à 0.43.0.(Option 2) Migration de base de données
Si vous souhaitez migrer votre base de données vers la nouvelle image postgres:16, suivez ces étapes :- Exportez votre base de données depuis l’ancien conteneur postgres-spilo
- Mettez à jour votre docker-compose.yml pour utiliser l’image postgres:16 comme dans le fichier docker-compose.yml.
- Restaurez la base de données vers le nouveau conteneur postgres:16
v0.41.0 à v0.42.0
Mettez à jour votre instance Twenty pour utiliser l’image v0.42.0- Supprimé :
FRONT_PORT,FRONT_PROTOCOL,FRONT_DOMAIN,PORT - Ajouté :
FRONTEND_URL,NODE_PORT,MAX_NUMBER_OF_WORKSPACES_DELETED_PER_EXECUTION,MESSAGING_PROVIDER_MICROSOFT_ENABLED,CALENDAR_PROVIDER_MICROSOFT_ENABLED,IS_MICROSOFT_SYNC_ENABLED
v0.40.0 à v0.41.0
Mettez à jour votre instance Twenty pour utiliser l’image v0.41.0- Supprimé :
AUTH_MICROSOFT_TENANT_ID
v0.35.0 à v0.40.0
Mettez à jour votre instance Twenty pour utiliser l’image v0.40.0- Ajouté :
IS_EMAIL_VERIFICATION_REQUIRED,EMAIL_VERIFICATION_TOKEN_EXPIRES_IN,WORKFLOW_EXEC_THROTTLE_LIMIT,WORKFLOW_EXEC_THROTTLE_TTL
v0.34.0 à v0.35.0
Mettez à jour votre instance Twenty pour utiliser l’image v0.35.0yarn database:migrate:prod appliquera les migrations à la structure de la base de données (schémas core et metadata)
La commande yarn command:prod upgrade-0.35 s’occupe de la migration des données de tous les espaces de travail.
Variables d’environnement
- Nous avons remplacé
ENABLE_DB_MIGRATIONSparDISABLE_DB_MIGRATIONS(la valeur par défaut est désormaisfalse, vous n’avez probablement rien à paramétrer)
v0.33.0 à v0.34.0
Mettez à jour votre instance Twenty pour utiliser l’image v0.34.0yarn database:migrate:prod appliquera les migrations à la structure de la base de données (schémas core et metadata)
La commande yarn command:prod upgrade-0.34 s’occupe de la migration des données de tous les espaces de travail.
Variables d’environnement
- Supprimé :
FRONT_BASE_URL - Ajouté :
FRONT_DOMAIN,FRONT_PROTOCOL,FRONT_PORT
FRONT_DOMAIN, FRONT_PROTOCOL et FRONT_PORT.
Si FRONT_DOMAIN n’est pas défini, l’URL frontend reviendra à SERVER_URL.
v0.32.0 à v0.33.0
Mettez à jour votre instance Twenty pour utiliser l’image v0.33.0yarn command:prod cache:flush videra le cache Redis.
La commande yarn database:migrate:prod appliquera les migrations à la structure de la base de données (schémas core et metadata)
La commande yarn command:prod upgrade-0.33 s’occupe de la migration des données de tous les espaces de travail.
À partir de cette version, l’image twenty-postgres pour la DB est devenue obsolète et twenty-postgres-spilo est utilisé à la place.
Si vous souhaitez continuer à utiliser l’image twenty-postgres, remplacez simplement twentycrm/twenty-postgres:${TAG} par twentycrm/twenty-postgres dans docker-compose.yml.
v0.31.0 à v0.32.0
Mettez à jour votre instance Twenty pour utiliser l’image v0.32.0 Migration de schéma et de donnéesyarn database:migrate:prod appliquera les migrations à la structure de la base de données (schémas core et metadata)
La commande yarn command:prod upgrade-0.32 s’occupe de la migration des données de tous les espaces de travail.
Variables d’environnement
Nous avons mis à jour notre méthode de gestion de la connexion Redis.
- Supprimé :
REDIS_HOST,REDIS_PORT,REDIS_USERNAME,REDIS_PASSWORD - Ajouté :
REDIS_URL
.env pour utiliser la nouvelle variable REDIS_URL au lieu des paramètres de connexion Redis individuels.
Nous avons également simplifié notre méthode de gestion des tokens JWT.
- Supprimé :
ACCESS_TOKEN_SECRET,LOGIN_TOKEN_SECRET,REFRESH_TOKEN_SECRET,FILE_TOKEN_SECRET - Ajouté :
APP_SECRET
.env pour utiliser la nouvelle variable APP_SECRET à la place des secrets de tokens individuels (vous pouvez utiliser le même secret qu’avant ou générer une nouvelle chaîne aléatoire).
Compte connecté
Si vous utilisez un compte connecté pour synchroniser vos emails et calendriers Google, vous devrez activer l’API des personnes sur votre console d’administration Google.
v0.30.0 à v0.31.0
Mettez à jour votre instance Twenty pour utiliser l’image v0.31.0 Migration de schéma et de données :yarn database:migrate:prod appliquera les migrations à la structure de la base de données (schémas core et metadata)
La commande yarn command:prod upgrade-0.31 s’occupe de la migration des données de tous les espaces de travail.
v0.24.0 à v0.30.0
Mettez à jour votre instance Twenty pour utiliser l’image v0.30.0 Changement significatif: Pour améliorer les performances, Twenty nécessite désormais la configuration de cache redis. Nous avons mis à jour notre docker-compose.yml pour refléter cela. Assurez-vous de mettre à jour votre configuration et vos variables d’environnement en conséquence :yarn database:migrate:prod appliquera les migrations à la structure de la base de données (schémas core et metadata)
La commande yarn command:prod upgrade-0.30 s’occupe de la migration des données de tous les espaces de travail.
v0.23.0 à v0.24.0
Mettez à jour votre instance Twenty pour utiliser l’image v0.24.0 Exécutez les commandes suivantes :yarn database:migrate:prod appliquera les migrations à la structure de la base de données (schémas core et metadata)
La commande yarn command:prod upgrade-0.24 s’occupe de la migration des données de tous les espaces de travail.
v0.22.0 à v0.23.0
Mettez à jour votre instance Twenty pour utiliser l’image v0.23.0 Exécutez les commandes suivantes :yarn database:migrate:prod appliquera les migrations à la base de données.
La commande yarn command:prod upgrade-0.23 s’occupe de la migration des données, y compris le transfert des activités vers les tâches/notes.
v0.21.0 à v0.22.0
Mettez à jour votre instance Twenty pour utiliser l’image v0.22.0 Exécutez les commandes suivantes :yarn database:migrate:prod appliquera les migrations à la base de données.
La commande yarn command:prod workspace:sync-metadata -f synchronisera la définition des objets standard avec les tables de métadonnées et appliquera les migrations nécessaires aux espaces de travail existants.
La commande yarn command:prod upgrade-0.22 appliquera des transformations de données spécifiques pour s’adapter aux nouvelles defaultRequestInstrumentationOptions d’objet.