Skip to content

Commit

Permalink
Merge pull request #2 from castorpilot/master
Browse files Browse the repository at this point in the history
Add an option to launch script only if build succeeds
  • Loading branch information
gboissinot committed Oct 20, 2011
2 parents af58972 + d6fa9cc commit ce4d8d7
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -38,15 +38,19 @@ public BuildStepMonitor getRequiredMonitorService() {
private List<GroovyScriptContent> groovyScriptContentList = new ArrayList<GroovyScriptContent>();
private List<BuildStep> buildSteps;

private boolean scriptOnlyIfSuccess;

@DataBoundConstructor
public PostBuildScript(List<GenericScript> genericScriptFile,
List<GroovyScriptFile> groovyScriptFile,
List<GroovyScriptContent> groovyScriptContent,
boolean scriptOnlyIfSuccess,
List<BuildStep> buildStep) {
this.genericScriptFileList = genericScriptFile;
this.groovyScriptFileList = groovyScriptFile;
this.groovyScriptContentList = groovyScriptContent;
this.buildSteps = buildStep;
this.scriptOnlyIfSuccess = scriptOnlyIfSuccess;
}

public MatrixAggregator createAggregator(MatrixBuild build, Launcher launcher, BuildListener listener) {
Expand Down Expand Up @@ -82,7 +86,12 @@ protected void configure() {
).getInstance(ScriptExecutor.class);

try {
return processScripts(executor, build, launcher, listener);
if(scriptOnlyIfSuccess && build.getResult().isWorseThan(Result.SUCCESS)){
listener.getLogger().println("[PostBuildScript] Build is not success : do not execute script");
return false;
} else {
return processScripts(executor, build, launcher, listener);
}
} catch (PostBuildScriptException pse) {
listener.getLogger().println("[PostBuildScript] - [Error] - Problems occurs: " + pse.getMessage());
build.setResult(Result.FAILURE);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,5 +90,9 @@
</f:nested>

</f:entry>
<f:entry field="scriptOnlyIfSuccess"
title="${%Execute script only if build succeeds}">
<f:checkbox />
</f:entry>

</j:jelly>
</j:jelly>

0 comments on commit ce4d8d7

Please sign in to comment.