Serdes v2: Rebuild the directory structure to be more human-friendly (#26793)
There are now three top-level trees: - regular `collections/path/to/collection/...` - `:namespace :snippet` collections in `snippets/path/to/collection/...` - `databases/mydb/schemas/PUBLIC/tables/customers/fields/name.yaml` The path for any given entity is determined by the `serdes.base/storage-path` multimethod. On the ingestion side, things are a bit tricky because the paths don't map directly to `:serdes/meta` hierarchies anymore. Instead each model registers a function to turn a file path into either a `:serdes/meta` hierarcy or nil for a bad match. Ingestion will fetch all these functions once and then try them all in arbitrary order until one matches.
Showing
- enterprise/backend/src/metabase_enterprise/serialization/v2/backfill_ids.clj 1 addition, 1 deletion...src/metabase_enterprise/serialization/v2/backfill_ids.clj
- enterprise/backend/src/metabase_enterprise/serialization/v2/extract.clj 2 additions, 1 deletion...kend/src/metabase_enterprise/serialization/v2/extract.clj
- enterprise/backend/src/metabase_enterprise/serialization/v2/ingest/yaml.clj 38 additions, 26 deletions.../src/metabase_enterprise/serialization/v2/ingest/yaml.clj
- enterprise/backend/src/metabase_enterprise/serialization/v2/models.clj 8 additions, 3 deletions...ckend/src/metabase_enterprise/serialization/v2/models.clj
- enterprise/backend/src/metabase_enterprise/serialization/v2/storage/yaml.clj 4 additions, 3 deletions...src/metabase_enterprise/serialization/v2/storage/yaml.clj
- enterprise/backend/src/metabase_enterprise/serialization/v2/utils/yaml.clj 22 additions, 45 deletions...d/src/metabase_enterprise/serialization/v2/utils/yaml.clj
- enterprise/backend/test/metabase_enterprise/serialization/api/serialize_test.clj 16 additions, 10 deletions.../metabase_enterprise/serialization/api/serialize_test.clj
- enterprise/backend/test/metabase_enterprise/serialization/v2/e2e/yaml_test.clj 105 additions, 94 deletions...st/metabase_enterprise/serialization/v2/e2e/yaml_test.clj
- enterprise/backend/test/metabase_enterprise/serialization/v2/ingest/yaml_test.clj 33 additions, 28 deletions...metabase_enterprise/serialization/v2/ingest/yaml_test.clj
- enterprise/backend/test/metabase_enterprise/serialization/v2/load_test.clj 2 additions, 72 deletions...d/test/metabase_enterprise/serialization/v2/load_test.clj
- enterprise/backend/test/metabase_enterprise/serialization/v2/storage/yaml_test.clj 93 additions, 27 deletions...etabase_enterprise/serialization/v2/storage/yaml_test.clj
- src/metabase/models/card.clj 17 additions, 14 deletionssrc/metabase/models/card.clj
- src/metabase/models/collection.clj 15 additions, 0 deletionssrc/metabase/models/collection.clj
- src/metabase/models/dashboard.clj 4 additions, 4 deletionssrc/metabase/models/dashboard.clj
- src/metabase/models/dashboard_card.clj 2 additions, 0 deletionssrc/metabase/models/dashboard_card.clj
- src/metabase/models/database.clj 13 additions, 0 deletionssrc/metabase/models/database.clj
- src/metabase/models/field.clj 24 additions, 0 deletionssrc/metabase/models/field.clj
- src/metabase/models/field_values.clj 33 additions, 1 deletionsrc/metabase/models/field_values.clj
- src/metabase/models/metric.clj 10 additions, 0 deletionssrc/metabase/models/metric.clj
- src/metabase/models/native_query_snippet.clj 20 additions, 4 deletionssrc/metabase/models/native_query_snippet.clj
Loading
Please register or sign in to comment