Always make sure to backup your database before starting the upgrade process.
In a terminal, on the host where Twenty is running, turn off Twenty: docker compose down
Upgrade the version by changing the TAG
value in the .env file near your docker-compose.
Bring Twenty back online with docker-compose up -d
Migrating a CRM is a bit trickier than migrating a traditional software, because the data model of Standard Object has to evolve smoothly along your custom objects.
Upgrade your Twenty instance to use v0.22.0 image
Run the following commands:
yarn database:migrate:prod
yarn command:prod workspace:sync-metadata -f
yarn command:prod upgrade-0.22
The yarn database:migrate:prod
command will apply the migrations to the Database.
The yarn command:prod workspace:sync-metadata -f
command will sync the definition of standard objects to the metadata tables and apply to required migrations to existing workspaces.
The yarn command:prod upgrade-0.22
command will apply specific data transformations to adapt to the new object defaultRequestInstrumentationOptions.
Upgrade your Twenty instance to use v0.23.0 image
Run the following commands:
yarn database:migrate:prod
yarn command:prod upgrade-0.23
The yarn database:migrate:prod
command will apply the migrations to the Database.
The yarn command:prod upgrade-0.23
takes care of the data migration, including transferring activities to tasks/notes.
Upgrade your Twenty instance to use v0.24.0 image
Run the following commands:
yarn database:migrate:prod
yarn command:prod upgrade-0.24
The yarn database:migrate:prod
command will apply the migrations to the database structure (core and metadata schemas)
The yarn command:prod upgrade-0.24
takes care of the data migration of all workspaces.
Upgrade your Twenty instance to use v0.30.0 image
Breaking change: To enhance performances, Twenty now requires redis cache to be configured. We have updated our docker-compose.yml to reflect this. Make sure to update your configuration and to update your environment variables accordingly:
REDIS_HOST={your-redis-host}
REDIS_PORT={your-redis-port}
CACHE_STORAGE_TYPE=redis
Schema and data migration:
yarn database:migrate:prod
yarn command:prod upgrade-0.30
The yarn database:migrate:prod
command will apply the migrations to the database structure (core and metadata schemas)
The yarn command:prod upgrade-0.30
takes care of the data migration of all workspaces.
Upgrade your Twenty instance to use v0.31.0 image
Schema and data migration:
yarn database:migrate:prod
yarn command:prod upgrade-0.31
The yarn database:migrate:prod
command will apply the migrations to the database structure (core and metadata schemas)
The yarn command:prod upgrade-0.31
takes care of the data migration of all workspaces.
Upgrade your Twenty instance to use v0.32.0 image
Schema and data migration:
yarn database:migrate:prod
yarn command:prod upgrade-0.32
The yarn database:migrate:prod
command will apply the migrations to the database structure (core and metadata schemas)
The yarn command:prod upgrade-0.32
takes care of the data migration of all workspaces.
We have updated the way we handle the Redis connection.
REDIS_HOST
, REDIS_PORT
, REDIS_USERNAME
, REDIS_PASSWORD
REDIS_URL
Update your .env
file to use the new REDIS_URL
variable instead of the individual Redis connection parameters.
We have also simplifed the way we handle the JWT tokens.
ACCESS_TOKEN_SECRET
, LOGIN_TOKEN_SECRET
, REFRESH_TOKEN_SECRET
, FILE_TOKEN_SECRET
APP_SECRET
Update your .env
file to use the new APP_SECRET
variable instead of the individual tokens secrets (you can use the same secret as before or generate a new random string)
Note: Keep the ACCESS_TOKEN_SECRET
variable to keep the backward compatibility with the previous API tokens.
If you are using connected account to synchronize your Google emails and calendars, you will need to activate the People API on your Google Admin console.
As an open-source company, we welcome contributions through Github. Help us keep it up-to-date, accurate, and easy to understand by getting involved and sharing your ideas!