lnbits-legend/lnbits/extensions/gerty/migrations.py

106 lines
2.3 KiB
Python
Raw Normal View History

import time
2023-01-05 22:21:40 +00:00
2022-09-23 14:38:55 +01:00
async def m001_initial(db):
"""
Initial Gertys table.
2022-09-23 14:38:55 +01:00
"""
await db.execute(
"""
CREATE TABLE gerty.gertys (
id TEXT PRIMARY KEY,
2022-11-24 23:31:22 +00:00
wallet TEXT NOT NULL,
2022-09-29 15:08:01 +01:00
refresh_time INT,
2022-09-26 10:30:48 +01:00
name TEXT NOT NULL,
lnbits_wallets TEXT,
2022-09-26 16:16:41 +01:00
mempool_endpoint TEXT,
2022-09-26 10:30:48 +01:00
exchange TEXT,
display_preferences TEXT
2022-09-23 14:38:55 +01:00
);
"""
2022-10-20 16:31:09 +01:00
)
2022-11-07 15:00:45 +00:00
async def m002_add_utc_offset_col(db):
"""
support for UTC offset
"""
2022-11-07 15:00:45 +00:00
await db.execute("ALTER TABLE gerty.gertys ADD COLUMN utc_offset INT;")
async def m003_add_gerty_model_col(db):
"""
support for Gerty model col
"""
2022-11-24 19:27:12 +00:00
await db.execute("ALTER TABLE gerty.gertys ADD COLUMN type TEXT;")
#########MEMPOOL MIGRATIONS########
2022-11-24 19:27:12 +00:00
async def m004_initial(db):
"""
Initial Gertys table.
"""
await db.execute(
"""
CREATE TABLE gerty.mempool (
2022-12-08 13:45:38 +00:00
id TEXT PRIMARY KEY,
mempool_endpoint TEXT NOT NULL,
2022-11-24 23:31:22 +00:00
endpoint TEXT NOT NULL,
2022-11-24 19:27:12 +00:00
data TEXT NOT NULL,
time TIMESTAMP
);
"""
)
2022-12-16 10:36:49 +00:00
2022-12-16 12:38:14 +00:00
2022-12-16 10:36:49 +00:00
async def m005_add_gerty_model_col(db):
"""
support for Gerty model col
"""
2022-12-16 12:38:14 +00:00
await db.execute("ALTER TABLE gerty.gertys ADD COLUMN urls TEXT;")
2023-01-05 22:21:40 +00:00
async def m006_add_gerty_model_col(db):
"""
Add UUID ID's to links and migrates existing data
"""
await db.execute("ALTER TABLE gerty.mempool RENAME TO mempool_old")
await db.execute(
f"""
CREATE TABLE gerty.mempool (
id TEXT PRIMARY KEY,
mempool_endpoint TEXT NOT NULL,
endpoint TEXT NOT NULL,
data TEXT NOT NULL,
time FLOAT
);
"""
)
for row in [
list(row) for row in await db.fetchall("SELECT * FROM gerty.mempool_old")
]:
await db.execute(
"""
INSERT INTO gerty.mempool (
id,
mempool_endpoint,
endpoint,
data,
time
)
VALUES (?, ?, ?, ?, ?)
""",
(
row[0],
row[1],
row[2],
row[3],
time.time(),
),
)
2023-01-05 22:21:40 +00:00
await db.execute("DROP TABLE gerty.mempool_old")