diff --git a/src/main/java/com/google/jenkins/plugins/storage/AbstractBucketLifecycleManager.java b/src/main/java/com/google/jenkins/plugins/storage/AbstractBucketLifecycleManager.java index 3b21b7a3..8ca2428b 100644 --- a/src/main/java/com/google/jenkins/plugins/storage/AbstractBucketLifecycleManager.java +++ b/src/main/java/com/google/jenkins/plugins/storage/AbstractBucketLifecycleManager.java @@ -65,9 +65,9 @@ public abstract class AbstractBucketLifecycleManager extends AbstractUpload { * NOTE: this hides the "make public" and "for failed" options of the * base, which are mainly relevant for true uploads. */ - public AbstractBucketLifecycleManager(String bucketNameWithVars, + public AbstractBucketLifecycleManager(String bucket, @Nullable UploadModule module) { - super(bucketNameWithVars, false /*sharedPublicly*/, + super(bucket, false /*sharedPublicly*/, false /*forFailedJobs*/, module); } diff --git a/src/main/java/com/google/jenkins/plugins/storage/AbstractUpload.java b/src/main/java/com/google/jenkins/plugins/storage/AbstractUpload.java index 13a7c04f..7e2155eb 100644 --- a/src/main/java/com/google/jenkins/plugins/storage/AbstractUpload.java +++ b/src/main/java/com/google/jenkins/plugins/storage/AbstractUpload.java @@ -100,20 +100,20 @@ public abstract class AbstractUpload /** * Construct the base upload from a handful of universal properties. * - * @param bucketNameWithVars The unresolved name of the storage bucket within + * @param bucket The unresolved name of the storage bucket within * which to store the resulting objects. * @param sharedPublicly Whether to publicly share the objects being uploaded * @param forFailedJobs Whether to perform the upload regardless of the * build's outcome */ - public AbstractUpload(String bucketNameWithVars, boolean sharedPublicly, + public AbstractUpload(String bucket, boolean sharedPublicly, boolean forFailedJobs, @Nullable UploadModule module) { if (module != null) { this.module = module; } else { this.module = getDescriptor().getModule(); } - this.bucketNameWithVars = checkNotNull(bucketNameWithVars); + this.bucketNameWithVars = checkNotNull(bucket); this.sharedPublicly = sharedPublicly; this.forFailedJobs = forFailedJobs; } @@ -135,7 +135,7 @@ public final void perform(GoogleRobotCredentials credentials, // Turn paths containing things like $BUILD_NUMBER and $JOB_NAME into // their fully resolved forms. String bucketNameResolvedVars = Util.replaceMacro( - getBucketNameWithVars(), build.getEnvironment(listener)); + getBucket(), build.getEnvironment(listener)); if (!bucketNameResolvedVars.startsWith(GCS_SCHEME)) { listener.error(module.prefix( @@ -242,9 +242,10 @@ public boolean forResult(Result result) { * The bucket name specified by the user, which potentially contains * unresolved symbols, such as $JOB_NAME and $BUILD_NUMBER. */ - public String getBucketNameWithVars() { + public String getBucket() { return bucketNameWithVars; } + /** NOTE: old name kept for deserialization */ private final String bucketNameWithVars; /** diff --git a/src/main/java/com/google/jenkins/plugins/storage/ClassicUpload.java b/src/main/java/com/google/jenkins/plugins/storage/ClassicUpload.java index 1b3aec64..b7b0bad8 100644 --- a/src/main/java/com/google/jenkins/plugins/storage/ClassicUpload.java +++ b/src/main/java/com/google/jenkins/plugins/storage/ClassicUpload.java @@ -23,8 +23,7 @@ import org.kohsuke.stapler.DataBoundConstructor; import org.kohsuke.stapler.QueryParameter; -import static com.google.common.base.Preconditions.checkNotNull; - +import com.google.common.base.Objects; import com.google.jenkins.plugins.util.Resolve; import hudson.Extension; @@ -46,11 +45,16 @@ public class ClassicUpload extends AbstractUpload { * and the glob for matching files. */ @DataBoundConstructor - public ClassicUpload(String bucketNameWithVars, boolean sharedPublicly, + public ClassicUpload(String bucket, boolean sharedPublicly, boolean forFailedJobs, @Nullable UploadModule module, - String sourceGlobWithVars) { - super(bucketNameWithVars, sharedPublicly, forFailedJobs, module); - this.sourceGlobWithVars = checkNotNull(sourceGlobWithVars); + String pattern, + // Legacy arguments for backwards compatibility + @Deprecated @Nullable String bucketNameWithVars, + @Deprecated @Nullable String sourceGlobWithVars) { + super(Objects.firstNonNull(bucket, bucketNameWithVars), sharedPublicly, + forFailedJobs, module); + this.sourceGlobWithVars = + Objects.firstNonNull(pattern, sourceGlobWithVars); } /** @@ -58,7 +62,7 @@ public ClassicUpload(String bucketNameWithVars, boolean sharedPublicly, */ @Override public String getDetails() { - return getSourceGlobWithVars(); + return getPattern(); } /** @@ -70,7 +74,7 @@ protected UploadSpec getInclusions(AbstractBuild build, FilePath workspace, TaskListener listener) throws UploadException { try { String globResolvedVars = Util.replaceMacro( - getSourceGlobWithVars(), build.getEnvironment(listener)); + getPattern(), build.getEnvironment(listener)); // In order to support absolute globs (e.g. /gagent/metaOutput/std*.txt) // we must identify absolute paths and rebase the "workspace" to be the // root directory and the glob to be relative to root. @@ -98,7 +102,7 @@ protected UploadSpec getInclusions(AbstractBuild build, } listener.getLogger().println(module.prefix( Messages.ClassicUpload_FoundForPattern( - inclusions.length, getSourceGlobWithVars()))); + inclusions.length, getPattern()))); return new UploadSpec(workspace, Arrays.asList(inclusions)); } catch (InterruptedException e) { throw new UploadException(Messages.AbstractUpload_IncludeException(), e); @@ -124,9 +128,10 @@ private FilePath getRoot(final FilePath workspace) { * The glob of files to upload, which potentially contains unresolved * symbols, such as $JOB_NAME and $BUILD_NUMBER. */ - public String getSourceGlobWithVars() { + public String getPattern() { return sourceGlobWithVars; } + /** NOTE: old name kept for deserialization */ private final String sourceGlobWithVars; @@ -153,13 +158,13 @@ public String getDisplayName() { } /** - * This callback validates the {@code sourceGlobWithVars} input field's + * This callback validates the {@code pattern} input field's * values. */ - public FormValidation doCheckSourceGlobWithVars( - @QueryParameter final String sourceGlobWithVars) + public FormValidation doCheckPattern( + @QueryParameter final String pattern) throws IOException { - String resolvedInput = Resolve.resolveBuiltin(sourceGlobWithVars); + String resolvedInput = Resolve.resolveBuiltin(pattern); if (resolvedInput.isEmpty()) { return FormValidation.error( Messages.ClassicUpload_EmptyGlob()); diff --git a/src/main/java/com/google/jenkins/plugins/storage/ExpiringBucketLifecycleManager.java b/src/main/java/com/google/jenkins/plugins/storage/ExpiringBucketLifecycleManager.java index 6be6eb5f..a553fb22 100644 --- a/src/main/java/com/google/jenkins/plugins/storage/ExpiringBucketLifecycleManager.java +++ b/src/main/java/com/google/jenkins/plugins/storage/ExpiringBucketLifecycleManager.java @@ -25,6 +25,7 @@ import org.kohsuke.stapler.DataBoundConstructor; import com.google.api.services.storage.model.Bucket; +import com.google.common.base.Objects; import com.google.common.collect.Lists; import hudson.Extension; @@ -43,11 +44,14 @@ public class ExpiringBucketLifecycleManager * common properties. */ @DataBoundConstructor - public ExpiringBucketLifecycleManager(String bucketNameWithVars, - @Nullable UploadModule module, int bucketObjectTTL) { - super(bucketNameWithVars, module); - - this.bucketObjectTTL = bucketObjectTTL; + public ExpiringBucketLifecycleManager(String bucket, + @Nullable UploadModule module, Integer ttl, + // Legacy arguments for backwards compatibility + @Deprecated @Nullable String bucketNameWithVars, + @Deprecated @Nullable Integer bucketObjectTTL) { + super(Objects.firstNonNull(bucket, bucketNameWithVars), module); + + this.bucketObjectTTL = Objects.firstNonNull(ttl, bucketObjectTTL); } /** @@ -56,7 +60,7 @@ public ExpiringBucketLifecycleManager(String bucketNameWithVars, @Override public String getDetails() { return Messages.ExpiringBucketLifecycleManager_DetailsMessage( - getBucketObjectTTL()); + getTtl()); } /** @@ -92,7 +96,7 @@ protected Bucket checkBucket(Bucket bucket) if (age == null) { continue; } - if (age != getBucketObjectTTL()) { + if (age != getTtl()) { continue; } @@ -110,7 +114,7 @@ protected Bucket checkBucket(Bucket bucket) protected Bucket decorateBucket(Bucket bucket) { Bucket.Lifecycle.Rule rule = new Bucket.Lifecycle.Rule() .setCondition(new Bucket.Lifecycle.Rule.Condition() - .setAge(getBucketObjectTTL())) // age is in days + .setAge(getTtl())) // age is in days .setAction(new Bucket.Lifecycle.Rule.Action() .setType(DELETE)); @@ -140,9 +144,10 @@ protected Bucket decorateBucket(Bucket bucket) { * Surface the TTL for objects contained within the bucket for roundtripping * to the jelly UI. */ - public int getBucketObjectTTL() { + public int getTtl() { return bucketObjectTTL; } + /** NOTE: old name kept for deserialization */ private final int bucketObjectTTL; private static final String DELETE = "Delete"; diff --git a/src/main/java/com/google/jenkins/plugins/storage/GoogleCloudStorageUploader.java b/src/main/java/com/google/jenkins/plugins/storage/GoogleCloudStorageUploader.java index fac9f876..e6e525f4 100644 --- a/src/main/java/com/google/jenkins/plugins/storage/GoogleCloudStorageUploader.java +++ b/src/main/java/com/google/jenkins/plugins/storage/GoogleCloudStorageUploader.java @@ -169,7 +169,8 @@ public List getDefaultUploads() { return ImmutableList.of( new StdoutUpload(GCS_SCHEME, false /* public? */, true /* for failed? */, - null /* module */, "build-log.txt" /* log name */)); + null /* module */, "build-log.txt" /* log name */, + null /* legacy arg: bucketNameWithVars */)); } public List getUploads() { diff --git a/src/main/java/com/google/jenkins/plugins/storage/StdoutUpload.java b/src/main/java/com/google/jenkins/plugins/storage/StdoutUpload.java index 7e90bb49..134b9fa6 100644 --- a/src/main/java/com/google/jenkins/plugins/storage/StdoutUpload.java +++ b/src/main/java/com/google/jenkins/plugins/storage/StdoutUpload.java @@ -26,6 +26,7 @@ import static com.google.common.base.Preconditions.checkNotNull; import static com.google.common.io.ByteStreams.copy; +import com.google.common.base.Objects; import com.google.common.collect.ImmutableList; import com.google.common.io.Closeables; import com.google.jenkins.plugins.util.Resolve; @@ -52,10 +53,13 @@ public class StdoutUpload extends AbstractUpload { * information about how to name the build log file. */ @DataBoundConstructor - public StdoutUpload(String bucketNameWithVars, boolean sharedPublicly, + public StdoutUpload(@Nullable String bucket, boolean sharedPublicly, boolean forFailedJobs, @Nullable UploadModule module, - String logName) { - super(bucketNameWithVars, sharedPublicly, forFailedJobs, module); + String logName, + // Legacy arguments for backwards compatibility + @Deprecated @Nullable String bucketNameWithVars) { + super(Objects.firstNonNull(bucket, bucketNameWithVars), sharedPublicly, + forFailedJobs, module); this.logName = checkNotNull(logName); } diff --git a/src/main/resources/com/google/jenkins/plugins/storage/AbstractBucketLifecycleManager/help-bucketNameWithVars.html b/src/main/resources/com/google/jenkins/plugins/storage/AbstractBucketLifecycleManager/help-bucket.html similarity index 100% rename from src/main/resources/com/google/jenkins/plugins/storage/AbstractBucketLifecycleManager/help-bucketNameWithVars.html rename to src/main/resources/com/google/jenkins/plugins/storage/AbstractBucketLifecycleManager/help-bucket.html diff --git a/src/main/resources/com/google/jenkins/plugins/storage/AbstractUpload/config.jelly b/src/main/resources/com/google/jenkins/plugins/storage/AbstractUpload/config.jelly index 6d45fdc5..636cd192 100644 --- a/src/main/resources/com/google/jenkins/plugins/storage/AbstractUpload/config.jelly +++ b/src/main/resources/com/google/jenkins/plugins/storage/AbstractUpload/config.jelly @@ -23,7 +23,7 @@ - + diff --git a/src/main/resources/com/google/jenkins/plugins/storage/AbstractUpload/help-bucketNameWithVars.html b/src/main/resources/com/google/jenkins/plugins/storage/AbstractUpload/help-bucket.html similarity index 100% rename from src/main/resources/com/google/jenkins/plugins/storage/AbstractUpload/help-bucketNameWithVars.html rename to src/main/resources/com/google/jenkins/plugins/storage/AbstractUpload/help-bucket.html diff --git a/src/main/resources/com/google/jenkins/plugins/storage/ClassicUpload/elements.jelly b/src/main/resources/com/google/jenkins/plugins/storage/ClassicUpload/elements.jelly index 1136c0e3..6c06018d 100644 --- a/src/main/resources/com/google/jenkins/plugins/storage/ClassicUpload/elements.jelly +++ b/src/main/resources/com/google/jenkins/plugins/storage/ClassicUpload/elements.jelly @@ -18,7 +18,7 @@ xmlns:a="/lib/auth"> - + diff --git a/src/main/resources/com/google/jenkins/plugins/storage/ClassicUpload/help-sourceGlobWithVars.html b/src/main/resources/com/google/jenkins/plugins/storage/ClassicUpload/help-pattern.html similarity index 100% rename from src/main/resources/com/google/jenkins/plugins/storage/ClassicUpload/help-sourceGlobWithVars.html rename to src/main/resources/com/google/jenkins/plugins/storage/ClassicUpload/help-pattern.html diff --git a/src/main/resources/com/google/jenkins/plugins/storage/ExpiringBucketLifecycleManager/elements.jelly b/src/main/resources/com/google/jenkins/plugins/storage/ExpiringBucketLifecycleManager/elements.jelly index 6ebd80de..b57920d3 100644 --- a/src/main/resources/com/google/jenkins/plugins/storage/ExpiringBucketLifecycleManager/elements.jelly +++ b/src/main/resources/com/google/jenkins/plugins/storage/ExpiringBucketLifecycleManager/elements.jelly @@ -18,7 +18,7 @@ xmlns:a="/lib/auth"> - + diff --git a/src/main/resources/com/google/jenkins/plugins/storage/ExpiringBucketLifecycleManager/help-bucketObjectTTL.html b/src/main/resources/com/google/jenkins/plugins/storage/ExpiringBucketLifecycleManager/help-ttl.html similarity index 100% rename from src/main/resources/com/google/jenkins/plugins/storage/ExpiringBucketLifecycleManager/help-bucketObjectTTL.html rename to src/main/resources/com/google/jenkins/plugins/storage/ExpiringBucketLifecycleManager/help-ttl.html diff --git a/src/test/java/com/google/jenkins/plugins/storage/AbstractBucketLifecycleManagerTest.java b/src/test/java/com/google/jenkins/plugins/storage/AbstractBucketLifecycleManagerTest.java index 4057885d..22228886 100644 --- a/src/test/java/com/google/jenkins/plugins/storage/AbstractBucketLifecycleManagerTest.java +++ b/src/test/java/com/google/jenkins/plugins/storage/AbstractBucketLifecycleManagerTest.java @@ -214,7 +214,7 @@ public void testGetters() { new MockUploadModule(executor), FAKE_DETAILS, null /* bucket */); - assertEquals(BUCKET_URI, underTest.getBucketNameWithVars()); + assertEquals(BUCKET_URI, underTest.getBucket()); assertEquals(FAKE_DETAILS, underTest.getDetails()); } diff --git a/src/test/java/com/google/jenkins/plugins/storage/AbstractUploadTest.java b/src/test/java/com/google/jenkins/plugins/storage/AbstractUploadTest.java index 5f50bc62..983c3a28 100644 --- a/src/test/java/com/google/jenkins/plugins/storage/AbstractUploadTest.java +++ b/src/test/java/com/google/jenkins/plugins/storage/AbstractUploadTest.java @@ -243,7 +243,7 @@ public void testGetters() { FAKE_DETAILS, null /* uploads */); - assertEquals(BUCKET_URI, underTest.getBucketNameWithVars()); + assertEquals(BUCKET_URI, underTest.getBucket()); assertEquals(sharedPublicly, underTest.isSharedPublicly()); assertEquals(forFailedJobs, underTest.isForFailedJobs()); } diff --git a/src/test/java/com/google/jenkins/plugins/storage/ClassicUploadTest.java b/src/test/java/com/google/jenkins/plugins/storage/ClassicUploadTest.java index 0ad2ab49..1b45e63b 100644 --- a/src/test/java/com/google/jenkins/plugins/storage/ClassicUploadTest.java +++ b/src/test/java/com/google/jenkins/plugins/storage/ClassicUploadTest.java @@ -126,27 +126,42 @@ public void setUp() throws Exception { sharedPublicly = false; forFailedJobs = false; underTest = new ClassicUpload(bucket, sharedPublicly, forFailedJobs, - new MockUploadModule(executor), glob); + new MockUploadModule(executor), glob, + null /* legacy arg */, null /* legacy arg */); } @Test @WithoutJenkins public void testGetters() { - assertEquals(glob, underTest.getSourceGlobWithVars()); + assertEquals(glob, underTest.getPattern()); + } + + @Test + @WithoutJenkins + public void testLegacyArgs() { + ClassicUpload legacyVersion = new ClassicUpload(null /* bucket */, + sharedPublicly, forFailedJobs, new MockUploadModule(executor), + null /* glob */, bucket, glob); + assertEquals(underTest.getBucket(), legacyVersion.getBucket()); + assertEquals(underTest.isSharedPublicly(), + legacyVersion.isSharedPublicly()); + assertEquals(underTest.isForFailedJobs(), legacyVersion.isForFailedJobs()); + assertEquals(underTest.getPattern(), legacyVersion.getPattern()); } @Test(expected = NullPointerException.class) @WithoutJenkins public void testCheckNullGlob() throws Exception { new ClassicUpload(bucket, sharedPublicly, forFailedJobs, - new MockUploadModule(executor), null); + new MockUploadModule(executor), null, + null /* legacy arg */, null /* legacy arg */); } @Test public void testCheckNullOnNullables() throws Exception { // The upload should handle null for the other fields. new ClassicUpload(bucket, sharedPublicly, forFailedJobs, - null /* module */, glob); + null /* module */, glob, null /* legacy arg */, null /* legacy arg */); } @Test @@ -155,21 +170,21 @@ public void doCheckGlobTest() throws IOException { DescriptorImpl descriptor = new DescriptorImpl(); assertEquals(FormValidation.Kind.OK, - descriptor.doCheckSourceGlobWithVars("asdf").kind); + descriptor.doCheckPattern("asdf").kind); // Some good sample globs we should accept assertEquals(FormValidation.Kind.OK, - descriptor.doCheckSourceGlobWithVars("target/*.war").kind); + descriptor.doCheckPattern("target/*.war").kind); assertEquals(FormValidation.Kind.OK, - descriptor.doCheckSourceGlobWithVars("**/target/foo.*").kind); + descriptor.doCheckPattern("**/target/foo.*").kind); // Successfully resolved assertEquals(FormValidation.Kind.OK, - descriptor.doCheckSourceGlobWithVars("asdf$BUILD_NUMBER").kind); + descriptor.doCheckPattern("asdf$BUILD_NUMBER").kind); // UN-successfully resolved assertEquals(FormValidation.Kind.ERROR, - descriptor.doCheckSourceGlobWithVars("$foo").kind); + descriptor.doCheckPattern("$foo").kind); // Escaped $BUILD_NUMBER assertEquals(FormValidation.Kind.ERROR, - descriptor.doCheckSourceGlobWithVars("$$BUILD_NUMBER").kind); + descriptor.doCheckPattern("$$BUILD_NUMBER").kind); } private void dumpLog(Run run) throws IOException { diff --git a/src/test/java/com/google/jenkins/plugins/storage/ExpiringBucketLifecycleManagerTest.java b/src/test/java/com/google/jenkins/plugins/storage/ExpiringBucketLifecycleManagerTest.java index a674157b..503a4138 100644 --- a/src/test/java/com/google/jenkins/plugins/storage/ExpiringBucketLifecycleManagerTest.java +++ b/src/test/java/com/google/jenkins/plugins/storage/ExpiringBucketLifecycleManagerTest.java @@ -136,14 +136,25 @@ public void setUp() throws Exception { forbiddenException = new ForbiddenException(); underTest = new ExpiringBucketLifecycleManager(BUCKET_URI, - new MockUploadModule(executor), TTL); + new MockUploadModule(executor), TTL, + null /* legacy arg */, null /* legacy arg */); } @Test @WithoutJenkins public void testGetters() { - assertEquals(BUCKET_URI, underTest.getBucketNameWithVars()); - assertEquals(TTL, underTest.getBucketObjectTTL()); + assertEquals(BUCKET_URI, underTest.getBucket()); + assertEquals(TTL, underTest.getTtl()); + } + + @Test + @WithoutJenkins + public void testGettersWithLegacy() { + underTest = new ExpiringBucketLifecycleManager(null /* bucket */, + new MockUploadModule(executor), null /* ttl */, + BUCKET_URI, TTL); + assertEquals(BUCKET_URI, underTest.getBucket()); + assertEquals(TTL, underTest.getTtl()); } @Test diff --git a/src/test/java/com/google/jenkins/plugins/storage/GoogleCloudStorageUploaderTest.java b/src/test/java/com/google/jenkins/plugins/storage/GoogleCloudStorageUploaderTest.java index e92b1c9f..2d955fd7 100644 --- a/src/test/java/com/google/jenkins/plugins/storage/GoogleCloudStorageUploaderTest.java +++ b/src/test/java/com/google/jenkins/plugins/storage/GoogleCloudStorageUploaderTest.java @@ -168,7 +168,8 @@ public void setUp() throws Exception { underTest = new GoogleCloudStorageUploader(CREDENTIALS_ID, ImmutableList.of( new ClassicUpload(bucket, sharedPublicly, forFailedJobs, - new MockUploadModule(executor), glob))); + new MockUploadModule(executor), glob, + null /* legacy arg*/, null /* legacy arg */))); } @Test @@ -228,7 +229,8 @@ public void testBadBucket() throws Exception { underTest = new GoogleCloudStorageUploader(CREDENTIALS_ID, ImmutableList.of( new ClassicUpload(bucket, sharedPublicly, forFailedJobs, - new MockUploadModule(executor), glob))); + new MockUploadModule(executor), glob, + null /* legacy arg */, null /* legacy arg */))); project.getBuildersList().add(new Shell("echo foo > bar.txt")); project.getPublishersList().add(underTest); @@ -276,7 +278,8 @@ public void testFilePlainWithFailureAndUpload() throws Exception { underTest = new GoogleCloudStorageUploader(CREDENTIALS_ID, ImmutableList.of( new ClassicUpload(bucket, sharedPublicly, forFailedJobs, - new MockUploadModule(executor), glob))); + new MockUploadModule(executor), glob, + null /* legacy arg */, null /* legacy arg */))); project.getBuildersList().add(new Shell("echo foo > bar.txt")); // Fail the build to show that the uploader does nothing. @@ -297,7 +300,8 @@ public void testStdoutUpload() throws Exception { underTest = new GoogleCloudStorageUploader(CREDENTIALS_ID, ImmutableList.of( new StdoutUpload(bucket, sharedPublicly, forFailedJobs, - new MockUploadModule(executor), "build-log.txt"))); + new MockUploadModule(executor), "build-log.txt", + null /* legacy arg */))); project.getBuildersList().add(new Shell("echo Hello World!")); project.getPublishersList().add(underTest); @@ -317,7 +321,8 @@ public void testFileGlob() throws Exception { underTest = new GoogleCloudStorageUploader(CREDENTIALS_ID, ImmutableList.of( new ClassicUpload(bucket, sharedPublicly, forFailedJobs, - new MockUploadModule(executor), glob))); + new MockUploadModule(executor), glob, + null /* legacy arg */, null /* legacy arg */))); project.getBuildersList().add(new Shell("echo foo > bar.txt")); project.getPublishersList().add(underTest); @@ -338,7 +343,8 @@ public void testAbsolutePath() throws Exception { underTest = new GoogleCloudStorageUploader(CREDENTIALS_ID, ImmutableList.of( new ClassicUpload(bucket, sharedPublicly, forFailedJobs, - new MockUploadModule(executor), glob))); + new MockUploadModule(executor), glob, + null /* legacy arg */, null /* legacy arg */))); project.getBuildersList().add(new Shell("echo foo > " + absoluteFilePath)); @@ -361,7 +367,8 @@ public void testAbsoluteGlob() throws Exception { underTest = new GoogleCloudStorageUploader(CREDENTIALS_ID, ImmutableList.of( new ClassicUpload(bucket, sharedPublicly, forFailedJobs, - new MockUploadModule(executor), glob))); + new MockUploadModule(executor), glob, + null /* legacy arg */, null /* legacy arg */))); project.getBuildersList().add(new Shell("echo foo > " + absoluteFilePath1)); @@ -385,7 +392,8 @@ public void testFileWithVar() throws Exception { underTest = new GoogleCloudStorageUploader(CREDENTIALS_ID, ImmutableList.of( new ClassicUpload(bucket, sharedPublicly, forFailedJobs, - new MockUploadModule(executor), glob))); + new MockUploadModule(executor), glob, + null /* legacy arg */, null /* legacy arg */))); project.getBuildersList().add( new Shell("echo foo > bar.$BUILD_NUMBER.txt")); @@ -406,7 +414,8 @@ public void testFileWithDir() throws Exception { underTest = new GoogleCloudStorageUploader(CREDENTIALS_ID, ImmutableList.of( new ClassicUpload(bucket, sharedPublicly, forFailedJobs, - new MockUploadModule(executor), glob))); + new MockUploadModule(executor), glob, + null /* legacy arg */, null /* legacy arg */))); project.getBuildersList().add( new Shell("mkdir blah; echo foo > blah/bar.txt")); @@ -427,7 +436,8 @@ public void testFileWithRecursiveGlob() throws Exception { underTest = new GoogleCloudStorageUploader(CREDENTIALS_ID, ImmutableList.of( new ClassicUpload(bucket, sharedPublicly, forFailedJobs, - new MockUploadModule(executor), glob))); + new MockUploadModule(executor), glob, + null /* legacy arg */, null /* legacy arg */))); project.getBuildersList().add( new Shell("mkdir blah; echo foo > blah/bar.txt")); @@ -448,7 +458,8 @@ public void testMultiFileGlob() throws Exception { underTest = new GoogleCloudStorageUploader(CREDENTIALS_ID, ImmutableList.of( new ClassicUpload(bucket, sharedPublicly, forFailedJobs, - new MockUploadModule(executor), glob))); + new MockUploadModule(executor), glob, + null /* legacy arg */, null /* legacy arg */))); project.getBuildersList().add( new Shell("echo foo > foo.txt; echo bar > bar.txt"));