diff --git a/pkg/environment/createPR.go b/pkg/environment/createPR.go index a1844622..e6cdbe03 100644 --- a/pkg/environment/createPR.go +++ b/pkg/environment/createPR.go @@ -13,28 +13,41 @@ import ( func createPR(description, namespace string) func(github.GithubIface, []string) (string, error) { b := make([]byte, 2) - rand.Read(b) + _, randErr := rand.Read(b) + fourCharUid := hex.EncodeToString(b) branchName := namespace + "-rds-minor-version-bump-" + fourCharUid return func(gh github.GithubIface, filenames []string) (string, error) { + if randErr != nil { + return "", randErr + } + checkCmd := exec.Command("/bin/sh", "-c", "git checkout -b "+branchName) + //nolint:staticcheck checkCmd.Start() + //nolint:staticcheck checkCmd.Wait() strFiles := strings.Join(filenames, " ") cmd := exec.Command("/bin/sh", "-c", "git add "+strFiles) cmd.Dir = "namespaces/live.cloud-platform.service.justice.gov.uk/" + namespace + "/resources" + //nolint:staticcheck cmd.Start() + //nolint:staticcheck cmd.Wait() commitCmd := exec.Command("/bin/sh", "-c", "git commit -m 'concourse: correcting rds version drift'") commitCmd.Dir = "namespaces/live.cloud-platform.service.justice.gov.uk/" + namespace + "/resources" + //nolint:staticcheck commitCmd.Start() + //nolint:staticcheck commitCmd.Wait() pushCmd := exec.Command("/bin/sh", "-c", "git push --set-upstream origin "+branchName) + //nolint:staticcheck pushCmd.Start() + //nolint:staticcheck pushCmd.Wait() return gh.CreatePR(branchName, namespace, description)