Skip to content

Commit 6854165

Browse files
Josh SennettJosh Sennett
andauthored
Fix create task NPE and permissions issues (#20)
* Avoid NPE if BytesPerSecond is not given * Add logs:DescribeLogGroups to task resource permissions Co-authored-by: Josh Sennett <[email protected]>
1 parent 5881c4b commit 6854165

File tree

3 files changed

+9
-3
lines changed

3 files changed

+9
-3
lines changed

aws-datasync-task/aws-datasync-task.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -314,6 +314,7 @@
314314
"fsx:DescribeFileSystems",
315315
"elasticfilesystem:DescribeFileSystems",
316316
"elasticfilesystem:DescribeMountTargets",
317+
"logs:DescribeLogGroups",
317318
"iam:GetRole",
318319
"iam:PassRole"
319320
]
@@ -330,7 +331,8 @@
330331
"datasync:DescribeTask",
331332
"datasync:ListTagsForResource",
332333
"datasync:TagResource",
333-
"datasync:UntagResource"
334+
"datasync:UntagResource",
335+
"logs:DescribeLogGroups"
334336
]
335337
},
336338
"delete": {

aws-datasync-task/resource-role.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ Resources:
4242
- "fsx:DescribeFileSystems"
4343
- "iam:GetRole"
4444
- "iam:PassRole"
45+
- "logs:DescribeLogGroups"
4546
- "s3:ListAllMyBuckets"
4647
- "s3:ListBucket"
4748
Resource: "*"

aws-datasync-task/src/main/java/software/amazon/datasync/task/Translator.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -90,9 +90,10 @@ public static software.amazon.datasync.task.Options translateToResourceModelOpti
9090
final software.amazon.awssdk.services.datasync.model.Options options) {
9191
if (options == null)
9292
return software.amazon.datasync.task.Options.builder().build();
93+
Integer bytesPerSecond = options.bytesPerSecond() != null ? options.bytesPerSecond().intValue() : null;
9394
return software.amazon.datasync.task.Options.builder()
9495
.atime(options.atimeAsString())
95-
.bytesPerSecond(options.bytesPerSecond().intValue())
96+
.bytesPerSecond(bytesPerSecond)
9697
.gid(options.gidAsString())
9798
.logLevel(options.logLevelAsString())
9899
.mtime(options.mtimeAsString())
@@ -111,9 +112,11 @@ private static software.amazon.awssdk.services.datasync.model.Options translateT
111112
final software.amazon.datasync.task.Options options) {
112113
if (options == null)
113114
return software.amazon.awssdk.services.datasync.model.Options.builder().build();
115+
116+
Long bytesPerSecond = options.getBytesPerSecond() != null ? options.getBytesPerSecond().longValue() : null;
114117
return software.amazon.awssdk.services.datasync.model.Options.builder()
115118
.atime(options.getAtime())
116-
.bytesPerSecond(options.getBytesPerSecond().longValue())
119+
.bytesPerSecond(bytesPerSecond)
117120
.gid(options.getGid())
118121
.logLevel(options.getLogLevel())
119122
.mtime(options.getMtime())

0 commit comments

Comments
 (0)