Don't run post release tasks if main ones failed
This commit is contained in:
@@ -38,6 +38,7 @@ import releaser.internal.sagan.SaganUpdater;
|
||||
import releaser.internal.spring.Arguments;
|
||||
import releaser.internal.spring.SpringReleaser;
|
||||
import releaser.internal.tasks.ReleaseReleaserTask;
|
||||
import releaser.internal.tasks.TrainPostReleaseReleaserTask;
|
||||
import releaser.internal.tasks.composite.MetaReleaseCompositeTask;
|
||||
import releaser.internal.tasks.composite.ReleaseCompositeTask;
|
||||
import releaser.internal.tasks.release.BuildProjectReleaseTask;
|
||||
@@ -368,6 +369,7 @@ public class SpringMetaReleaseAcceptanceTests
|
||||
.getBean(TestExecutionResultHandler.class);
|
||||
FirstTask firstTask = context.getBean(FirstTask.class);
|
||||
SecondTask secondTask = context.getBean(SecondTask.class);
|
||||
PostReleaseTask postReleaseTask = context.getBean(PostReleaseTask.class);
|
||||
|
||||
ExecutionResult result = releaser
|
||||
.release(new OptionsBuilder().metaRelease(true).options());
|
||||
@@ -386,6 +388,8 @@ public class SpringMetaReleaseAcceptanceTests
|
||||
.equals("spring-cloud-release")));
|
||||
BDDMockito.then(secondTask).should(BDDMockito.never())
|
||||
.runTask(BDDMockito.any(Arguments.class));
|
||||
BDDMockito.then(postReleaseTask).should(BDDMockito.never())
|
||||
.runTask(BDDMockito.any(Arguments.class));
|
||||
});
|
||||
}
|
||||
|
||||
@@ -521,6 +525,11 @@ public class SpringMetaReleaseAcceptanceTests
|
||||
return BDDMockito.spy(new SecondTask());
|
||||
}
|
||||
|
||||
@Bean
|
||||
PostReleaseTask firstPostReleaseTask() {
|
||||
return BDDMockito.spy(new PostReleaseTask());
|
||||
}
|
||||
|
||||
@Bean
|
||||
MetaReleaseCompositeTask metaReleaseCompositeTask(ApplicationContext context) {
|
||||
return new MetaReleaseCompositeTask(context);
|
||||
@@ -604,3 +613,38 @@ class SecondTask implements ReleaseReleaserTask {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class PostReleaseTask implements TrainPostReleaseReleaserTask {
|
||||
|
||||
@Override
|
||||
public String name() {
|
||||
return "third";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String shortName() {
|
||||
return "3";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String header() {
|
||||
return "THIRD";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String description() {
|
||||
return name();
|
||||
}
|
||||
|
||||
@Override
|
||||
public ExecutionResult runTask(Arguments args)
|
||||
throws BuildUnstableException, RuntimeException {
|
||||
return ExecutionResult.success();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getOrder() {
|
||||
return 3;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -66,6 +66,9 @@ class DefaultSpringReleaser implements SpringReleaser {
|
||||
ProjectsToRun projectsToRun = releaseProjects(optionsAndProperties);
|
||||
ExecutionResult releaseTasksExecutionResult = runReleaseTasks(
|
||||
optionsAndProperties, projectsToRun, releaseTasksToRun);
|
||||
if (releaseTasksExecutionResult.isFailure()) {
|
||||
return releaseTasksExecutionResult;
|
||||
}
|
||||
TasksToRun postReleaseTrainTasksToRun = postReleaseTrainTasksFromOptions(
|
||||
optionsAndProperties);
|
||||
ExecutionResult postReleaseTrainTasksExecutionResult = runPostReleaseTasks(
|
||||
|
||||
Reference in New Issue
Block a user