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") }