Skip to content

Multi-Asset Workflows

Learn how to manage complex workflows involving multiple asset types with dependencies.

Superset assets have a dependency hierarchy:

Databases
Datasets
Charts
Dashboards
Terminal window
# Pull dashboard with all dependencies
sup dashboard pull --ids 123 --include-deps
# This pulls:
# - Dashboard 123
# - All charts in the dashboard
# - All datasets used by charts
# - Database connections (metadata only)
Terminal window
# Pull charts without datasets
sup chart pull --ids 456,789 --no-deps
# Pull datasets without database configs
sup dataset pull --mine --skip-databases
multi-asset-sync.yml
source:
workspace_id: 123
assets:
dashboards:
selection: ids
ids: [100, 101]
include_dependencies: true
charts:
selection: ids
ids: [200, 201, 202]
include_dependencies: true
datasets:
selection: all
include_dependencies: false
targets:
- workspace_id: 456
name: target-workspace
Terminal window
sup sync run multi-asset-sync.yml --dry-run
Terminal window
sup sync run multi-asset-sync.yml

When datasets have naming conflicts:

Terminal window
# Rename on push
sup dataset push --rename-pattern "DEV_{name}"
# Force overwrite
sup dataset push --force --overwrite

Preserve or change ownership:

Terminal window
# Keep original owner
sup chart push --preserve-owner
# Assign to current user
sup chart push --assign-to-me
Terminal window
# Export all assets from workspace
sup workspace export --all --output ./backup/
# Export specific types
sup workspace export --types charts,dashboards --output ./export/
Terminal window
# Import exported bundle
sup workspace import ./backup/ --workspace-id 456

sup automatically resolves dependencies in the correct order:

  1. Databases are created/updated first
  2. Datasets are created with database references
  3. Charts are created with dataset references
  4. Dashboards are created with chart references
  1. Always use —dry-run first to preview changes
  2. Version control your sync configurations
  3. Document dependencies in your sync config
  4. Use tags to organize related assets
  5. Test in staging before production sync
  6. Monitor logs for dependency warnings
Terminal window
# 1. Export from source
sup workspace use source-workspace
sup workspace export --all --output ./migration/
# 2. Review exported assets
ls -la ./migration/assets/
# 3. Import to target
sup workspace use target-workspace
sup workspace import ./migration/ --force
# 4. Verify migration
sup dashboard list --limit 10
sup chart list --limit 10