2019-07-15 21:20:44 +02:00
|
|
|
package ci
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"fmt"
|
|
|
|
|
log "github.com/sirupsen/logrus"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
//Travis struct
|
|
|
|
|
type Travis struct{}
|
|
|
|
|
|
|
|
|
|
//Detect if on travis
|
2019-07-16 20:42:40 +02:00
|
|
|
func (t Travis) detect(envs map[string]string) (*ProviderConfig, error) {
|
2019-07-15 21:20:44 +02:00
|
|
|
|
2019-07-16 20:42:40 +02:00
|
|
|
if _, exists := envs["TRAVIS"]; !exists {
|
2019-07-15 21:20:44 +02:00
|
|
|
return nil, fmt.Errorf("not running on travis")
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
isPR := false
|
|
|
|
|
|
2019-07-16 20:42:40 +02:00
|
|
|
value := envs["TRAVIS_PULL_REQUEST"]
|
2019-07-16 20:26:57 +02:00
|
|
|
pr := ""
|
2019-07-15 21:20:44 +02:00
|
|
|
|
|
|
|
|
if value == "false" {
|
|
|
|
|
log.Debugf("TRAVIS_PULL_REQUEST=%s, not running on pr", value)
|
|
|
|
|
} else {
|
|
|
|
|
isPR = true
|
2019-07-16 20:26:57 +02:00
|
|
|
pr = value
|
2019-07-15 21:20:44 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return &ProviderConfig{
|
|
|
|
|
Service: "travis",
|
|
|
|
|
Name: "Travis CI",
|
2019-07-16 20:42:40 +02:00
|
|
|
Commit: envs["TRAVIS_COMMIT"],
|
|
|
|
|
Tag: envs["TRAVIS_TAG"],
|
|
|
|
|
BuildURL: envs["TRAVIS_BUILD_WEB_URL"],
|
|
|
|
|
Branch: envs["TRAVIS_BRANCH"],
|
2019-07-15 21:20:44 +02:00
|
|
|
IsPR: isPR,
|
2019-07-16 20:26:57 +02:00
|
|
|
PR: pr,
|
2019-07-16 20:42:40 +02:00
|
|
|
PRBranch: envs["TRAVIS_PULL_REQUEST_BRANCH"],
|
2019-07-15 21:20:44 +02:00
|
|
|
}, nil
|
|
|
|
|
}
|