* Revert "Migration sql changes (#199)"
This reverts commit 12c834469c.
* Save migrate file on db
* Add message on migration error in lamassu-update
55 lines
3.1 KiB
JavaScript
55 lines
3.1 KiB
JavaScript
'use strict'
|
|
|
|
const db = require('./db')
|
|
|
|
exports.up = function (next) {
|
|
const sql = [
|
|
/**
|
|
* Replace all compliance_types enum values
|
|
*
|
|
* There is no ALTER TYPE name DROP/RENAME VALUE ... in psql
|
|
* This is a way to update all the existing enum values of an existing type
|
|
*
|
|
* @see {@link http://blog.yo1.dog/updating-enum-values-in-postgresql-the-safe-and-easy-way/}
|
|
*/
|
|
`create type compliance_type as enum
|
|
('authorized', 'sms', 'id_card_data', 'id_card_photo', 'sanctions_check', 'front_facing_cam', 'hard_limit')`,
|
|
'alter table compliance_authorizations alter column compliance_type set data type compliance_type using compliance_type::text::compliance_type',
|
|
'drop type compliance_types',
|
|
|
|
"create type verification_type as enum ('verified', 'blocked', 'automatic')",
|
|
|
|
'alter table customers drop column manually_verified ',
|
|
"alter table customers add column sms_override verification_type not null default 'automatic'",
|
|
'alter table customers add column sms_override_by text references user_tokens (token)',
|
|
'alter table customers add column sms_override_at timestamptz',
|
|
"alter table customers add column id_card_data_override verification_type not null default 'automatic'",
|
|
'alter table customers add column id_card_data_override_by text references user_tokens (token)',
|
|
'alter table customers add column id_card_data_override_at timestamptz',
|
|
"alter table customers add column id_card_photo_override verification_type not null default 'automatic'",
|
|
'alter table customers add column id_card_photo_override_by text references user_tokens (token)',
|
|
'alter table customers add column id_card_photo_override_at timestamptz',
|
|
"alter table customers add column front_facing_cam_override verification_type not null default 'automatic'",
|
|
'alter table customers add column front_facing_cam_override_by text references user_tokens (token)',
|
|
'alter table customers add column front_facing_cam_override_at timestamptz',
|
|
"alter table customers add column sanctions_check_override verification_type not null default 'automatic'",
|
|
'alter table customers add column sanctions_check_override_by text references user_tokens (token)',
|
|
'alter table customers add column sanctions_check_override_at timestamptz',
|
|
"alter table customers add column authorized_override verification_type not null default 'automatic'",
|
|
'alter table customers add column authorized_override_by text references user_tokens (token)',
|
|
'alter table customers add column authorized_override_at timestamptz',
|
|
'alter table customers add column authorized_at timestamptz',
|
|
'alter table customers add column sanctions_check_at timestamptz',
|
|
|
|
'alter table compliance_authorizations rename to compliance_overrides',
|
|
'alter table compliance_overrides add column verification verification_type not null',
|
|
'alter table compliance_overrides rename column authorized_at to override_at',
|
|
'alter table compliance_overrides rename column authorized_by to override_by'
|
|
]
|
|
|
|
db.multi(sql, next)
|
|
}
|
|
|
|
exports.down = function (next) {
|
|
next()
|
|
}
|