Provision instance bank credentials automatically (Refs #146)
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
import type Database from 'better-sqlite3';
|
||||
|
||||
export function migrateBankCredentials(handle: Database.Database): void {
|
||||
handle.exec(`
|
||||
CREATE TABLE IF NOT EXISTS bank_credentials (
|
||||
instance_id TEXT PRIMARY KEY, server TEXT NOT NULL,
|
||||
token TEXT NOT NULL, token_hash TEXT NOT NULL UNIQUE, created_at TEXT NOT NULL
|
||||
);
|
||||
`);
|
||||
if (
|
||||
!(handle.pragma('table_info(bank_requests)') as { name: string }[]).some(
|
||||
(column) => column.name === 'instance_id'
|
||||
)
|
||||
) {
|
||||
handle.exec(`
|
||||
ALTER TABLE bank_requests ADD COLUMN instance_id TEXT;
|
||||
UPDATE bank_requests SET instance_id = (
|
||||
SELECT id FROM native_instances WHERE server = bank_requests.server AND retired_at IS NULL
|
||||
);
|
||||
`);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user