Skip to main content

Rollback Command

Rollback one or more assets to their previous version.

Usage​

Single Asset​

msh rollback orders

Multiple Assets​

msh rollback orders,revenue,users

All Assets​

msh rollback --all

Options​

--env <name>​

Specify the target environment (defaults to dev).

# Development environment (Git-aware schemas)
msh rollback --env dev orders

# Production environment (Fixed schemas)
msh rollback --env prod orders

Environment Behavior:

  • dev (default): Uses Git-aware schemas. Each git branch gets isolated schemas
  • prod: Uses fixed schemas without git suffixes

See Git-Aware Schemas for more details.

How It Works​

  1. Finds the previous successful deployment for each asset
  2. Checks if the backup table exists
  3. Swaps the view to point to the previous version
  4. Shows a summary of successes and failures

Output Example​

Rolling back 'orders' to version a1b2c3 (from 2024-01-15 10:30:00)...
[OK] Rolled back 'orders' to version a1b2c3.
Rolling back 'revenue' to version d4e5f6 (from 2024-01-15 09:15:00)...
[OK] Rolled back 'revenue' to version d4e5f6.

Rollback Summary: 2/2 succeeded
warning

Rollback is instantaneous but destructive to the current Blue state. The current production schema becomes the new archive. Use with caution in production environments.