summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--http.go4
-rw-r--r--main.go17
-rw-r--r--repomap.go53
3 files changed, 18 insertions, 56 deletions
diff --git a/http.go b/http.go
index 5c24e51..5cae805 100644
--- a/http.go
+++ b/http.go
@@ -4,6 +4,7 @@ import (
"fmt"
"net/http"
"os"
+ "path/filepath"
"strings"
"go.wit.com/log"
@@ -61,7 +62,8 @@ func okHandler(w http.ResponseWriter, r *http.Request) {
return
}
if tmp == "/register" {
- regfile, _ := os.OpenFile("/home/jcarr/regfile.log", os.O_RDWR|os.O_CREATE|os.O_APPEND, 0666)
+ fname := filepath.Join(LIBDIR, "regfile.log")
+ regfile, _ := os.OpenFile(fname, os.O_RDWR|os.O_CREATE|os.O_APPEND, 0666)
if registerClient(regfile, r) {
fmt.Fprintln(w, "OK")
} else {
diff --git a/main.go b/main.go
index d5123da..40c8449 100644
--- a/main.go
+++ b/main.go
@@ -29,6 +29,7 @@ var forge *forgepb.Forge
var HOSTNAME string = "go.wit.com"
var REPOMAP string = "/etc/gowebd/repomap"
var FOOTER string = "/etc/gowebd/footer.html"
+var LIBDIR string = "/var/lib/gowebd/"
func main() {
if argv.RepoMap != "" {
@@ -37,15 +38,19 @@ func main() {
if argv.Hostname != "" {
HOSTNAME = argv.Hostname
}
- forge = forgepb.Init()
+ forge = forgepb.InitPB()
+
versionMap = make(map[string]string)
+ repoMap = make(map[string]string)
- all := forge.Repos.SortByGoPath()
- for all.Scan() {
- repo := all.Next()
+ /*
+ all := forge.Repos.SortByGoPath()
+ for all.Scan() {
+ repo := all.Next()
- log.Info("forge protobuf has:", repo.GoPath)
- }
+ log.Info("forge protobuf has:", repo.GoPath)
+ }
+ */
// parse the repomap file
readRepomap()
diff --git a/repomap.go b/repomap.go
index b70f894..5219996 100644
--- a/repomap.go
+++ b/repomap.go
@@ -4,12 +4,9 @@ package main
// this file defines what repositories show up on go.wit.com
import (
- "bufio"
"fmt"
"net/http"
"os"
- "path/filepath"
- "sort"
"strings"
"go.wit.com/log"
@@ -47,7 +44,6 @@ func findkey(url string) (string, string) {
func readRepomap() {
var pfile []byte
var err error
- repoMap = make(map[string]string)
pfile, err = os.ReadFile(REPOMAP)
if err != nil {
@@ -65,59 +61,18 @@ func readRepomap() {
if len(fields) < 2 {
continue
}
- repo := fields[0]
- realurl := fields[1]
- repoMap[repo] = realurl
+ gopath := fields[0]
+ giturl := fields[1]
+ repoMap[gopath] = giturl
- // log.Info("repo =", repo, "real url =", realurl)
- }
-
- for repo, _ := range repoMap {
- // log.Info("repo =", repo, "real url =", url)
- keysSorted = append(keysSorted, repo)
- }
- log.Info("sorted:")
- sort.Strings(keysSorted)
- // sort.Reverse(keys)
- sort.Sort(sort.Reverse(sort.StringSlice(keysSorted)))
- for _, gopath := range keysSorted {
repo := forge.Repos.FindByGoPath(gopath)
if repo != nil {
version := repo.GetLastTag()
- age := forge.NewestAge(repo)
+ age := repo.NewestAge()
log.Info("repo =", gopath, "real url =", repoMap[gopath], version, formatDuration(age))
versionMap[gopath] = version + " " + formatDuration(age)
- /*
- all := repo.Tags.SortByAge()
- for all.Scan() {
- r := all.Next()
- dur := time.Since(r.GetAuthordate().AsTime())
- name := r.Refname
- log.Info("tag =", name, formatDuration(dur))
- }
- */
} else {
log.Info("repo =", gopath, "real url =", repoMap[gopath], "not found")
}
}
}
-
-func readVersionFile() {
- file, err := os.Open(filepath.Join(os.Getenv("HOME"), "go.wit.com.versions"))
- if err != nil {
- return
- }
- defer file.Close()
-
- scanner := bufio.NewScanner(file)
- for scanner.Scan() {
- tmp := scanner.Text()
- fields := strings.Fields(tmp)
- if len(fields) < 2 {
- continue
- }
- log.Println("readVersionFile() fields[0] =", fields[0])
- // log.Println("readVersionFile() fields[1:] =", fields[1:])
- versionMap[fields[0]] = strings.Join(fields[1:], " ")
- }
-}