61 lines
1.2 KiB
Go
61 lines
1.2 KiB
Go
package main
|
|
|
|
import (
|
|
"context"
|
|
"log"
|
|
"os"
|
|
|
|
"lmika.dev/lmika/weiro/models"
|
|
"lmika.dev/lmika/weiro/providers/db"
|
|
"lmika.dev/lmika/weiro/services/importer"
|
|
"lmika.dev/lmika/weiro/services/publisher"
|
|
|
|
_ "modernc.org/sqlite"
|
|
)
|
|
|
|
func main() {
|
|
dbp, err := db.New("build/weiro.db")
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
defer dbp.Close()
|
|
|
|
user, err := dbp.SelectUserByUsername(context.Background(), "testuser")
|
|
if err != nil {
|
|
user = models.User{
|
|
Username: "testuser",
|
|
PasswordHashed: []byte("changeme"),
|
|
}
|
|
if err := dbp.SaveUser(context.Background(), &user); err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
}
|
|
|
|
importerSvc := importer.New(dbp)
|
|
publisherSvc := publisher.New(dbp)
|
|
|
|
ctx := models.WithUser(context.Background(), user)
|
|
|
|
site, err := importerSvc.Import(ctx, "_test-site")
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
|
|
target := models.SitePublishTarget{
|
|
SiteID: site.ID,
|
|
BaseURL: "https://jolly-boba-9e2486.netlify.app",
|
|
TargetType: "netlify",
|
|
TargetRef: "55c878a7-189e-42cf-aa02-5c60908143f3",
|
|
TargetKey: os.Getenv("NETLIFY_AUTH_TOKEN"),
|
|
}
|
|
if err := dbp.SavePublishTarget(ctx, &target); err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
|
|
if err := publisherSvc.Publish(ctx, site.ID); err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
|
|
log.Println("Done")
|
|
}
|