weiro/main.go

61 lines
1.2 KiB
Go
Raw Normal View History

2026-02-18 11:07:18 +00:00
package main
import (
2026-02-19 11:29:44 +00:00
"context"
2026-02-18 11:07:18 +00:00
"log"
2026-02-20 06:39:58 +00:00
"os"
2026-02-18 11:07:18 +00:00
2026-02-19 11:29:44 +00:00
"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"
2026-02-18 11:07:18 +00:00
)
func main() {
2026-02-19 11:29:44 +00:00
dbp, err := db.New("build/weiro.db")
2026-02-18 11:07:18 +00:00
if err != nil {
log.Fatal(err)
}
2026-02-19 11:29:44 +00:00
defer dbp.Close()
2026-02-18 11:07:18 +00:00
2026-02-19 11:29:44 +00:00
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)
}
2026-02-19 10:21:27 +00:00
}
2026-02-19 11:29:44 +00:00
importerSvc := importer.New(dbp)
publisherSvc := publisher.New(dbp)
ctx := models.WithUser(context.Background(), user)
site, err := importerSvc.Import(ctx, "_test-site")
2026-02-18 11:07:18 +00:00
if err != nil {
log.Fatal(err)
}
2026-02-19 11:29:44 +00:00
target := models.SitePublishTarget{
SiteID: site.ID,
BaseURL: "https://jolly-boba-9e2486.netlify.app",
2026-02-20 06:39:58 +00:00
TargetType: "netlify",
TargetRef: "55c878a7-189e-42cf-aa02-5c60908143f3",
TargetKey: os.Getenv("NETLIFY_AUTH_TOKEN"),
2026-02-19 11:29:44 +00:00
}
if err := dbp.SavePublishTarget(ctx, &target); err != nil {
log.Fatal(err)
}
if err := publisherSvc.Publish(ctx, site.ID); err != nil {
2026-02-18 11:07:18 +00:00
log.Fatal(err)
}
log.Println("Done")
}