From 58bca5af270094b6516dec3dae65a1984209de0b Mon Sep 17 00:00:00 2001 From: Benjamin Bertrand <benjamin.bertrand@esss.se> Date: Wed, 6 Mar 2019 13:15:21 +0100 Subject: [PATCH] Fix database migration when the database is empty --- .../versions/ac04850e5f68_add_is_ioc_field.py | 23 ++++++++++--------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/migrations/versions/ac04850e5f68_add_is_ioc_field.py b/migrations/versions/ac04850e5f68_add_is_ioc_field.py index e9bc161..2c96468 100644 --- a/migrations/versions/ac04850e5f68_add_is_ioc_field.py +++ b/migrations/versions/ac04850e5f68_add_is_ioc_field.py @@ -32,17 +32,18 @@ def upgrade(): conn = op.get_bind() res = conn.execute("SELECT id FROM tag WHERE name = 'IOC';") row = res.fetchone() - ioc_tag_id = row[0] - res.close() - res = conn.execute( - f"""SELECT interface.host_id FROM interface - INNER JOIN interfacetags ON interface.id = interfacetags.interface_id - WHERE interfacetags.tag_id = {ioc_tag_id}; - """ - ) - results = res.fetchall() - for result in results: - op.execute(host.update().where(host.c.id == result[0]).values(is_ioc=True)) + if row is not None: + ioc_tag_id = row[0] + res.close() + res = conn.execute( + f"""SELECT interface.host_id FROM interface + INNER JOIN interfacetags ON interface.id = interfacetags.interface_id + WHERE interfacetags.tag_id = {ioc_tag_id}; + """ + ) + results = res.fetchall() + for result in results: + op.execute(host.update().where(host.c.id == result[0]).values(is_ioc=True)) op.drop_table("interfacetags") op.drop_table("tag") -- GitLab