aboutsummaryrefslogtreecommitdiff
path: root/internal/embedded/generate.go
blob: bb6420060081d4808d2324d4003b8968319a1e55 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
//go:build ignore

package main

import (
	"context"
	"encoding/json"
	"flag"
	"log"
	"os"

	"golang.org/x/exp/slog"
	"xeiaso.net/v4/internal"
)

func main() {
	flag.Parse()
	internal.Slog()

	posts, err := internal.LoadAll(context.Background())
	if err != nil {
		log.Fatal(err)
	}
	slog.Info("loaded posts", "count", len(posts))

	fout, err := os.Create("posts.json")
	if err != nil {
		log.Fatal(err)
	}
	defer fout.Close()

	enc := json.NewEncoder(fout)
	enc.SetIndent("", "  ")
	if err := enc.Encode(posts); err != nil {
		log.Fatal(err)
	}

	slog.Info("wrote posts.json")
}