Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions internal/events/deploy.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ func (e *Events) CreateDeployTask(project schema.Project, deployData lagoon.Depl
}
if !exists {
if project.OrganizationDetails.QuotaEnvironment != -1 && len(project.OrganizationDetails.Environments) >= project.OrganizationDetails.QuotaEnvironment {
return nil, fmt.Errorf("exceed environment quota")
return nil, fmt.Errorf("%s: exceed environment quota", project.Name)
}
}
}
Expand All @@ -44,7 +44,7 @@ func (e *Events) CreateDeployTask(project schema.Project, deployData lagoon.Depl
}
}
if !exists {
return nil, fmt.Errorf("exceed production limit")
return nil, fmt.Errorf("%s: exceed production limit", project.Name)
}
}
} else {
Expand All @@ -62,7 +62,7 @@ func (e *Events) CreateDeployTask(project schema.Project, deployData lagoon.Depl
}
}
if !exists {
return nil, fmt.Errorf("exceed development limit")
return nil, fmt.Errorf("%s: exceed development limit", project.Name)
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion internal/events/deploy_promote.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ func (e *Events) deployPromote(project schema.Project, deployData lagoon.DeployD
}

if !foundEnvironment {
return nil, fmt.Errorf("no existing environment to promote from that contains a valid deploytarget")
return nil, fmt.Errorf("%s: no existing environment to promote from that contains a valid deploytarget", project.Name)
}

if deployTarget != nil {
Expand Down
10 changes: 5 additions & 5 deletions internal/events/deploy_pull.go
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ func (e *Events) deployPull(project schema.Project, deployData lagoon.DeployData

if deployTarget != nil && activeStandby != nil {
if deployTarget.ID != activeStandby.ID {
return nil, fmt.Errorf("environments must be on same deploytarget")
return nil, fmt.Errorf("%s: environments must be on same deploytarget", project.Name)
}
}

Expand Down Expand Up @@ -66,7 +66,7 @@ func (e *Events) deployPull(project schema.Project, deployData lagoon.DeployData
e.Messaging.SendToLagoonTasks(fmt.Sprintf("%s:builddeploy", deployData.DeployTarget.Name), lagoon.BuildToBytes(buildData))
return lagoon.BuildToBytes(buildData), nil
case "false":
errs = append(errs, fmt.Sprintf("deployment not allowed on deploytargetconfig %s pullrequests disabled", dtc.DeployTarget.Name))
errs = append(errs, fmt.Sprintf("%s: deployment not allowed on deploytargetconfig %s pullrequests disabled", project.Name, dtc.DeployTarget.Name))
continue
default:
re := regexp2.MustCompile(dtc.Pullrequests, 0)
Expand All @@ -80,7 +80,7 @@ func (e *Events) deployPull(project schema.Project, deployData lagoon.DeployData
e.Messaging.SendToLagoonTasks(fmt.Sprintf("%s:builddeploy", deployData.DeployTarget.Name), lagoon.BuildToBytes(buildData))
return lagoon.BuildToBytes(buildData), nil
} else {
errs = append(errs, fmt.Sprintf("deployment not allowed on deploytargetconfig %s didn't match pullrequest title regex pattern for deploytargetconfig", dtc.DeployTarget.Name))
errs = append(errs, fmt.Sprintf("%s: deployment not allowed on deploytargetconfig %s didn't match pullrequest title regex pattern for deploytargetconfig", project.Name, dtc.DeployTarget.Name))
continue
}
}
Expand All @@ -100,7 +100,7 @@ func (e *Events) deployPull(project schema.Project, deployData lagoon.DeployData
e.Messaging.SendToLagoonTasks(fmt.Sprintf("%s:builddeploy", deployData.DeployTarget.Name), lagoon.BuildToBytes(buildData))
return lagoon.BuildToBytes(buildData), nil
case "false":
return nil, fmt.Errorf("deployments disabled for project pullrequests")
return nil, fmt.Errorf("%s: deployments disabled for project pullrequests", project.Name)
default:
re := regexp2.MustCompile(project.PullRequests, 0)
if match, _ := re.MatchString(deployData.Pullrequest.Title); match {
Expand All @@ -113,7 +113,7 @@ func (e *Events) deployPull(project schema.Project, deployData lagoon.DeployData
e.Messaging.SendToLagoonTasks(fmt.Sprintf("%s:builddeploy", deployData.DeployTarget.Name), lagoon.BuildToBytes(buildData))
return lagoon.BuildToBytes(buildData), nil
} else {
return nil, fmt.Errorf("didn't match pullrequest title regex pattern for project")
return nil, fmt.Errorf("%s: didn't match pullrequest title regex pattern for project", project.Name)
}
}
}
Expand Down
10 changes: 5 additions & 5 deletions internal/events/deploy_push.go
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ func (e *Events) deployPush(project schema.Project, deployData lagoon.DeployData

if deployTarget != nil && activeStandby != nil {
if deployTarget.ID != activeStandby.ID {
return nil, fmt.Errorf("environments must be on same deploytarget")
return nil, fmt.Errorf("%s: environments must be on same deploytarget", project.Name)
}
}

Expand Down Expand Up @@ -57,7 +57,7 @@ func (e *Events) deployPush(project schema.Project, deployData lagoon.DeployData
e.Messaging.SendToLagoonTasks(fmt.Sprintf("%s:builddeploy", deployData.DeployTarget.Name), lagoon.BuildToBytes(buildData))
return lagoon.BuildToBytes(buildData), nil
case "false":
errs = append(errs, fmt.Sprintf("deployment not allowed on deploytargetconfig %s branches disabled", dtc.DeployTarget.Name))
errs = append(errs, fmt.Sprintf("%s: deployment not allowed on deploytargetconfig %s branches disabled", project.Name, dtc.DeployTarget.Name))
continue
default:
re := regexp2.MustCompile(dtc.Branches, 0)
Expand All @@ -71,7 +71,7 @@ func (e *Events) deployPush(project schema.Project, deployData lagoon.DeployData
e.Messaging.SendToLagoonTasks(fmt.Sprintf("%s:builddeploy", deployData.DeployTarget.Name), lagoon.BuildToBytes(buildData))
return lagoon.BuildToBytes(buildData), nil
} else {
errs = append(errs, fmt.Sprintf("deployment not allowed on deploytargetconfig %s didn't match branches regex pattern for deploytargetconfig", dtc.DeployTarget.Name))
errs = append(errs, fmt.Sprintf("%s: deployment not allowed on deploytargetconfig %s didn't match branches regex pattern for deploytargetconfig", project.Name, dtc.DeployTarget.Name))
continue
}
}
Expand All @@ -91,7 +91,7 @@ func (e *Events) deployPush(project schema.Project, deployData lagoon.DeployData
e.Messaging.SendToLagoonTasks(fmt.Sprintf("%s:builddeploy", deployData.DeployTarget.Name), lagoon.BuildToBytes(buildData))
return lagoon.BuildToBytes(buildData), nil
case "false":
return nil, fmt.Errorf("deployments disabled for project branches")
return nil, fmt.Errorf("%s: deployments disabled for project branches", project.Name)
default:
re := regexp2.MustCompile(project.Branches, 0)
if match, _ := re.MatchString(deployData.UnsafeEnvironmentName); match {
Expand All @@ -104,7 +104,7 @@ func (e *Events) deployPush(project schema.Project, deployData lagoon.DeployData
e.Messaging.SendToLagoonTasks(fmt.Sprintf("%s:builddeploy", deployData.DeployTarget.Name), lagoon.BuildToBytes(buildData))
return lagoon.BuildToBytes(buildData), nil
} else {
return nil, fmt.Errorf("didn't match regex pattern for project")
return nil, fmt.Errorf("%s: didn't match regex pattern for project", project.Name)
}
}
}
Expand Down
13 changes: 11 additions & 2 deletions services/webhook-handler/internal/server/server.go
Original file line number Diff line number Diff line change
Expand Up @@ -143,6 +143,7 @@ func (s *Server) handleWebhookPost(w http.ResponseWriter, r *http.Request) {
e := events.New(s.LagoonAPI, s.Messaging)
if webhook != nil {
var response []events.Response
var repositoryUrl, repositoryName string
var err error
switch scmWebhook := webhook.(type) {
case *scm.PushHook:
Expand All @@ -152,21 +153,29 @@ func (s *Server) handleWebhookPost(w http.ResponseWriter, r *http.Request) {
scmWebhook.Repo.Clone = scmWebhook.Repo.Link
scmWebhook.Repo.CloneSSH = events.BitBucketGitURL(scmWebhook.Repo.Link, fmt.Sprintf("%s/%s", scmWebhook.Repo.Namespace, scmWebhook.Repo.Name))
}
repositoryUrl = scmWebhook.Repo.Clone
repositoryName = fmt.Sprintf("%s/%s", scmWebhook.Repo.Namespace, scmWebhook.Repo.Name)
response, err = e.HandlePush(gitType, event, reqUUID, scmWebhook)
case *scm.BranchHook:
if gitType == "bitbucket" {
scmWebhook.Repo.Clone = scmWebhook.Repo.Link
scmWebhook.Repo.CloneSSH = events.BitBucketGitURL(scmWebhook.Repo.Link, fmt.Sprintf("%s/%s", scmWebhook.Repo.Namespace, scmWebhook.Repo.Name))
}
repositoryUrl = scmWebhook.Repo.Clone
repositoryName = fmt.Sprintf("%s/%s", scmWebhook.Repo.Namespace, scmWebhook.Repo.Name)
response, err = e.HandleBranch(gitType, event, reqUUID, scmWebhook)
case *scm.PullRequestHook:
if gitType == "bitbucket" {
scmWebhook.Repo.Clone = scmWebhook.Repo.Link
scmWebhook.Repo.CloneSSH = events.BitBucketGitURL(scmWebhook.Repo.Link, fmt.Sprintf("%s/%s", scmWebhook.Repo.Namespace, scmWebhook.Repo.Name))
}
repositoryUrl = scmWebhook.Repo.Clone
repositoryName = fmt.Sprintf("%s/%s", scmWebhook.Repo.Namespace, scmWebhook.Repo.Name)
response, err = e.HandlePull(gitType, event, reqUUID, scmWebhook)
case *scm.TagHook:
// future?
repositoryUrl = scmWebhook.Repo.Clone
repositoryName = fmt.Sprintf("%s/%s", scmWebhook.Repo.Namespace, scmWebhook.Repo.Name)
respondWithError(w, http.StatusBadRequest, "tags events are currently unsupported")
return
}
Expand All @@ -178,9 +187,9 @@ func (s *Server) handleWebhookPost(w http.ResponseWriter, r *http.Request) {
errs = append(errs, i.Error.Error())
}
}
log.Println("Errors:", strings.Join(errs, ";"))
log.Printf("errors: (%s:%s): %s\n", repositoryUrl, repositoryName, strings.Join(errs, ";"))
} else {
log.Println("Error:", err)
log.Printf("error: (%s:%s): %v\n", repositoryUrl, repositoryName, err)
}
respondWithError(w, http.StatusBadRequest, "invalid resquest payload")
return
Expand Down