summaryrefslogtreecommitdiff
path: root/configLookup.go
diff options
context:
space:
mode:
Diffstat (limited to 'configLookup.go')
-rw-r--r--configLookup.go62
1 files changed, 62 insertions, 0 deletions
diff --git a/configLookup.go b/configLookup.go
index 8715f40..e829091 100644
--- a/configLookup.go
+++ b/configLookup.go
@@ -260,3 +260,65 @@ func (fc *ForgeConfigs) FindUserBranch(thing string) string {
return match.UserBranchName
}
+
+// allows custom devel branch names in the forge config
+func (fc *ForgeConfigs) FindDevelBranch(thing string) string {
+ var match *ForgeConfig
+
+ all := fc.SortByGoPath() // get the list of repos
+ for all.Scan() {
+ r := all.Next()
+ if r.GoPath == thing {
+ if r.DevelBranchName != "" {
+ return r.DevelBranchName
+ }
+ }
+ base := filepath.Base(r.GoPath)
+ if base == thing {
+ if r.DevelBranchName != "" {
+ return r.DevelBranchName
+ }
+ }
+ if r.Directory {
+ if strings.HasPrefix(thing, r.GoPath) {
+ match = r
+ }
+ }
+ }
+ if match == nil {
+ return ""
+ }
+
+ return match.DevelBranchName
+}
+
+// allows custom devel branch names in the forge config
+func (fc *ForgeConfigs) FindMasterBranch(thing string) string {
+ var match *ForgeConfig
+
+ all := fc.SortByGoPath() // get the list of repos
+ for all.Scan() {
+ r := all.Next()
+ if r.GoPath == thing {
+ if r.MasterBranchName != "" {
+ return r.MasterBranchName
+ }
+ }
+ base := filepath.Base(r.GoPath)
+ if base == thing {
+ if r.MasterBranchName != "" {
+ return r.MasterBranchName
+ }
+ }
+ if r.Directory {
+ if strings.HasPrefix(thing, r.GoPath) {
+ match = r
+ }
+ }
+ }
+ if match == nil {
+ return ""
+ }
+
+ return match.MasterBranchName
+}