From 8473b1f0a5df4d67a4e3033104d4e867ada66a42 Mon Sep 17 00:00:00 2001 From: Hongbo Wu Date: Thu, 20 Jul 2023 17:38:40 +0800 Subject: [PATCH] add event_types to rules table and existing data --- .../0117.do.add_event_types_to_rules.sql | 21 +++++++++++++++++++ .../0117.undo.add_event_types_to_rules.sql | 20 ++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100755 packages/db/migrations/0117.do.add_event_types_to_rules.sql create mode 100755 packages/db/migrations/0117.undo.add_event_types_to_rules.sql diff --git a/packages/db/migrations/0117.do.add_event_types_to_rules.sql b/packages/db/migrations/0117.do.add_event_types_to_rules.sql new file mode 100755 index 000000000..b96e52451 --- /dev/null +++ b/packages/db/migrations/0117.do.add_event_types_to_rules.sql @@ -0,0 +1,21 @@ +-- Type: DO +-- Name: add_event_types_to_rules +-- Description: Add event_types field to rules table + +BEGIN; + +ALTER TABLE omnivore.rules ADD COLUMN event_types text[] NOT NULL DEFAULT '{PAGE_CREATED,PAGE_UPDATED}'; + +-- Add event_types to existing rules +UPDATE omnivore.rules + SET + event_types = '{PAGE_CREATED}', filter = REPLACE (filter, 'event:created', '') + WHERE + filter LIKE '%event:created%'; +UPDATE omnivore.rules + SET + event_types = '{PAGE_UPDATED}', filter = REPLACE (filter, 'event:updated', '') + WHERE + filter LIKE '%event:updated%'; + +COMMIT; diff --git a/packages/db/migrations/0117.undo.add_event_types_to_rules.sql b/packages/db/migrations/0117.undo.add_event_types_to_rules.sql new file mode 100755 index 000000000..4c8204de5 --- /dev/null +++ b/packages/db/migrations/0117.undo.add_event_types_to_rules.sql @@ -0,0 +1,20 @@ +-- Type: UNDO +-- Name: add_event_types_to_rules +-- Description: Add event_types field to rules table + +BEGIN; + +UPDATE omnivore.rules + SET + filter = CONCAT ('event:created ', filter) + WHERE + 'PAGE_CREATED' = ALL (event_types); +UPDATE omnivore.rules + SET + filter = CONCAT ('event:updated ', filter) + WHERE + 'PAGE_UPDATED' = ALL (event_types); + +ALTER TABLE omnivore.rules DROP COLUMN event_types; + +COMMIT;