2026-02-21 21:38:20 +00:00
|
|
|
package main
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"encoding/json"
|
|
|
|
|
"fmt"
|
2026-03-17 08:53:58 +00:00
|
|
|
|
|
|
|
|
coreio "forge.lthn.ai/core/go-io"
|
2026-02-21 21:38:20 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
|
|
func main() {
|
|
|
|
|
// Read package.json
|
2026-03-17 08:53:58 +00:00
|
|
|
data, err := coreio.Read(coreio.Local, "package.json")
|
2026-02-21 21:38:20 +00:00
|
|
|
if err != nil {
|
|
|
|
|
fmt.Println("Error reading package.json, skipping version file generation.")
|
2026-03-17 08:53:58 +00:00
|
|
|
return
|
2026-02-21 21:38:20 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Parse package.json
|
|
|
|
|
var pkg struct {
|
|
|
|
|
Version string `json:"version"`
|
|
|
|
|
}
|
2026-03-17 08:53:58 +00:00
|
|
|
if err := json.Unmarshal([]byte(data), &pkg); err != nil {
|
2026-02-21 21:38:20 +00:00
|
|
|
fmt.Println("Error parsing package.json, skipping version file generation.")
|
2026-03-17 08:53:58 +00:00
|
|
|
return
|
2026-02-21 21:38:20 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Create the version file
|
|
|
|
|
content := fmt.Sprintf("package updater\n\n// Generated by go:generate. DO NOT EDIT.\n\nconst PkgVersion = %q\n", pkg.Version)
|
2026-03-17 08:53:58 +00:00
|
|
|
err = coreio.Write(coreio.Local, "version.go", content)
|
2026-02-21 21:38:20 +00:00
|
|
|
if err != nil {
|
|
|
|
|
fmt.Printf("Error writing version file: %v\n", err)
|
2026-03-17 08:53:58 +00:00
|
|
|
return
|
2026-02-21 21:38:20 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
fmt.Println("Generated version.go with version:", pkg.Version)
|
|
|
|
|
}
|