diff --git a/src/main/resources/hudson/plugins/s3/Entry/help-buildVariable.html b/src/main/resources/hudson/plugins/s3/Entry/help-buildVariable.html
new file mode 100644
index 00000000..590434c8
--- /dev/null
+++ b/src/main/resources/hudson/plugins/s3/Entry/help-buildVariable.html
@@ -0,0 +1,8 @@
+
+Enter Jenkins build environment variable name. Its value will contain artifacts URLs separated by new line symbol \n having following format:
+
+http://<s3-bucket>/<artifact-file-name>\n
+...
+http://<s3-bucket>/<artifact-file-name>\n
+
+
\ No newline at end of file
diff --git a/src/main/resources/hudson/plugins/s3/Entry/help-injectUrl.html b/src/main/resources/hudson/plugins/s3/Entry/help-injectUrl.html
new file mode 100644
index 00000000..97231b5a
--- /dev/null
+++ b/src/main/resources/hudson/plugins/s3/Entry/help-injectUrl.html
@@ -0,0 +1,3 @@
+
+When enabled, this lets Jenkins inject uploaded artifacts URLs in Jenkins environment variable. In this case, the variable can be used as $VAR_NAME.
+
\ No newline at end of file
diff --git a/src/test/java/hudson/plugins/s3/MinIOTest.java b/src/test/java/hudson/plugins/s3/MinIOTest.java
index aede518c..2771b7a0 100644
--- a/src/test/java/hudson/plugins/s3/MinIOTest.java
+++ b/src/test/java/hudson/plugins/s3/MinIOTest.java
@@ -146,6 +146,8 @@ private static void createAndRunPublisher(final JenkinsRule r) throws Exception
false,
true,
false,
+ false,
+ "",
Collections.emptyList())),
Collections.emptyList(),
true,
diff --git a/src/test/java/hudson/plugins/s3/S3BucketPublisherTest.java b/src/test/java/hudson/plugins/s3/S3BucketPublisherTest.java
index b634120c..b668d91d 100644
--- a/src/test/java/hudson/plugins/s3/S3BucketPublisherTest.java
+++ b/src/test/java/hudson/plugins/s3/S3BucketPublisherTest.java
@@ -1,7 +1,9 @@
package hudson.plugins.s3;
import com.gargoylesoftware.htmlunit.HttpMethod;
+import com.gargoylesoftware.htmlunit.Page;
import com.gargoylesoftware.htmlunit.WebRequest;
+import com.gargoylesoftware.htmlunit.WebResponse;
import com.gargoylesoftware.htmlunit.util.UrlUtils;
import hudson.model.Item;
import hudson.security.SecurityRealm;
@@ -37,6 +39,7 @@ public void testConfigExists() throws Exception {
Assert.assertEquals(403, webClient.getPage(request).getWebResponse().getStatusCode());
webClient = j.createWebClient().login("alice", "alice");
+ webClient.setThrowExceptionOnFailingStatusCode(false);
Assert.assertEquals(200, webClient.getPage(request).getWebResponse().getStatusCode());
}
}
diff --git a/src/test/java/hudson/plugins/s3/S3Test.java b/src/test/java/hudson/plugins/s3/S3Test.java
index 3c5038c2..8bcd80cf 100644
--- a/src/test/java/hudson/plugins/s3/S3Test.java
+++ b/src/test/java/hudson/plugins/s3/S3Test.java
@@ -102,7 +102,18 @@ public void dontSetBuildResultTest() throws Exception {
}
private Entry entryForFile(String fileName) {
- return new Entry("bucket", fileName, "", "", "", false, false, true, false, false, false, false, false, null);
+ return new Entry("bucket", fileName, "", "", "",
+ false,
+ true,
+ true,
+ false,
+ false,
+ false,
+ true,
+ false,
+ false,
+ "",
+ null);
}
private Builder stepCreatingFile(String fileName) {
@@ -114,7 +125,7 @@ private Builder stepCreatingFile(String fileName) {
}
private void replaceS3PluginProfile(S3Profile s3Profile) {
- final Jenkins instance = Jenkins.getInstance();
+ final Jenkins instance = Jenkins.get();
final DescriptorImpl s3Plugin = (DescriptorImpl) instance.getDescriptor(S3BucketPublisher.class);
s3Plugin.replaceProfiles(newArrayList(s3Profile));
}