--- /dev/null
+UPDATE node_data\r
+JOIN nodes ON nodes.id = node_data.node_id\r
+SET external = "{}"\r
+WHERE\r
+ node_data.external IS NULL\r
+ AND nodes.available_for_rent = 1;\r
+\r
+UPDATE node_data\r
+JOIN nodes ON nodes.id = node_data.node_id\r
+SET external = JSON_SET(external, '$.export_portals', JSON_ARRAY())\r
+WHERE\r
+ NOT JSON_CONTAINS_PATH(external, 'all', '$.export_portals')\r
+ AND nodes.available_for_rent = 1;\r
+\r
+UPDATE node_data\r
+JOIN nodes ON nodes.id = node_data.node_id\r
+SET external = JSON_ARRAY_APPEND(external, '$.export_portals', 'hpm-api')\r
+WHERE\r
+ NOT JSON_CONTAINS(external, '["hpm-api"]', '$.export_portals')\r
+ AND nodes.available_for_rent = 1;\r
--- /dev/null
+UPDATE node_data\r
+JOIN nodes ON nodes.id = node_data.node_id\r
+SET external = JSON_REMOVE(external, JSON_UNQUOTE(JSON_SEARCH(external, 'one', 'hpm-api', NULL, '$.export_portals')))\r
+WHERE\r
+ JSON_CONTAINS(external, '["hpm-api"]', '$.export_portals')\r
+ AND nodes.available_for_rent = 1;\r
+\r
+UPDATE node_data\r
+JOIN nodes ON nodes.id = node_data.node_id\r
+SET external = JSON_REMOVE(external, '$.export_portals')\r
+WHERE\r
+ external->'$.export_portals' = JSON_ARRAY()\r
+ AND nodes.available_for_rent = 1;\r
+\r
+UPDATE node_data\r
+JOIN nodes ON nodes.id = node_data.node_id\r
+SET external = NULL\r
+WHERE\r
+ external = JSON_OBJECT()\r
+ AND nodes.available_for_rent = 1;\r