oficina / docs Public

Clone
git clone https://amadan.net/oficina/docs

Plain git — no account needed to clone.

Download

Download this file

1package main
2
3import (
4 "context"
5 "flag"
6 "fmt"
7 "io"
8 "log/slog"
9
10 "github.com/carlosframework/docs/internal/docs"
11)
12
13func runContentMaintenance(ctx context.Context, args []string, getenv func(string) string, logger *slog.Logger) error {
14 flags := flag.NewFlagSet("docs-seal", flag.ContinueOnError)
15 flags.SetOutput(io.Discard)
16 path := flags.String("db", "", "")
17 fingerprint := flags.String("expect-fingerprint", "", "")
18 scrub := flags.Bool("scrub", false, "")
19 if err := flags.Parse(args); err != nil {
20 return err
21 }
22 if flags.NArg() != 0 || *path == "" || *fingerprint == "" {
23 return fmt.Errorf("docs-seal: -db, -expect-fingerprint")
24 }
25 return docs.MaintainContent(ctx, docs.ContentMaintenanceConfig{DBPath: *path, ContentKey: getenv("DOCS_CONTENT_KEY"), ExpectedFingerprint: *fingerprint, Scrub: *scrub, Logger: logger})
26}
27