11package setting
22
33import (
4- "os"
5- "strings"
6- "github.com/praqma/git-phlow/executor"
7- "github.com/go-ini/ini"
84 "fmt"
5+ "os"
96 "reflect"
7+ "strings"
8+
109 "github.com/go-errors/errors"
11- "github.com/praqma/git-phlow/plugins"
10+ "github.com/go-ini/ini"
11+ "github.com/praqma/git-phlow/executor"
1212 "github.com/praqma/git-phlow/githandler"
13+ "github.com/praqma/git-phlow/plugins"
1314)
1415
1516//Load internals
@@ -112,7 +113,7 @@ func LoadProjectSettings(local, global string, INIBlock string) *ProjectSetting
112113
113114 //Try to get default branch otherwise just create the default
114115 defaultBranch , err := GetDefaultBranchFromInternalDefault ()
115- if err != nil {
116+ if err != nil || strings . TrimSpace ( defaultBranch ) == "" {
116117 defaultBranch = internal_default_integration_branch
117118 }
118119
@@ -137,7 +138,10 @@ func LoadProjectSettings(local, global string, INIBlock string) *ProjectSetting
137138
138139 //Map section into object
139140 conf := new (ProjectSetting )
140- loadSetting ().MapTo (conf )
141+ err := loadSetting ().MapTo (conf )
142+ if err != nil {
143+ panic (err )
144+ }
141145
142146 //Add configuration origin
143147 conf .File = configFile
@@ -163,7 +167,7 @@ func BootstrapPhlowConfig(local, integrationBranch string) error {
163167 sec .Key ("issue_url" ).SetValue (internal_default_issue_url )
164168 sec .Key ("delivery_branch_prefix" ).SetValue (internal_default_delivery_branch_prefix )
165169
166- err := cfg .SaveTo (local + "/" + ".phlow" )
170+ err := cfg .SaveTo (local + "/" + phlow_file_name )
167171 if err != nil {
168172 return err
169173 }
@@ -172,35 +176,35 @@ func BootstrapPhlowConfig(local, integrationBranch string) error {
172176}
173177
174178//ValidateLoadedSetting ...
175- func ValidateLoadedSetting (setting * ProjectSetting ) ( error ) {
179+ func ValidateLoadedSetting (setting * ProjectSetting ) error {
176180 r := reflect .ValueOf (setting ).Elem ()
177181 t := r .Type ()
178182
179183 //Non Optional Field checks..
180184 for i := 0 ; i < t .NumField (); i ++ {
181185 if t .Field (i ).Name == "Service" && (r .Field (i ).String () == "" ) {
182- return errors .New (fmt .Sprintf ("Error in configuration file: %s \n " +
183- "Non-optional field missing: %s \n In configuration block: %s \n " , setting .Scope + "/" + setting .File , "service" , setting .INIBlock ))
186+ return errors .New (fmt .Sprintf ("Error in configuration file: %s\n " +
187+ "Non-optional field missing: %s \n In configuration block: %s \n " , setting .Scope + "/" + setting .File , "service" , setting .INIBlock ))
184188 }
185189
186190 if t .Field (i ).Name == "IssueURL" && r .Field (i ).String () == "" {
187- return errors .New (fmt .Sprintf ("Error in configuration file: %s \n " +
188- "Non-optional field missing: %s \n In configuration block: %s \n " , setting .Scope + "/" + setting .File , "issue_url" , setting .INIBlock ))
191+ return errors .New (fmt .Sprintf ("Error in configuration file: %s\n " +
192+ "Non-optional field missing: %s \n In configuration block: %s \n " , setting .Scope + "/" + setting .File , "issue_url" , setting .INIBlock ))
189193 }
190194
191195 if t .Field (i ).Name == "IntegrationBranch" && r .Field (i ).String () == "" {
192- return errors .New (fmt .Sprintf ("Error in configuration file: %s \n " +
193- "Non-optional field missing: %s \n In configuration block: %s \n " , setting .Scope + "/" + setting .File , "integration_branch" , setting .INIBlock ))
196+ return errors .New (fmt .Sprintf ("Error in configuration file: %s\n " +
197+ "Non-optional field missing: %s \n In configuration block: %s \n " , setting .Scope + "/" + setting .File , "integration_branch" , setting .INIBlock ))
194198 }
195199
196200 if t .Field (i ).Name == "Remote" && r .Field (i ).String () == "" {
197- return errors .New (fmt .Sprintf ("Error in configuration file: %s \n " +
198- "Non-optional field missing: %s \n In configuration block: %s \n " , setting .Scope + "/" + setting .File , "remote" , setting .INIBlock ))
201+ return errors .New (fmt .Sprintf ("Error in configuration file: %s\n " +
202+ "Non-optional field missing: %s \n In configuration block: %s \n " , setting .Scope + "/" + setting .File , "remote" , setting .INIBlock ))
199203 }
200204
201205 if t .Field (i ).Name == "DeliveryBranchPrefix" && r .Field (i ).String () == "" {
202- return errors .New (fmt .Sprintf ("Error in configuration file: %s \n " +
203- "Non-optional field missing: %s \n In configuration block: %s \n " , setting .Scope + "/" + setting .File , "delivery_branch_prefix" , setting .INIBlock ))
206+ return errors .New (fmt .Sprintf ("Error in configuration file: %s\n " +
207+ "Non-optional field missing: %s \n In configuration block: %s \n " , setting .Scope + "/" + setting .File , "delivery_branch_prefix" , setting .INIBlock ))
204208 }
205209 }
206210 return nil
0 commit comments