removed migration validation as it is redudant
This commit is contained in:
@@ -6,7 +6,6 @@ import (
|
||||
"context"
|
||||
"fmt"
|
||||
"os"
|
||||
"os/exec"
|
||||
"strconv"
|
||||
"strings"
|
||||
"text/tabwriter"
|
||||
@@ -60,13 +59,7 @@ func migrateUp(ctx context.Context, migrator *migrate.Migrator, conn *db.DB, cfg
|
||||
return errors.Wrap(err, "parse migration count")
|
||||
}
|
||||
|
||||
fmt.Println("[INFO] Step 1/5: Validating migrations...")
|
||||
if err := validateMigrations(ctx); err != nil {
|
||||
return err
|
||||
}
|
||||
fmt.Println("[INFO] Migration validation passed ✓")
|
||||
|
||||
fmt.Println("[INFO] Step 2/5: Checking for pending migrations...")
|
||||
fmt.Println("[INFO] Step 1/4: Checking for pending migrations...")
|
||||
// Check for pending migrations using MigrationsWithStatus (read-only)
|
||||
ms, err := migrator.MigrationsWithStatus(ctx)
|
||||
if err != nil {
|
||||
@@ -98,7 +91,7 @@ func migrateUp(ctx context.Context, migrator *migrate.Migrator, conn *db.DB, cfg
|
||||
|
||||
// Create backup unless --no-backup flag is set
|
||||
if !cfg.Flags.MigrateNoBackup {
|
||||
fmt.Println("[INFO] Step 3/5: Creating backup...")
|
||||
fmt.Println("[INFO] Step 2/4: Creating backup...")
|
||||
_, err := db.CreateBackup(ctx, cfg.DB, "migration")
|
||||
if err != nil {
|
||||
return errors.Wrap(err, "create backup")
|
||||
@@ -109,11 +102,11 @@ func migrateUp(ctx context.Context, migrator *migrate.Migrator, conn *db.DB, cfg
|
||||
fmt.Printf("[WARN] Failed to clean old backups: %v\n", err)
|
||||
}
|
||||
} else {
|
||||
fmt.Println("[INFO] Step 3/5: Skipping backup (--no-backup flag set)")
|
||||
fmt.Println("[INFO] Step 2/4: Skipping backup (--no-backup flag set)")
|
||||
}
|
||||
|
||||
// Acquire migration lock
|
||||
fmt.Println("[INFO] Step 4/5: Acquiring migration lock...")
|
||||
fmt.Println("[INFO] Step 3/4: Acquiring migration lock...")
|
||||
if err := acquireMigrationLock(ctx, conn); err != nil {
|
||||
return errors.Wrap(err, "acquire migration lock")
|
||||
}
|
||||
@@ -121,7 +114,7 @@ func migrateUp(ctx context.Context, migrator *migrate.Migrator, conn *db.DB, cfg
|
||||
fmt.Println("[INFO] Migration lock acquired")
|
||||
|
||||
// Run migrations
|
||||
fmt.Println("[INFO] Step 5/5: Applying migrations...")
|
||||
fmt.Println("[INFO] Step 4/4: Applying migrations...")
|
||||
group, err := executeUpMigrations(ctx, migrator, toApply)
|
||||
if err != nil {
|
||||
return errors.Wrap(err, "execute migrations")
|
||||
@@ -253,21 +246,6 @@ func migrateStatus(ctx context.Context, migrator *migrate.Migrator) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
// validateMigrations ensures migrations compile before running
|
||||
func validateMigrations(ctx context.Context) error {
|
||||
cmd := exec.CommandContext(ctx, "go", "build",
|
||||
"-o", "/dev/null", "./internal/db/migrations")
|
||||
|
||||
output, err := cmd.CombinedOutput()
|
||||
if err != nil {
|
||||
fmt.Println("[ERROR] Migration validation failed!")
|
||||
fmt.Println(string(output))
|
||||
return errors.Wrap(err, "migration build failed")
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
// acquireMigrationLock prevents concurrent migrations using PostgreSQL advisory lock
|
||||
func acquireMigrationLock(ctx context.Context, conn *db.DB) error {
|
||||
const lockID = 1234567890 // Arbitrary unique ID for migration lock
|
||||
|
||||
Reference in New Issue
Block a user