1234567891011121314151617181920212223242526 |
- package migrations
- import (
- "github.com/jmoiron/sqlx"
- "github.com/knadh/koanf"
- "github.com/knadh/stuffbin"
- )
- // V0_4_0 performs the DB migrations for v.0.4.0.
- func V0_4_0(db *sqlx.DB, fs stuffbin.FileSystem, ko *koanf.Koanf) error {
- _, err := db.Exec(`
- DO $$
- BEGIN
- IF NOT EXISTS (SELECT 1 FROM pg_type WHERE typname = 'list_optin') THEN
- CREATE TYPE list_optin AS ENUM ('single', 'double');
- END IF;
- IF NOT EXISTS (SELECT 1 FROM pg_type WHERE typname = 'campaign_type') THEN
- CREATE TYPE campaign_type AS ENUM ('regular', 'optin');
- END IF;
- END$$;
- ALTER TABLE lists ADD COLUMN IF NOT EXISTS optin list_optin NOT NULL DEFAULT 'single';
- ALTER TABLE campaigns ADD COLUMN IF NOT EXISTS type campaign_type DEFAULT 'regular';
- `)
- return err
- }
|