blockbook/build/templates/generate.go

42 lines
899 B
Go
Raw Normal View History

2018-07-24 08:16:09 -06:00
package main
import (
"fmt"
"os"
"path/filepath"
"strings"
2020-02-26 09:17:43 -07:00
2021-04-05 12:50:52 -06:00
"spacecruft.org/spacecruft/blockbook/build/tools"
2018-07-24 08:16:09 -06:00
)
const (
configsDir = "configs"
templateDir = "build/templates"
outputDir = "build/pkg-defs"
2018-07-24 08:16:09 -06:00
)
func main() {
if len(os.Args) < 2 {
var coins []string
filepath.Walk(filepath.Join(configsDir, "coins"), func(path string, info os.FileInfo, err error) error {
n := strings.TrimSuffix(info.Name(), ".json")
if n != info.Name() {
coins = append(coins, n)
}
return nil
})
fmt.Fprintf(os.Stderr, "Usage: %s coin\nCoin is one of:\n%v\n", filepath.Base(os.Args[0]), coins)
2018-07-24 08:16:09 -06:00
os.Exit(1)
}
coin := os.Args[1]
config, err := build.LoadConfig(configsDir, coin)
2018-07-24 08:16:09 -06:00
if err == nil {
err = build.GeneratePackageDefinitions(config, templateDir, outputDir)
2018-07-24 08:16:09 -06:00
}
if err != nil {
panic(err)
}
fmt.Printf("Package files for %v generated to %v\n", coin, outputDir)
2018-07-24 08:16:09 -06:00
}