public BuildCommand cleanUpCommand(String baseDir) { if (hasMaterialsWithNoDestinationFolder()) { return noop(); } List<String> allowed = allowedFolders(); return cleandir(baseDir, allowed.toArray(new String[allowed.size()])); }
private BuildCommand cleanWorkingDir(String workDir) { return compose( cleandir(workDir).setTest(isNotRepository(workDir)), cleandir(workDir).setTest(isRepoUrlChanged(workDir)), cleandir(workDir).setTest(isBranchChanged(workDir)), material.isShallowClone() ? noop() : cleandir(workDir).setTest(isShallow(workDir)) ).setTest(test("-d", workDir)); }
@Test public void cleanDirWithAllows() throws IOException { runBuild(mkdirs("bar/foo/baz"), Passed); runBuild(mkdirs("bar/foo2"), Passed); assertTrue(new File(sandbox, "bar/foo/file1").createNewFile()); assertTrue(new File(sandbox, "bar/file2").createNewFile()); assertTrue(new File(sandbox, "file3").createNewFile()); runBuild(cleandir("bar", "file2", "foo2"), Passed); assertThat(new File(sandbox, "bar").isDirectory(), is(true)); assertThat(new File(sandbox, "file3").exists(), is(true)); assertThat(new File(sandbox, "bar").listFiles(), arrayContainingInAnyOrder(new File(sandbox, "bar/file2"), new File(sandbox, "bar/foo2"))); }
@Test public void cleanDirWithoutAllows() throws IOException { runBuild(mkdirs("foo/baz"), Passed); assertTrue(new File(sandbox, "foo/file1").createNewFile()); assertTrue(new File(sandbox, "file2").createNewFile()); runBuild(cleandir(""), Passed); assertThat(sandbox.exists(), is(true)); assertThat(sandbox.listFiles().length, is(0)); }
@Test public void cleanDirWithAllowsAndWorkingDir() throws IOException { runBuild(mkdirs("bar/foo/baz"), Passed); runBuild(mkdirs("bar/foo2"), Passed); assertTrue(new File(sandbox, "bar/foo/file1").createNewFile()); assertTrue(new File(sandbox, "bar/file2").createNewFile()); assertTrue(new File(sandbox, "file3").createNewFile()); runBuild(cleandir("", "file2", "foo2").setWorkingDirectory("bar"), Passed); assertThat(new File(sandbox, "bar").isDirectory(), is(true)); assertThat(new File(sandbox, "file3").exists(), is(true)); assertThat(new File(sandbox, "bar").listFiles(), arrayContainingInAnyOrder(new File(sandbox, "bar/file2"), new File(sandbox, "bar/foo2"))); }
private BuildCommand freshCheckout(String workingDir, Revision revision) { return compose( echoWithPrefix("Checking out a fresh copy"), cleandir(workingDir).setTest(test("-d", workingDir)), mkdirs(workingDir).setTest(test("-nd", workingDir)), checkout(workingDir, revision) ); }
private BuildCommand cleanWorkingDir() { if (!assignment.shouldCleanWorkingDir()) { return noop(); } return BuildCommand.compose( cleandir(workingDirectory()), echoWithPrefix("Cleaning working directory \"$%s\" since stage is configured to clean working directory", workingDirectory()) ).setTest(test("-d", workingDirectory())); }