-
Bug
-
Resolution: Fixed
-
Minor
-
None
-
Jenkins ver. 2.222.1
0.11.5
After upgrading to version 0.11.5 from 0.11.3, the current state of the Use IAM Role field is not preserved. This means it is set to false every time the Jenkins configuration is saved from https://jenkins/configure.
Looks to be a side effect from this commit: https://github.com/jenkinsci/s3-plugin/commit/ee92830bc670b1ab70d19b34fa2ee1a3e0dac12c
Jobs attempting to publish to s3 will have this error after saving the Jenkings configuration without modifying the Amazon S3 profiles section:
ERROR: Failed to upload files com.amazonaws.services.s3.model.AmazonS3Exception: The authorization header is malformed; a non-empty Access Key (AKID) must be provided in the credential. (Service: Amazon S3; Status Code: 400; Error Code: AuthorizationHeaderMalformed; Request ID: 0DA8BA8E16511839; S3 Extended Request ID: +O1juVW903Ay7gNmlzIoLxnVGUXZwcChRUriu1forYHfU9nv+BXOXy5zOvRCkbFPk1NHrCQ9ybc=), S3 Extended Request ID: +O1juVW903Ay7gNmlzIoLxnVGUXZwcChRUriu1forYHfU9nv+BXOXy5zOvRCkbFPk1NHrCQ9ybc= at com.amazonaws.http.AmazonHttpClient$RequestExecutor.handleErrorResponse(AmazonHttpClient.java:1799) at com.amazonaws.http.AmazonHttpClient$RequestExecutor.handleServiceErrorResponse(AmazonHttpClient.java:1383) at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeOneRequest(AmazonHttpClient.java:1359) at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeHelper(AmazonHttpClient.java:1139) at com.amazonaws.http.AmazonHttpClient$RequestExecutor.doExecute(AmazonHttpClient.java:796) at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeWithTimer(AmazonHttpClient.java:764) at com.amazonaws.http.AmazonHttpClient$RequestExecutor.execute(AmazonHttpClient.java:738) at com.amazonaws.http.AmazonHttpClient$RequestExecutor.access$500(AmazonHttpClient.java:698) at com.amazonaws.http.AmazonHttpClient$RequestExecutionBuilderImpl.execute(AmazonHttpClient.java:680) at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:544) at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:524) at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:5052) at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:4998) at com.amazonaws.services.s3.AmazonS3Client.initiateMultipartUpload(AmazonS3Client.java:3574) at com.amazonaws.services.s3.transfer.internal.UploadCallable.initiateMultipartUpload(UploadCallable.java:362) at com.amazonaws.services.s3.transfer.internal.UploadCallable.uploadInParts(UploadCallable.java:178) at com.amazonaws.services.s3.transfer.internal.UploadCallable.call(UploadCallable.java:121) at com.amazonaws.services.s3.transfer.internal.UploadMonitor.call(UploadMonitor.java:143) at com.amazonaws.services.s3.transfer.internal.UploadMonitor.call(UploadMonitor.java:48) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)