mirror of
https://github.com/logto-io/logto.git
synced 2024-12-16 20:26:19 -05:00
29 lines
690 B
TypeScript
29 lines
690 B
TypeScript
|
import { sql } from 'slonik';
|
||
|
|
||
|
import type { AlterationScript } from '../lib/types/alteration.js';
|
||
|
|
||
|
const defaultTenantId = 'default';
|
||
|
const getId = (value: string) => sql.identifier([value]);
|
||
|
|
||
|
const alteration: AlterationScript = {
|
||
|
up: async (pool) => {
|
||
|
await pool.query(sql`
|
||
|
create table tenants (
|
||
|
id varchar(21) not null,
|
||
|
db_user_password varchar(128),
|
||
|
primary key (id)
|
||
|
);
|
||
|
`);
|
||
|
|
||
|
await pool.query(sql`
|
||
|
insert into tenants (${getId('id')}, ${getId('db_user_password')})
|
||
|
values (${defaultTenantId}, null);
|
||
|
`);
|
||
|
},
|
||
|
down: async (pool) => {
|
||
|
await pool.query(sql`drop table tenants;`);
|
||
|
},
|
||
|
};
|
||
|
|
||
|
export default alteration;
|