@@ -10,13 +10,26 @@ import (
1010
1111type AdvancedPolicyProvider struct {}
1212
13- func (p AdvancedPolicyProvider ) GetPolicyProvider (policySpec lib_spec.PolicySpec , diggerHost string , diggerOrg string , token string ) (policy.Checker , error ) {
13+ func (p AdvancedPolicyProvider ) GetPolicyProvider (policySpec lib_spec.PolicySpec , diggerHost string , diggerOrg string , token string , vcsType string ) (policy.Checker , error ) {
1414 managementRepo := os .Getenv ("DIGGER_MANAGEMENT_REPO" )
1515 if managementRepo != "" {
1616 log .Printf ("info: using management repo policy provider" )
17- token := os .Getenv ("GITHUB_TOKEN" )
17+ var token = ""
18+ var tokenName = ""
19+ switch vcsType {
20+ case "github" :
21+ token = os .Getenv ("GITHUB_TOKEN" )
22+ tokenName = "GITHUB_TOKEN"
23+ case "gitlab" :
24+ token = os .Getenv ("GITLAB_TOKEN" )
25+ tokenName = "GITLAB_TOKEN"
26+ default :
27+ token = os .Getenv ("GITHUB_TOKEN" )
28+ tokenName = "GITHUB_TOKEN"
29+ }
30+
1831 if token == "" {
19- return nil , fmt .Errorf ("failed to get managent repo policy provider: GITHUB_TOKEN not specified" )
32+ return nil , fmt .Errorf ("failed to get managent repo policy provider: %v not specified" , tokenName )
2033 }
2134 return policy.DiggerPolicyChecker {
2235 PolicyProvider : DiggerRepoPolicyProvider {
@@ -26,7 +39,7 @@ func (p AdvancedPolicyProvider) GetPolicyProvider(policySpec lib_spec.PolicySpec
2639 }, nil
2740 }
2841
29- checker , err := lib_spec.BasicPolicyProvider {}.GetPolicyProvider (policySpec , diggerHost , diggerOrg , token )
42+ checker , err := lib_spec.BasicPolicyProvider {}.GetPolicyProvider (policySpec , diggerHost , diggerOrg , token , "" )
3043 return checker , err
3144}
3245
0 commit comments