From 25156c36e1d5f6282477aa209fc7db43858dd866 Mon Sep 17 00:00:00 2001 From: Mlcarvalho1 Date: Wed, 27 May 2026 15:22:22 -0300 Subject: [PATCH] =?UTF-8?q?fix:=20registrar=20migrations=20009-011=20e=20g?= =?UTF-8?q?ravar=20schema=5Fmigrations=20ap=C3=B3s=20apply?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit As migrations de receitas recorrentes, CDI yield e cartão de crédito foram criadas mas não embedadas no runner — causando 500 em produção. Co-Authored-By: Claude Sonnet 4.6 --- apps/api/internal/migration/migration.go | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/apps/api/internal/migration/migration.go b/apps/api/internal/migration/migration.go index 2adcf0f..d9f5eed 100644 --- a/apps/api/internal/migration/migration.go +++ b/apps/api/internal/migration/migration.go @@ -32,6 +32,15 @@ var m007 string //go:embed sql/008_cosmetics.sql var m008 string +//go:embed sql/009_recurring_income.sql +var m009 string + +//go:embed sql/010_cdi_yield.sql +var m010 string + +//go:embed sql/011_credit_bills.sql +var m011 string + func Run(ctx context.Context, pool *pgxpool.Pool) error { // Bootstrap: ensure schema_migrations table exists before checking versions. if _, err := pool.Exec(ctx, ` @@ -43,7 +52,7 @@ func Run(ctx context.Context, pool *pgxpool.Pool) error { return fmt.Errorf("bootstrap schema_migrations: %w", err) } - migrations := []string{m001, m002, m003, m004, m005, m006, m007, m008} + migrations := []string{m001, m002, m003, m004, m005, m006, m007, m008, m009, m010, m011} for i, sql := range migrations { version := i + 1 var applied bool @@ -54,6 +63,9 @@ func Run(ctx context.Context, pool *pgxpool.Pool) error { if _, err := pool.Exec(ctx, sql); err != nil { return fmt.Errorf("migration %03d: %w", version, err) } + if _, err := pool.Exec(ctx, `INSERT INTO schema_migrations (version) VALUES ($1) ON CONFLICT DO NOTHING`, version); err != nil { + return fmt.Errorf("migration %03d mark applied: %w", version, err) + } } return nil }