Skip to content

Commit 51030bc

Browse files
authored
Merge pull request diggerhq#377 from diggerhq/make-commands-case-insensitive
make digger commands case insensitive
2 parents ae7d8f3 + 2e9530b commit 51030bc

File tree

4 files changed

+28
-8
lines changed

4 files changed

+28
-8
lines changed

cmd/digger/main_test.go

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -987,3 +987,22 @@ func TestGitHubNewPullRequestInMultiEnvProjectContext(t *testing.T) {
987987
assert.Equal(t, 1, len(commandsToRunPerProject))
988988
assert.NoError(t, err)
989989
}
990+
991+
func TestGitHubTestPRCommandCaseInsensitivity(t *testing.T) {
992+
ghEvent := gh_models.IssueCommentEvent{}
993+
ghEvent.Comment.Body = "DiGGeR PlAn"
994+
995+
project := configuration.Project{Name: "test project", Workflow: "default"}
996+
var impactedProjects []configuration.Project
997+
impactedProjects = make([]configuration.Project, 1)
998+
impactedProjects[0] = project
999+
var requestedProject = project
1000+
workflows := make(map[string]configuration.Workflow, 1)
1001+
workflows["default"] = configuration.Workflow{}
1002+
1003+
commandsToRunPerProject, _, err := github.ConvertGithubEventToCommands(ghEvent, impactedProjects, &requestedProject, workflows)
1004+
1005+
assert.Equal(t, 1, len(commandsToRunPerProject))
1006+
assert.Equal(t, "digger plan", commandsToRunPerProject[0].Commands[0])
1007+
assert.NoError(t, err)
1008+
}

pkg/azure/azure.go

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -409,11 +409,8 @@ func ConvertAzureEventToCommands(parseAzureContext Azure, impactedProjects []con
409409
}
410410
return commandsPerProject, true, nil
411411
case AzurePrCommented:
412-
413-
diggerCommand := parseAzureContext.Event.(AzureCommentEvent).Resource.Comment.Content
414-
412+
diggerCommand := strings.ToLower(parseAzureContext.Event.(AzureCommentEvent).Resource.Comment.Content)
415413
coversAllImpactedProjects := true
416-
417414
runForProjects := impactedProjects
418415

419416
if requestedProject != nil {

pkg/github/github.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -202,8 +202,10 @@ func ConvertGithubEventToCommands(event models.Event, impactedProjects []configu
202202
}
203203
}
204204

205+
diggerCommand := strings.ToLower(event.Comment.Body)
206+
205207
for _, command := range supportedCommands {
206-
if strings.Contains(event.Comment.Body, command) {
208+
if strings.Contains(diggerCommand, command) {
207209
for _, project := range runForProjects {
208210
workflow, ok := workflows[project.Workflow]
209211
if !ok {

pkg/gitlab/gitlab.go

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,8 @@ func ProcessGitLabEvent(gitlabContext *GitLabContext, diggerConfig *configuratio
101101

102102
switch gitlabContext.EventType {
103103
case MergeRequestComment:
104-
requestedProject := utils.ParseProjectName(gitlabContext.DiggerCommand)
104+
diggerCommand := strings.ToLower(gitlabContext.DiggerCommand)
105+
requestedProject := utils.ParseProjectName(diggerCommand)
105106

106107
if requestedProject == "" {
107108
return impactedProjects, nil, nil
@@ -311,15 +312,16 @@ func ConvertGitLabEventToCommands(event GitLabEvent, gitLabContext *GitLabContex
311312
}
312313
}
313314

315+
diggerCommand := strings.ToLower(gitLabContext.DiggerCommand)
314316
for _, command := range supportedCommands {
315-
if strings.Contains(gitLabContext.DiggerCommand, command) {
317+
if strings.Contains(diggerCommand, command) {
316318
for _, project := range runForProjects {
317319
workflow, ok := workflows[project.Workflow]
318320
if !ok {
319321
workflow = workflows["default"]
320322
}
321323
workspace := project.Workspace
322-
workspaceOverride, err := utils.ParseWorkspace(gitLabContext.DiggerCommand)
324+
workspaceOverride, err := utils.ParseWorkspace(diggerCommand)
323325
if err != nil {
324326
return []models.ProjectCommand{}, false, err
325327
}

0 commit comments

Comments
 (0)