public String getSrc() { return fetchTask.getSrc(); }
@Override public String describe() { return String.format("fetch artifact [%s] => [%s] from [%s/%s/%s]", getSrc(), getDest(), getPipelineName(), getStage(), getJob()); }
FetchHandler getHandler(FetchTask task, String pipelineName) { return isNotEmpty(task.getRawSrcdir()) ? new DirHandler(task.getRawSrcdir(), task.destOnAgent(pipelineName)) : new FileHandler( task.artifactDest(pipelineName, FilenameUtils.getName(task.getRawSrcfile())), task.getSrc()); }
private Builder createFetchTaskBuilder(FetchTask task, Pipeline pipeline, JobIdentifier fetchFrom, Builder cancelBuilder, ChecksumFileHandler checksumHandler) { final FetchHandler fetchHandler = getHandler(task, pipeline.getName()); return new FetchArtifactBuilder(task.getConditions(), cancelBuilder, task.describe(), fetchFrom, task.getSrc(), task.getDest(), fetchHandler, checksumHandler); }
@Test public void shouldReturnSrcFileWhenSrcFileIsNotEmpty() throws Exception { FetchTask fetchTask = new FetchTask(); fetchTask.setSrcfile("a.jar"); assertThat(fetchTask.getSrc(), is("a.jar")); }
@Test public void shouldReturnSrcDirWhenSrcDirIsNotEmpty() throws Exception { FetchTask fetchTask = new FetchTask(); fetchTask.setSrcdir("folder"); assertThat(fetchTask.getSrc(), is("folder")); }
private CRFetchArtifactTask fetchTaskToCRFetchTask(FetchTask task) { CRFetchArtifactTask fetchTask = new CRFetchArtifactTask( task.getStage().toString(), task.getJob().toString(), task.getSrc()); fetchTask.setDestination(task.getDest()); fetchTask.setPipelineName(task.getPipelineName().toString()); fetchTask.setSourceIsDirectory(!task.isSourceAFile()); commonCRTaskMembers(fetchTask, task); return fetchTask; }
@Test public void shouldNormalizeSrcFile() throws Exception { FetchTask fetchTask = new FetchTask(new CaseInsensitiveString("mingle"), new CaseInsensitiveString("dev"), new CaseInsensitiveString("windows-3"), "cruise-output\\console.log", "dest\\subfolder"); assertThat(fetchTask.getSrc(), is("cruise-output/console.log")); }
@Test public void shouldNormalizeSrcDir() throws Exception { FetchTask fetchTask = new FetchTask(new CaseInsensitiveString("mingle"), new CaseInsensitiveString("dev"), new CaseInsensitiveString("windows-3"), "", "dest\\subfolder"); fetchTask.setSrcdir("testfolder\\subfolder"); assertThat(fetchTask.getSrc(), is("testfolder/subfolder")); }
@Test public void shouldLoadGetFromSvnPartialForDir() throws Exception { String buildXmlPartial = "<jobs>\n" + " <job name=\"functional\">\n" + " <tasks>\n" + " <fetchartifact artifactOrigin='gocd' stage='dev' job='unit' srcdir='dist' dest='lib' />\n" + " </tasks>\n" + " </job>\n" + "</jobs>"; JobConfigs jobs = xmlLoader.fromXmlPartial(buildXmlPartial, JobConfigs.class); JobConfig job = jobs.first(); Tasks fetch = job.tasks(); assertThat(fetch.size(), is(1)); FetchTask task = (FetchTask) fetch.first(); assertThat(task.getStage(), is(new CaseInsensitiveString("dev"))); assertThat(task.getJob().toString(), is("unit")); assertThat(task.getSrc(), is("dist")); assertThat(task.getDest(), is("lib")); }