Upgrading to Hasura migrations config v2
What has changed?
In config v1, the PG schema migrations and Hasura metadata were both
handled using the same migration files
which were in yaml
format. In config v2, these are managed
separately in their own directories in the Hasura project. Metadata is
managed in its separate metadata directory and PG
schema migrations are managed via
migration files that are now in SQL
format.
Changes needed in existing workflows
Due to the above mentioned changes, any workflows that involve applying migrations have an additional step of applying metadata as well.
For example,
- any place where the
hasura migrate apply
command is used, it now needs to be followed by ahasura metadata apply
command. - if the
cli-migrations
Docker image is used for auto applying migrations at server start, now you will have to use thecli-migrations-v2
image and the/metadata
directory will also have to be mounted along with the/migrations
directory
Upgrade steps
Step 0: Take a backup
Make sure you take a backup of your Hasura project before upgrading to
config v2
.
Step 1: Upgrade to the latest CLI
Config v2 is available since v1.2.0
.
Run:
hasura update-cli
Step 2: Upgrade hasura project to v2
In your project directory, run:
hasura scripts update-project-v2
Your project directory and config.yaml
should be updated to v2.