grim/devweb
Clone
Summary
Browse
Changes
Graph
move back to vite and update all the things to vue3 style
draft
2021-01-25, Gary Kramlich
842aeaa29bfd
move back to vite and update all the things to vue3 style
package
db
import
(
"database/sql"
"github.com/lopezator/migrator"
"keep.imfreedom.org/grim/devweb/db/scheme"
)
type
Cmd
struct
{
Options
}
func
migrationFromFile
(
filename
string
)
*
migrator
.
Migration
{
return
&
migrator
.
Migration
{
Name
:
filename
,
Func
:
func
(
tx
*
sql
.
Tx
)
error
{
data
,
err
:=
scheme
.
FSString
(
false
,
"/"
+
filename
)
if
err
!=
nil
{
return
err
}
if
_
,
err
:=
tx
.
Exec
(
data
);
err
!=
nil
{
return
err
}
return
nil
},
}
}
func
(
c
*
Cmd
)
Run
()
error
{
err
:=
Setup
(
c
.
Options
.
Driver
,
c
.
Options
.
Options
)
if
err
!=
nil
{
return
err
}
m
,
err
:=
migrator
.
New
(
migrator
.
Migrations
(
migrationFromFile
(
"01-initial.sql"
),
))
if
err
!=
nil
{
Teardown
()
return
err
}
if
err
:=
m
.
Migrate
(
_db
.
DB
);
err
!=
nil
{
Teardown
()
return
err
}
return
Teardown
()
}