mirror of
https://github.com/gristlabs/grist-core.git
synced 2024-10-27 20:44:07 +00:00
5ef889addd
Summary: This moves enough server material into core to run a home server. The data engine is not yet incorporated (though in manual testing it works when ported). Test Plan: existing tests pass Reviewers: dsagal Reviewed By: dsagal Differential Revision: https://phab.getgrist.com/D2552
28 lines
1.0 KiB
TypeScript
28 lines
1.0 KiB
TypeScript
import {MigrationInterface, QueryRunner} from "typeorm";
|
|
|
|
export class OrgDomainUnique1557157922339 implements MigrationInterface {
|
|
|
|
public async up(queryRunner: QueryRunner): Promise<any> {
|
|
const logins = (await queryRunner.getTable('orgs'))!;
|
|
const domain = logins.findColumnByName('domain')!;
|
|
const domainUnique = domain.clone();
|
|
domainUnique.isUnique = true;
|
|
await queryRunner.changeColumn('orgs', domain, domainUnique);
|
|
|
|
// On postgres, all of the above amounts to:
|
|
// ALTER TABLE "orgs" ADD CONSTRAINT "..." UNIQUE ("domain")
|
|
// On sqlite, the table gets regenerated.
|
|
}
|
|
|
|
public async down(queryRunner: QueryRunner): Promise<any> {
|
|
const logins = (await queryRunner.getTable('orgs'))!;
|
|
const domain = logins.findColumnByName('domain')!;
|
|
const domainNonUnique = domain.clone();
|
|
domainNonUnique.isUnique = false;
|
|
await queryRunner.changeColumn('orgs', domain, domainNonUnique);
|
|
|
|
// On postgres, all of the above amount to:
|
|
// ALTER TABLE "orgs" DROP CONSTRAINT "..."
|
|
}
|
|
}
|