Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-61887

Use IAM Role field is populated properly when loading the configuration page.

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Minor Minor
    • s3-plugin
    • 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)
      

            ketchumm Mark Ketchum
            ketchumm Mark Ketchum
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: