Add native schema migration capabilities (#7939)

* Add snapshot creation command

* Read and start diffing snapshot

* Add apply snapshot functionality

* Fix cli invocation

* Add log messages

* Fix duplicated if check

* Add (minimal) docs on schema migrations

* Fix missing import

* Update api/src/utils/apply-snapshot.ts

Co-authored-by: Nicola Krumschmidt <nicola.krumschmidt@freenet.de>

* Appease to Nicola's programming professor

Co-authored-by: Nicola Krumschmidt <nicola.krumschmidt@freenet.de>
This commit is contained in:
Rijk van Zanten
2021-09-13 17:15:04 -04:00
committed by GitHub
parent 185e8b5db7
commit ce104b6a9c
18 changed files with 603 additions and 7 deletions

View File

@@ -57,3 +57,4 @@ data:
display_template: '{{ first_name }} {{ last_name }}'
- collection: directus_webhooks
note: $t:directus_collection.directus_webhooks
- collection: directus_migrations

View File

@@ -0,0 +1,10 @@
# directus_migrations isn't surfaced in the app, nor accessible from the API
table: directus_migrations
fields:
- collection: directus_migrations
field: version
- collection: directus_migrations
field: name
- collection: directus_migrations
field: timestamp

View File

@@ -33,3 +33,5 @@ fields:
- field: layout
width: half
- field: refresh_interval

View File

@@ -54,3 +54,21 @@ data:
- many_collection: directus_settings
many_field: public_background
one_collection: directus_files
- many_collection: directus_files
many_field: modified_by
one_collection: directus_users
- many_collection: directus_fields
many_field: group
one_collection: directus_fields
- many_collection: directus_permissions
many_field: role
one_collection: directus_roles
- many_collection: directus_revisions
many_field: parent
one_collection: directus_revisions
- many_collection: directus_sessions
many_field: user
one_collection: directus_users
- many_collection: directus_settings
many_field: storage_default_folder
one_collection: directus_files