diff --git a/batchit.go b/batchit.go index 0baf6dd..65917ac 100644 --- a/batchit.go +++ b/batchit.go @@ -1,3 +1,3 @@ package batchit -const Version = "0.4.0" +const Version = "0.4.1" diff --git a/logof/logof.go b/logof/logof.go index 9747c2f..cd738b8 100644 --- a/logof/logof.go +++ b/logof/logof.go @@ -30,6 +30,9 @@ func LogOf(jobId string, region string) int { sort.Slice(output.Jobs, func(i, j int) bool { return *output.Jobs[i].StartedAt < *output.Jobs[j].StartedAt }) j := output.Jobs[len(output.Jobs)-1] stream := j.Container.LogStreamName + if stream == nil { + log.Fatalf("job %s not found. has it started?", jobId) + } gli := &cloudwatchlogs.GetLogEventsInput{ LogGroupName: aws.String("/aws/batch/job"), diff --git a/submit/submit.go b/submit/submit.go index 24a623c..0ea45af 100644 --- a/submit/submit.go +++ b/submit/submit.go @@ -45,36 +45,12 @@ func (c cliargs) Version() string { } func getRole(svc *iam.IAM, role string) *iam.Role { - - var roles []*iam.Role - var marker *string - - for { - - params := &iam.ListRolesInput{ - MaxItems: aws.Int64(100), - Marker: marker, - } - - r, err := svc.ListRoles(params) - if err != nil { - panic(err) - } - roles = append(roles, r.Roles...) - if !*r.IsTruncated { - break - } - marker = r.Marker - } - var irole *iam.Role - for _, r := range roles { - if *r.RoleName == role { - irole = r - break - } + inp := &iam.GetRoleInput{RoleName: &role} + op, err := svc.GetRole(inp) + if err != nil { + panic(err) } - - return irole + return op.Role } const scriptPrefix = "script:"