Getting started

Extending

Rest APIs
GraphQL APIs

Contributing

Frontend Development
Backend Development

User Guide

Upgrade guide

Upgrade guide

Upgrade guide
In this article

General guidelines

Always make sure to backup your database before starting the upgrade process.

If you used Docker Compose

  1. In a terminal, on the host where Twenty is running, turn off Twenty: docker compose down

  2. Upgrade the version by changing the TAG value in the .env file near your docker-compose.

  3. Bring Twenty back online with docker-compose up -d

Data Migration

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.

v0.21.0 to v0.22.0

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.

v0.22.0 to v0.23.0

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.

v0.23.0 to v0.24.0

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.

v0.24.0 to v0.30.0

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.

v0.30.0 to v0.31.0

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.

v0.31.0 to v0.32.0

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.

Environment Variables

We have updated the way we handle the Redis connection.

  • Removed: REDIS_HOST, REDIS_PORT, REDIS_USERNAME, REDIS_PASSWORD
  • Added: 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.

  • Removed: ACCESS_TOKEN_SECRET, LOGIN_TOKEN_SECRET, REFRESH_TOKEN_SECRET, FILE_TOKEN_SECRET
  • Added: 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.

Connected Account

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.

Noticed something to change?

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!

twenty github image
The #1 Open Source CRM
©2024 Twenty PBC