aboutsummaryrefslogtreecommitdiff
path: root/tools/gerrit-hook/buildkite.go
diff options
context:
space:
mode:
Diffstat (limited to 'tools/gerrit-hook/buildkite.go')
-rw-r--r--tools/gerrit-hook/buildkite.go20
1 files changed, 17 insertions, 3 deletions
diff --git a/tools/gerrit-hook/buildkite.go b/tools/gerrit-hook/buildkite.go
index 35ad31c..07d2cfd 100644
--- a/tools/gerrit-hook/buildkite.go
+++ b/tools/gerrit-hook/buildkite.go
@@ -9,13 +9,15 @@ import (
"log/syslog"
"net/http"
"os"
+ "strings"
"time"
)
// https://buildkite.com/docs/apis/rest-api/builds#create-a-Build
type Build struct {
- Commit string `json:"commit"`
- Branch string `json:"branch"`
+ Commit string `json:"commit"`
+ Branch string `json:"branch"`
+ Env map[string]string `json:"env"`
}
type buildResponse struct {
@@ -23,9 +25,21 @@ type buildResponse struct {
}
func triggerBuild(cfg *config, log *syslog.Writer, trigger *buildTrigger) error {
+ env := make(map[string]string)
+ branch := trigger.ref
+
+ if trigger.changeId != "" && trigger.patchset != "" {
+ env["GERRIT_CHANGE_ID"] = trigger.changeId
+ env["GERRIT_CHANGE_URL"] = trigger.changeUrl
+ env["GERRIT_PATCHSET"] = trigger.patchset
+
+ branch = fmt.Sprintf("cl/%v", strings.Split(trigger.ref, "/")[3])
+ }
+
b := Build{
Commit: trigger.commit,
- Branch: trigger.ref,
+ Branch: branch,
+ Env: env,
}
body, _ := json.Marshal(b)