32 lines
1.4 KiB
SQL
32 lines
1.4 KiB
SQL
ALTER TABLE scenarios
|
|
ADD COLUMN scenario_key VARCHAR(128) NULL AFTER tenant_id,
|
|
ADD COLUMN public_key VARCHAR(128) NULL AFTER scenario_key,
|
|
ADD COLUMN allowed_origins JSON NULL AFTER public_key;
|
|
|
|
UPDATE scenarios
|
|
SET scenario_key = CONCAT('scenario-', id),
|
|
public_key = CONCAT('pk_', REPLACE(UUID(), '-', '')),
|
|
allowed_origins = JSON_ARRAY();
|
|
|
|
ALTER TABLE scenarios
|
|
MODIFY scenario_key VARCHAR(128) NOT NULL,
|
|
MODIFY public_key VARCHAR(128) NOT NULL,
|
|
MODIFY allowed_origins JSON NOT NULL,
|
|
ADD UNIQUE KEY uk_scenarios_scenario_key (scenario_key),
|
|
ADD UNIQUE KEY uk_scenarios_public_key (public_key);
|
|
|
|
CREATE TABLE public_run_sessions (
|
|
id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
tenant_id BIGINT UNSIGNED NOT NULL,
|
|
run_id BIGINT UNSIGNED NOT NULL,
|
|
token_hash VARCHAR(64) NOT NULL,
|
|
expires_at DATETIME(3) NOT NULL,
|
|
created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
|
|
updated_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3),
|
|
PRIMARY KEY (id),
|
|
UNIQUE KEY uk_public_run_sessions_token (token_hash),
|
|
KEY idx_public_run_sessions_run (tenant_id, run_id),
|
|
CONSTRAINT fk_public_sessions_tenant FOREIGN KEY (tenant_id) REFERENCES tenants(id),
|
|
CONSTRAINT fk_public_sessions_run FOREIGN KEY (run_id) REFERENCES sop_runs(id) ON DELETE CASCADE
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|