|
|
@@ -19,12 +19,36 @@ func addDashboardSnapshotMigrations(mg *Migrator) {
|
|
|
},
|
|
|
}
|
|
|
|
|
|
+ // add v4
|
|
|
mg.AddMigration("create dashboard_snapshot table v4", NewAddTableMigration(snapshotV4))
|
|
|
- addTableIndicesMigrations(mg, "v4", snapshotV4)
|
|
|
|
|
|
- mg.AddMigration("add org_id to dashboard_snapshot", new(AddColumnMigration).
|
|
|
- Table("dashboard_snapshot").Column(&Column{Name: "org_id", Type: DB_BigInt, Nullable: true}))
|
|
|
+ // drop v4
|
|
|
+ addDropAllIndicesMigrations(mg, "v4", snapshotV4)
|
|
|
+ mg.AddMigration("drop table dashboard_snapshot_v4 #1", NewDropTableMigration("dashboard_snapshot"))
|
|
|
|
|
|
- mg.AddMigration("add index org_id to dashboard_snapshot",
|
|
|
- NewAddIndexMigration(snapshotV4, &Index{Cols: []string{"org_id"}}))
|
|
|
+ snapshotV5 := Table{
|
|
|
+ Name: "dashboard_snapshot",
|
|
|
+ Columns: []*Column{
|
|
|
+ {Name: "id", Type: DB_BigInt, IsPrimaryKey: true, IsAutoIncrement: true},
|
|
|
+ {Name: "name", Type: DB_NVarchar, Length: 255, Nullable: false},
|
|
|
+ {Name: "key", Type: DB_NVarchar, Length: 255, Nullable: false},
|
|
|
+ {Name: "delete_key", Type: DB_NVarchar, Length: 255, Nullable: false},
|
|
|
+ {Name: "org_id", Type: DB_BigInt, Nullable: false},
|
|
|
+ {Name: "user_id", Type: DB_BigInt, Nullable: false},
|
|
|
+ {Name: "external", Type: DB_Bool, Nullable: false},
|
|
|
+ {Name: "external_url", Type: DB_NVarchar, Length: 255, Nullable: false},
|
|
|
+ {Name: "dashboard", Type: DB_Text, Nullable: false},
|
|
|
+ {Name: "expires", Type: DB_DateTime, Nullable: false},
|
|
|
+ {Name: "created", Type: DB_DateTime, Nullable: false},
|
|
|
+ {Name: "updated", Type: DB_DateTime, Nullable: false},
|
|
|
+ },
|
|
|
+ Indices: []*Index{
|
|
|
+ {Cols: []string{"key"}, Type: UniqueIndex},
|
|
|
+ {Cols: []string{"delete_key"}, Type: UniqueIndex},
|
|
|
+ {Cols: []string{"user_id"}},
|
|
|
+ },
|
|
|
+ }
|
|
|
+
|
|
|
+ mg.AddMigration("create dashboard_snapshot table v5 #2", NewAddTableMigration(snapshotV5))
|
|
|
+ addTableIndicesMigrations(mg, "v5", snapshotV5)
|
|
|
}
|