Changes
4 changed files (+60/-10)
-
-
@@ -12,6 +12,7 @@ Repo struct {ScanPath string `yaml:"scanPath"` Readme []string `yaml:"readme"` MainBranch []string `yaml:"mainBranch"` Ignore []string `yaml:"ignore,omitempty"` } `yaml:"repo"` Dirs struct { Templates string `yaml:"templates"`
-
-
-
@@ -39,6 +39,9 @@ - README.mdmainBranch: - master - main ignore: - foo - bar dirs: templates: ./templates static: ./static
-
@@ -56,6 +59,7 @@ • repo.scanPath: where all your git repos live (or die). legit doesn'ttraverse subdirs yet. • repo.readme: readme files to look for. Markdown isn't rendered. • repo.mainBranch: main branch names to look for. • repo.ignore: repos to ignore. • server.name: used for go-import meta tags and clone URLs.
-
-
-
@@ -35,6 +35,10 @@infos := []info{} for _, dir := range dirs { if d.isIgnored(dir.Name()) { continue } path := filepath.Join(d.c.Repo.ScanPath, dir.Name()) gr, err := git.Open(path, "") if err != nil {
-
@@ -77,8 +81,13 @@ }func (d *deps) RepoIndex(w http.ResponseWriter, r *http.Request) { name := flow.Param(r.Context(), "name") if d.isIgnored(name) { d.Write404(w) return } name = filepath.Clean(name) path := filepath.Join(d.c.Repo.ScanPath, name) gr, err := git.Open(path, "") if err != nil { d.Write404(w)
-
@@ -136,6 +145,10 @@ }func (d *deps) RepoTree(w http.ResponseWriter, r *http.Request) { name := flow.Param(r.Context(), "name") if d.isIgnored(name) { d.Write404(w) return } treePath := flow.Param(r.Context(), "...") ref := flow.Param(r.Context(), "ref")
-
@@ -166,6 +179,10 @@ }func (d *deps) FileContent(w http.ResponseWriter, r *http.Request) { name := flow.Param(r.Context(), "name") if d.isIgnored(name) { d.Write404(w) return } treePath := flow.Param(r.Context(), "...") ref := flow.Param(r.Context(), "ref")
-
@@ -190,6 +207,10 @@ }func (d *deps) Log(w http.ResponseWriter, r *http.Request) { name := flow.Param(r.Context(), "name") if d.isIgnored(name) { d.Write404(w) return } ref := flow.Param(r.Context(), "ref") path := filepath.Join(d.c.Repo.ScanPath, name)
-
@@ -224,6 +245,10 @@ }func (d *deps) Diff(w http.ResponseWriter, r *http.Request) { name := flow.Param(r.Context(), "name") if d.isIgnored(name) { d.Write404(w) return } ref := flow.Param(r.Context(), "ref") path := filepath.Join(d.c.Repo.ScanPath, name)
-
@@ -261,6 +286,10 @@ }func (d *deps) Refs(w http.ResponseWriter, r *http.Request) { name := flow.Param(r.Context(), "name") if d.isIgnored(name) { d.Write404(w) return } path := filepath.Join(d.c.Repo.ScanPath, name) gr, err := git.Open(path, "")
-
@@ -305,13 +334,3 @@ f = filepath.Clean(filepath.Join(d.c.Dirs.Static, f))http.ServeFile(w, r, f) } func getDescription(path string) (desc string) { db, err := os.ReadFile(filepath.Join(path, "description")) if err == nil { desc = string(db) } else { desc = "" } return }
-
-
routes/util.go (new)
-
@@ -0,0 +1,26 @@package routes import ( "os" "path/filepath" ) func getDescription(path string) (desc string) { db, err := os.ReadFile(filepath.Join(path, "description")) if err == nil { desc = string(db) } else { desc = "" } return } func (d *deps) isIgnored(name string) bool { for _, i := range d.c.Repo.Ignore { if name == i { return true } } return false }
-