You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
317 lines
12 KiB
317 lines
12 KiB
-- basic script
|
|
|
|
CREATE DATABASE `Workflow-V70` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_general_ci';
|
|
|
|
USE `Workflow-V70`;
|
|
|
|
CREATE TABLE IF NOT EXISTS `__EFMigrationsHistory` (
|
|
`MigrationId` varchar(150) CHARACTER SET utf8mb4 NOT NULL,
|
|
`ProductVersion` varchar(32) CHARACTER SET utf8mb4 NOT NULL,
|
|
CONSTRAINT `PK___EFMigrationsHistory` PRIMARY KEY (`MigrationId`)
|
|
) CHARACTER SET utf8mb4;
|
|
|
|
START TRANSACTION;
|
|
|
|
ALTER DATABASE CHARACTER SET utf8mb4;
|
|
|
|
CREATE TABLE `Bookmarks` (
|
|
`Id` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`TenantId` varchar(255) CHARACTER SET utf8mb4 NULL,
|
|
`Hash` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`Model` longtext CHARACTER SET utf8mb4 NOT NULL,
|
|
`ModelType` longtext CHARACTER SET utf8mb4 NOT NULL,
|
|
`ActivityType` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`ActivityId` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`WorkflowInstanceId` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`CorrelationId` varchar(255) CHARACTER SET utf8mb4 NULL,
|
|
CONSTRAINT `PK_Bookmarks` PRIMARY KEY (`Id`)
|
|
) CHARACTER SET utf8mb4;
|
|
|
|
CREATE TABLE `WorkflowDefinitions` (
|
|
`Id` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`DefinitionId` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`TenantId` varchar(255) CHARACTER SET utf8mb4 NULL,
|
|
`Name` varchar(255) CHARACTER SET utf8mb4 NULL,
|
|
`DisplayName` longtext CHARACTER SET utf8mb4 NULL,
|
|
`Description` longtext CHARACTER SET utf8mb4 NULL,
|
|
`Version` int NOT NULL,
|
|
`IsSingleton` tinyint(1) NOT NULL,
|
|
`PersistenceBehavior` int NOT NULL,
|
|
`DeleteCompletedInstances` tinyint(1) NOT NULL,
|
|
`IsPublished` tinyint(1) NOT NULL,
|
|
`IsLatest` tinyint(1) NOT NULL,
|
|
`Tag` varchar(255) CHARACTER SET utf8mb4 NULL,
|
|
`Data` longtext CHARACTER SET utf8mb4 NULL,
|
|
CONSTRAINT `PK_WorkflowDefinitions` PRIMARY KEY (`Id`)
|
|
) CHARACTER SET utf8mb4;
|
|
|
|
CREATE TABLE `WorkflowExecutionLogRecords` (
|
|
`Id` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`TenantId` varchar(255) CHARACTER SET utf8mb4 NULL,
|
|
`WorkflowInstanceId` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`ActivityId` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`ActivityType` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`Timestamp` datetime(6) NOT NULL,
|
|
`EventName` longtext CHARACTER SET utf8mb4 NULL,
|
|
`Message` longtext CHARACTER SET utf8mb4 NULL,
|
|
`Source` longtext CHARACTER SET utf8mb4 NULL,
|
|
`Data` longtext CHARACTER SET utf8mb4 NULL,
|
|
CONSTRAINT `PK_WorkflowExecutionLogRecords` PRIMARY KEY (`Id`)
|
|
) CHARACTER SET utf8mb4;
|
|
|
|
CREATE TABLE `WorkflowInstances` (
|
|
`Id` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`DefinitionId` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`TenantId` varchar(255) CHARACTER SET utf8mb4 NULL,
|
|
`Version` int NOT NULL,
|
|
`WorkflowStatus` int NOT NULL,
|
|
`CorrelationId` varchar(255) CHARACTER SET utf8mb4 NULL,
|
|
`ContextType` varchar(255) CHARACTER SET utf8mb4 NULL,
|
|
`ContextId` varchar(255) CHARACTER SET utf8mb4 NULL,
|
|
`Name` varchar(255) CHARACTER SET utf8mb4 NULL,
|
|
`CreatedAt` datetime(6) NOT NULL,
|
|
`LastExecutedAt` datetime(6) NULL,
|
|
`FinishedAt` datetime(6) NULL,
|
|
`CancelledAt` datetime(6) NULL,
|
|
`FaultedAt` datetime(6) NULL,
|
|
`Data` longtext CHARACTER SET utf8mb4 NULL,
|
|
CONSTRAINT `PK_WorkflowInstances` PRIMARY KEY (`Id`)
|
|
) CHARACTER SET utf8mb4;
|
|
|
|
CREATE INDEX `IX_Bookmark_ActivityId` ON `Bookmarks` (`ActivityId`);
|
|
|
|
CREATE INDEX `IX_Bookmark_ActivityType` ON `Bookmarks` (`ActivityType`);
|
|
|
|
CREATE INDEX `IX_Bookmark_ActivityType_TenantId_Hash` ON `Bookmarks` (`ActivityType`, `TenantId`, `Hash`);
|
|
|
|
CREATE INDEX `IX_Bookmark_CorrelationId` ON `Bookmarks` (`CorrelationId`);
|
|
|
|
CREATE INDEX `IX_Bookmark_Hash` ON `Bookmarks` (`Hash`);
|
|
|
|
CREATE INDEX `IX_Bookmark_Hash_CorrelationId_TenantId` ON `Bookmarks` (`Hash`, `CorrelationId`, `TenantId`);
|
|
|
|
CREATE INDEX `IX_Bookmark_TenantId` ON `Bookmarks` (`TenantId`);
|
|
|
|
CREATE INDEX `IX_Bookmark_WorkflowInstanceId` ON `Bookmarks` (`WorkflowInstanceId`);
|
|
|
|
CREATE UNIQUE INDEX `IX_WorkflowDefinition_DefinitionId_VersionId` ON `WorkflowDefinitions` (`DefinitionId`, `Version`);
|
|
|
|
CREATE INDEX `IX_WorkflowDefinition_IsLatest` ON `WorkflowDefinitions` (`IsLatest`);
|
|
|
|
CREATE INDEX `IX_WorkflowDefinition_IsPublished` ON `WorkflowDefinitions` (`IsPublished`);
|
|
|
|
CREATE INDEX `IX_WorkflowDefinition_Name` ON `WorkflowDefinitions` (`Name`);
|
|
|
|
CREATE INDEX `IX_WorkflowDefinition_Tag` ON `WorkflowDefinitions` (`Tag`);
|
|
|
|
CREATE INDEX `IX_WorkflowDefinition_TenantId` ON `WorkflowDefinitions` (`TenantId`);
|
|
|
|
CREATE INDEX `IX_WorkflowDefinition_Version` ON `WorkflowDefinitions` (`Version`);
|
|
|
|
CREATE INDEX `IX_WorkflowExecutionLogRecord_ActivityId` ON `WorkflowExecutionLogRecords` (`ActivityId`);
|
|
|
|
CREATE INDEX `IX_WorkflowExecutionLogRecord_ActivityType` ON `WorkflowExecutionLogRecords` (`ActivityType`);
|
|
|
|
CREATE INDEX `IX_WorkflowExecutionLogRecord_TenantId` ON `WorkflowExecutionLogRecords` (`TenantId`);
|
|
|
|
CREATE INDEX `IX_WorkflowExecutionLogRecord_Timestamp` ON `WorkflowExecutionLogRecords` (`Timestamp`);
|
|
|
|
CREATE INDEX `IX_WorkflowExecutionLogRecord_WorkflowInstanceId` ON `WorkflowExecutionLogRecords` (`WorkflowInstanceId`);
|
|
|
|
CREATE INDEX `IX_WorkflowInstance_ContextId` ON `WorkflowInstances` (`ContextId`);
|
|
|
|
CREATE INDEX `IX_WorkflowInstance_ContextType` ON `WorkflowInstances` (`ContextType`);
|
|
|
|
CREATE INDEX `IX_WorkflowInstance_CorrelationId` ON `WorkflowInstances` (`CorrelationId`);
|
|
|
|
CREATE INDEX `IX_WorkflowInstance_CreatedAt` ON `WorkflowInstances` (`CreatedAt`);
|
|
|
|
CREATE INDEX `IX_WorkflowInstance_DefinitionId` ON `WorkflowInstances` (`DefinitionId`);
|
|
|
|
CREATE INDEX `IX_WorkflowInstance_FaultedAt` ON `WorkflowInstances` (`FaultedAt`);
|
|
|
|
CREATE INDEX `IX_WorkflowInstance_FinishedAt` ON `WorkflowInstances` (`FinishedAt`);
|
|
|
|
CREATE INDEX `IX_WorkflowInstance_LastExecutedAt` ON `WorkflowInstances` (`LastExecutedAt`);
|
|
|
|
CREATE INDEX `IX_WorkflowInstance_Name` ON `WorkflowInstances` (`Name`);
|
|
|
|
CREATE INDEX `IX_WorkflowInstance_TenantId` ON `WorkflowInstances` (`TenantId`);
|
|
|
|
CREATE INDEX `IX_WorkflowInstance_WorkflowStatus` ON `WorkflowInstances` (`WorkflowStatus`);
|
|
|
|
CREATE INDEX `IX_WorkflowInstance_WorkflowStatus_DefinitionId` ON `WorkflowInstances` (`WorkflowStatus`, `DefinitionId`);
|
|
|
|
CREATE INDEX `IX_WorkflowInstance_WorkflowStatus_DefinitionId_Version` ON `WorkflowInstances` (`WorkflowStatus`, `DefinitionId`, `Version`);
|
|
|
|
INSERT INTO `__EFMigrationsHistory` (`MigrationId`, `ProductVersion`)
|
|
VALUES ('20210523093427_Initial', '5.0.10');
|
|
|
|
COMMIT;
|
|
|
|
START TRANSACTION;
|
|
|
|
ALTER TABLE `WorkflowInstances` MODIFY COLUMN `CorrelationId` varchar(255) CHARACTER SET utf8mb4 NOT NULL DEFAULT '';
|
|
|
|
ALTER TABLE `WorkflowInstances` ADD `LastExecutedActivityId` longtext CHARACTER SET utf8mb4 NULL;
|
|
|
|
ALTER TABLE `WorkflowDefinitions` ADD `OutputStorageProviderName` longtext CHARACTER SET utf8mb4 NULL;
|
|
|
|
INSERT INTO `__EFMigrationsHistory` (`MigrationId`, `ProductVersion`)
|
|
VALUES ('20210611200027_Update21', '5.0.10');
|
|
|
|
COMMIT;
|
|
|
|
START TRANSACTION;
|
|
|
|
ALTER TABLE `WorkflowDefinitions` DROP COLUMN `OutputStorageProviderName`;
|
|
|
|
ALTER TABLE `WorkflowInstances` RENAME `WorkflowInstances`;
|
|
|
|
ALTER TABLE `WorkflowExecutionLogRecords` RENAME `WorkflowExecutionLogRecords`;
|
|
|
|
ALTER TABLE `WorkflowDefinitions` RENAME `WorkflowDefinitions`;
|
|
|
|
ALTER TABLE `Bookmarks` RENAME `Bookmarks`;
|
|
|
|
INSERT INTO `__EFMigrationsHistory` (`MigrationId`, `ProductVersion`)
|
|
VALUES ('20210923112211_Update23', '5.0.10');
|
|
|
|
COMMIT;
|
|
|
|
START TRANSACTION;
|
|
|
|
ALTER TABLE `WorkflowInstances` ADD `DefinitionVersionId` longtext CHARACTER SET utf8mb4 NOT NULL;
|
|
|
|
ALTER TABLE `Bookmarks` MODIFY COLUMN `CorrelationId` varchar(255) CHARACTER SET utf8mb4 NOT NULL DEFAULT '';
|
|
|
|
INSERT INTO `__EFMigrationsHistory` (`MigrationId`, `ProductVersion`)
|
|
VALUES ('20211215100204_Update24', '5.0.10');
|
|
|
|
COMMIT;
|
|
|
|
START TRANSACTION;
|
|
|
|
ALTER TABLE `WorkflowInstances` MODIFY COLUMN `DefinitionVersionId` varchar(255) CHARACTER SET utf8mb4 NOT NULL;
|
|
|
|
CREATE INDEX `IX_WorkflowInstance_DefinitionVersionId` ON `WorkflowInstances` (`DefinitionVersionId`);
|
|
|
|
INSERT INTO `__EFMigrationsHistory` (`MigrationId`, `ProductVersion`)
|
|
VALUES ('20220120170050_Update241', '5.0.10');
|
|
|
|
COMMIT;
|
|
|
|
START TRANSACTION;
|
|
|
|
CREATE TABLE `Triggers` (
|
|
`Id` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`TenantId` varchar(255) CHARACTER SET utf8mb4 NULL,
|
|
`Hash` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`Model` longtext CHARACTER SET utf8mb4 NOT NULL,
|
|
`ModelType` longtext CHARACTER SET utf8mb4 NOT NULL,
|
|
`ActivityType` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`ActivityId` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`WorkflowDefinitionId` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
CONSTRAINT `PK_Triggers` PRIMARY KEY (`Id`)
|
|
) CHARACTER SET utf8mb4;
|
|
|
|
CREATE INDEX `IX_Trigger_ActivityId` ON `Triggers` (`ActivityId`);
|
|
|
|
CREATE INDEX `IX_Trigger_ActivityType` ON `Triggers` (`ActivityType`);
|
|
|
|
CREATE INDEX `IX_Trigger_ActivityType_TenantId_Hash` ON `Triggers` (`ActivityType`, `TenantId`, `Hash`);
|
|
|
|
CREATE INDEX `IX_Trigger_Hash` ON `Triggers` (`Hash`);
|
|
|
|
CREATE INDEX `IX_Trigger_Hash_TenantId` ON `Triggers` (`Hash`, `TenantId`);
|
|
|
|
CREATE INDEX `IX_Trigger_TenantId` ON `Triggers` (`TenantId`);
|
|
|
|
CREATE INDEX `IX_Trigger_WorkflowDefinitionId` ON `Triggers` (`WorkflowDefinitionId`);
|
|
|
|
INSERT INTO `__EFMigrationsHistory` (`MigrationId`, `ProductVersion`)
|
|
VALUES ('20220120204150_Update25', '5.0.10');
|
|
|
|
COMMIT;
|
|
|
|
START TRANSACTION;
|
|
|
|
ALTER TABLE `WorkflowDefinitions` ADD `CreatedAt` datetime(6) NOT NULL DEFAULT '0001-01-01 00:00:00';
|
|
|
|
INSERT INTO `__EFMigrationsHistory` (`MigrationId`, `ProductVersion`)
|
|
VALUES ('20220512203646_Update28', '5.0.10');
|
|
|
|
COMMIT;
|
|
|
|
|
|
-- webhooks
|
|
|
|
CREATE TABLE IF NOT EXISTS `__EFMigrationsHistory` (
|
|
`MigrationId` varchar(150) CHARACTER SET utf8mb4 NOT NULL,
|
|
`ProductVersion` varchar(32) CHARACTER SET utf8mb4 NOT NULL,
|
|
CONSTRAINT `PK___EFMigrationsHistory` PRIMARY KEY (`MigrationId`)
|
|
) CHARACTER SET utf8mb4;
|
|
|
|
START TRANSACTION;
|
|
|
|
ALTER DATABASE CHARACTER SET utf8mb4;
|
|
|
|
CREATE TABLE `WebhookDefinitions` (
|
|
`Id` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`TenantId` varchar(255) CHARACTER SET utf8mb4 NULL,
|
|
`Name` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`Path` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`Description` varchar(255) CHARACTER SET utf8mb4 NULL,
|
|
`PayloadTypeName` varchar(255) CHARACTER SET utf8mb4 NULL,
|
|
`IsEnabled` tinyint(1) NOT NULL,
|
|
CONSTRAINT `PK_WebhookDefinitions` PRIMARY KEY (`Id`)
|
|
) CHARACTER SET utf8mb4;
|
|
|
|
CREATE INDEX `IX_WebhookDefinition_Description` ON `WebhookDefinitions` (`Description`);
|
|
|
|
CREATE INDEX `IX_WebhookDefinition_IsEnabled` ON `WebhookDefinitions` (`IsEnabled`);
|
|
|
|
CREATE INDEX `IX_WebhookDefinition_Name` ON `WebhookDefinitions` (`Name`);
|
|
|
|
CREATE INDEX `IX_WebhookDefinition_Path` ON `WebhookDefinitions` (`Path`);
|
|
|
|
CREATE INDEX `IX_WebhookDefinition_PayloadTypeName` ON `WebhookDefinitions` (`PayloadTypeName`);
|
|
|
|
CREATE INDEX `IX_WebhookDefinition_TenantId` ON `WebhookDefinitions` (`TenantId`);
|
|
|
|
INSERT INTO `__EFMigrationsHistory` (`MigrationId`, `ProductVersion`)
|
|
VALUES ('20210604065041_Initial', '5.0.10');
|
|
|
|
COMMIT;
|
|
|
|
|
|
-- workflow-settings
|
|
|
|
CREATE TABLE IF NOT EXISTS `__EFMigrationsHistory` (
|
|
`MigrationId` varchar(150) CHARACTER SET utf8mb4 NOT NULL,
|
|
`ProductVersion` varchar(32) CHARACTER SET utf8mb4 NOT NULL,
|
|
CONSTRAINT `PK___EFMigrationsHistory` PRIMARY KEY (`MigrationId`)
|
|
) CHARACTER SET utf8mb4;
|
|
|
|
START TRANSACTION;
|
|
|
|
ALTER DATABASE CHARACTER SET utf8mb4;
|
|
|
|
CREATE TABLE `WorkflowSettings` (
|
|
`Id` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
|
|
`WorkflowBlueprintId` varchar(255) CHARACTER SET utf8mb4 NULL,
|
|
`Key` varchar(255) CHARACTER SET utf8mb4 NULL,
|
|
`Value` varchar(255) CHARACTER SET utf8mb4 NULL,
|
|
CONSTRAINT `PK_WorkflowSettings` PRIMARY KEY (`Id`)
|
|
) CHARACTER SET utf8mb4;
|
|
|
|
CREATE INDEX `IX_WorkflowSetting_Key` ON `WorkflowSettings` (`Key`);
|
|
|
|
CREATE INDEX `IX_WorkflowSetting_Value` ON `WorkflowSettings` (`Value`);
|
|
|
|
CREATE INDEX `IX_WorkflowSetting_WorkflowBlueprintId` ON `WorkflowSettings` (`WorkflowBlueprintId`);
|
|
|
|
INSERT INTO `__EFMigrationsHistory` (`MigrationId`, `ProductVersion`)
|
|
VALUES ('20210730112043_Initial', '5.0.10');
|
|
|
|
COMMIT;
|
|
|