knotserver: add ability to run migrations on knots #884

merged
opened by oppi.li targeting master from op/wonqmpyrknoq
Changed files
+11 -4
knotserver
db
+11 -4
knotserver/db/db.go
··· 32 return nil, err 33 } 34 35 - // NOTE: If any other migration is added here, you MUST 36 - // copy the pattern in appview: use a single sql.Conn 37 - // for every migration. 38 39 - _, err = db.Exec(` 40 create table if not exists known_dids ( 41 did text primary key 42 ); ··· 62 created integer not null default (strftime('%s', 'now')), 63 primary key (rkey, nsid) 64 ); 65 `) 66 if err != nil { 67 return nil, err
··· 32 return nil, err 33 } 34 35 + conn, err := db.Conn(ctx) 36 + if err != nil { 37 + return nil, err 38 + } 39 + defer conn.Close() 40 41 + _, err = conn.ExecContext(ctx, ` 42 create table if not exists known_dids ( 43 did text primary key 44 ); ··· 64 created integer not null default (strftime('%s', 'now')), 65 primary key (rkey, nsid) 66 ); 67 + 68 + create table if not exists migrations ( 69 + id integer primary key autoincrement, 70 + name text unique 71 + ); 72 `) 73 if err != nil { 74 return nil, err