aboutsummaryrefslogtreecommitdiff
path: root/cmd/convert/main.go
diff options
context:
space:
mode:
authorMitch Riedstra <mitch@riedstra.us>2020-09-26 20:59:34 -0400
committerMitch Riedstra <mitch@riedstra.us>2020-09-26 21:01:33 -0400
commitcddf7ed45147869a9d2eee2e40f59a97c472ea72 (patch)
tree551e04c6018a46b4288d9ea2e7ee3ffb666c271b /cmd/convert/main.go
parent09979dcab01643349cee425b71fa3b4db24f8d60 (diff)
downloadgo-website-cddf7ed45147869a9d2eee2e40f59a97c472ea72.tar.gz
go-website-cddf7ed45147869a9d2eee2e40f59a97c472ea72.tar.xz
Split up http related stuff out of the page library.
Make it an interface. Rename page to be 'local' reflecting that it reads the website off the local disk. Update the build script to include the go version. Switch to gorilla/mux Remove the convert command, since we're no longer utilizing that old layout or have any need to convert from it.
Diffstat (limited to 'cmd/convert/main.go')
-rw-r--r--cmd/convert/main.go94
1 files changed, 0 insertions, 94 deletions
diff --git a/cmd/convert/main.go b/cmd/convert/main.go
deleted file mode 100644
index 3cc4135..0000000
--- a/cmd/convert/main.go
+++ /dev/null
@@ -1,94 +0,0 @@
-package main
-
-import (
- "flag"
- "io/ioutil"
- "log"
- "os"
- "os/exec"
- "path/filepath"
- "regexp"
-
- "gopkg.in/yaml.v2"
-)
-
-// Assumes we're getting a pageName ending in .page
-func convertPage(newDir, pageName string) error {
- yamlName := pageName[:len(pageName)-5] + ".yml"
- headName := pageName[:len(pageName)-5] + ".head"
- newPageName := pageName[:len(pageName)-5] + ".md"
- hasHead := false
- headBytes := []byte{}
- if _, err := os.Stat(headName); err == nil {
- hasHead = true
- }
-
- if hasHead {
- var err error
- headBytes, err = ioutil.ReadFile(headName)
- if err != nil {
- return err
- }
- }
-
- y, err := yaml.Marshal(map[string]string{
- "head": string(headBytes),
- })
- if err != nil {
- return err
- }
-
- cmd := exec.Command("mkdir", "-p", filepath.Join(newDir, filepath.Dir(pageName)))
- cmd.Stdout = os.Stdout
- cmd.Stderr = os.Stderr
- err = cmd.Run()
- if err != nil {
- return err
- }
- cmd = exec.Command("cp", "-v", pageName, filepath.Join(newDir, newPageName))
- cmd.Stdout = os.Stdout
- cmd.Stderr = os.Stderr
- err = cmd.Run()
- if err != nil {
- return err
- }
-
- if len(headBytes) == 0 {
- return nil
- } else {
- return ioutil.WriteFile(newDir+"/"+yamlName, y, 0644)
- }
-}
-
-func main() {
- fl := flag.NewFlagSet("Website converter", flag.ExitOnError)
- origDirectory := fl.String("d", ".", "Directory to read from")
- newDirectory := fl.String("D", ".", "Directory to write to")
- _ = fl.Parse(os.Args[1:])
-
- newDir, _ := filepath.Abs(*newDirectory)
- origDir, _ := filepath.Abs(*origDirectory)
-
- if err := os.Chdir(origDir); err != nil {
- log.Fatal(err)
- }
-
- pageRe := regexp.MustCompile(`\.page$`)
- _ = filepath.Walk(".", func(path string, info os.FileInfo, err error) error {
- if err != nil {
- // Prevents panic
- log.Println(err)
- return err
- }
-
- if pageRe.MatchString(info.Name()) {
- if err := convertPage(newDir, path); err != nil {
- log.Println(err)
- return err
- }
- }
-
- return nil
- })
-
-}