com.atlassian.bamboo.plugins.grails
Class GrailsBuilder

java.lang.Object
  extended by com.atlassian.bamboo.command.Command
      extended by com.atlassian.bamboo.builder.AbstractBuilder
          extended by com.atlassian.bamboo.plugins.grails.GrailsBuilder
All Implemented Interfaces:
Builder, EnvironmentVariablesAwareBuilder, MutableEnvironmentVariablesAwareBuilder, InitablePluginModule, BambooPluginModule, BuildConfigurationAwarePlugin, BuilderV2, ConfigurablePlugin, java.io.Serializable

public class GrailsBuilder
extends AbstractBuilder

See Also:
Serialized Form

Field Summary
 
Fields inherited from class com.atlassian.bamboo.builder.AbstractBuilder
BUILD_FAILED_MARKER, BUILD_SUCCESSFUL_MARKER, buildDirectoryManager, DEFAULT_TEST_REPORTS_XML, errorUpdateHandler, FIND_FAILURE_MESSAGE_IN_LAST, FIND_SUCCESS_MESSAGE_IN_LAST, PARAM_BUILD_LABEL, PARAM_BUILDJDK, PARAM_ENV_VAR, PARAM_HASTESTS, PARAM_HOME, PARAM_PROJECT_FILE, PARAM_TEST_RESULTS_DIRECTORY, PARAM_WORKING_SUB_DIR, SEARCH_BUILD_SUCCESS_FAIL_MESSAGE_EVERYWHERE, templateRenderer
 
Fields inherited from class com.atlassian.bamboo.command.Command
buildLoggerManager, CBD_BUILD_COMMANDLINE, substitutionBean
 
Fields inherited from interface com.atlassian.bamboo.builder.Builder
CAPABILITY_BUILDER_PREFIX, CAPABILITY_BUILDER_TYPE
 
Constructor Summary
GrailsBuilder()
           
 
Method Summary
 void addAdditionalCommand(java.lang.String command)
          Prepends a command to run before user defined commands
 java.util.Map<java.lang.String,LabelPathMap> addDefaultLabelPathMaps(java.util.Map<java.lang.String,LabelPathMap> labelPathMaps)
           
 void addDefaultValues(BuildConfiguration configuration)
          Extension point for adding default values to the form for BuildConfigurationAwarePlugin.getEditHtml(com.atlassian.bamboo.ww2.actions.build.admin.create.BuildConfiguration, com.atlassian.bamboo.plan.Plan)
 void executeBuild(BuildContext buildContext, ReadOnlyCapabilitySet capabilitySet)
          Runs the build, and updates the build results in the build context.
 java.util.Collection<java.lang.String> getAdditionalCommands()
           
 java.lang.String[] getCommandArguments(ReadOnlyCapabilitySet readOnlyCapabilitySet)
          What are the arguments for the command line to execute Variable substitution is not required for the arguments, substitution will be performed later.
 java.lang.String getCommandExecutable(ReadOnlyCapabilitySet capabilitySet)
          What is the executable for the command line to execute.
protected  java.lang.String[] getCustomEnvironmentVars(ReadOnlyCapabilitySet capabilitySet)
           
protected  java.lang.String getDefaultTestReportsDirectory()
           
protected  java.lang.String getExecutableFileName()
           
 java.util.Map<java.lang.String,java.lang.String> getFullParams()
          Gets the full params that's used to persist.
 java.lang.String getGoal()
           
 java.lang.String getName()
          Returns a human readable version of the current Builder type
protected  java.util.Map getTemplateContext()
           
 java.lang.String getTestDirectory()
           
 boolean isPathValid(java.lang.String homeDirectory)
          Returns true if the passed path is valid for this builder.
 CurrentBuildResult runBuild(BuildContext buildContext, ReadOnlyCapabilitySet capabilitySet)
           
 void setGoal(java.lang.String goal)
           
 void setParams(FilteredMap filteredBuilderParams)
          Updates the current builder object with
 void setTestDirectory(java.lang.String testDirectory)
           
 void setTextProvider(com.opensymphony.xwork.TextProvider textProvider)
           
 ErrorCollection validate(BuildConfiguration buildConfiguration)
          Validates the properties in the BuildConfiguration object.
protected  ErrorCollection validate(FilteredMap<java.lang.String> filteredParams)
           
 
Methods inherited from class com.atlassian.bamboo.builder.AbstractBuilder
collateTestResults, customiseLabelTypeMap, customizeBuildRequirements, getBuildDir, getBuildDirectoryManager, getBuildJdk, getCompleteKey, getEditHtml, getEnvironmentVariables, getFilteredParams, getKey, getKeyPrefix, getLabel, getPath, getPathHelp, getProjectFile, getTestChecked, getTestResultsDirectory, getViewHtml, getWorkingDirectory, getWorkingSubDirectory, hasPassed, hasTests, init, isJdkValid, isLabelPathMapConfigurable, outputEndsWith, populateBuildErrors, prepareConfigObject, removeAllSystemJdkRequirements, removeBuildRequirements, setAdministrationConfiguration, setBuildDir, setBuildDirectoryManager, setBuildJdk, setBuildLogFileAccessorFactory, setEnvironmentVariables, setErrorUpdateHandler, setHasTests, setJdkManager, setKey, setLabel, setProjectFile, setTemplateRenderer, setTestChecked, setTestResultsDirectory, setWorkingSubDirectory, toString, validate
 
Methods inherited from class com.atlassian.bamboo.command.Command
decorateCommandLine, executeCommand, getBuildLoggerManager, getCommandLine, getEnvironmentSetting, getSubstitutedCommandLine, getVariableSubstitutionBean, isWindowsPlatform, setBuildLoggerManager, setPluginAccessor, setVariableSubstitutionBean
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

GrailsBuilder

public GrailsBuilder()
Method Detail

executeBuild

public void executeBuild(@NotNull
                         BuildContext buildContext,
                         ReadOnlyCapabilitySet capabilitySet)
                  throws java.lang.InterruptedException,
                         RepositoryException
Description copied from interface: BuilderV2
Runs the build, and updates the build results in the build context. This method is also responsible for collating the test results in a build

Specified by:
executeBuild in interface BuilderV2
Overrides:
executeBuild in class AbstractBuilder
Throws:
java.lang.InterruptedException
RepositoryException

runBuild

public CurrentBuildResult runBuild(@NotNull
                                   BuildContext buildContext,
                                   @NotNull
                                   ReadOnlyCapabilitySet capabilitySet)
                            throws java.lang.InterruptedException
Overrides:
runBuild in class AbstractBuilder
Throws:
java.lang.InterruptedException

addAdditionalCommand

public void addAdditionalCommand(java.lang.String command)
Prepends a command to run before user defined commands

Parameters:
command -

getAdditionalCommands

public java.util.Collection<java.lang.String> getAdditionalCommands()

validate

protected ErrorCollection validate(FilteredMap<java.lang.String> filteredParams)
Specified by:
validate in class AbstractBuilder

getName

@NotNull
public java.lang.String getName()
Description copied from interface: Builder
Returns a human readable version of the current Builder type

Returns:

setParams

public void setParams(@NotNull
                      FilteredMap filteredBuilderParams)
Description copied from interface: Builder
Updates the current builder object with

Specified by:
setParams in interface Builder
Overrides:
setParams in class AbstractBuilder
Parameters:
filteredBuilderParams - - Filtered Map with the prefix builder key stripped out

setGoal

public void setGoal(java.lang.String goal)

getGoal

public java.lang.String getGoal()

setTestDirectory

public void setTestDirectory(java.lang.String testDirectory)

getTestDirectory

public java.lang.String getTestDirectory()

getTemplateContext

protected java.util.Map getTemplateContext()
Overrides:
getTemplateContext in class AbstractBuilder

addDefaultLabelPathMaps

public java.util.Map<java.lang.String,LabelPathMap> addDefaultLabelPathMaps(java.util.Map<java.lang.String,LabelPathMap> labelPathMaps)
Returns:

isPathValid

public boolean isPathValid(java.lang.String homeDirectory)
Description copied from interface: Builder
Returns true if the passed path is valid for this builder. The definition of a path depends on the builder itself. It could be the path to the executable (e.g script builder) or just the home directory (e.g. Ant builder)

Returns:
true if valid

addDefaultValues

public void addDefaultValues(@NotNull
                             BuildConfiguration configuration)
Description copied from interface: BuildConfigurationAwarePlugin
Extension point for adding default values to the form for BuildConfigurationAwarePlugin.getEditHtml(com.atlassian.bamboo.ww2.actions.build.admin.create.BuildConfiguration, com.atlassian.bamboo.plan.Plan)

Parameters:
configuration - - @NotNull

validate

@NotNull
public ErrorCollection validate(@NotNull
                                        BuildConfiguration buildConfiguration)
Description copied from interface: BuildConfigurationAwarePlugin
Validates the properties in the BuildConfiguration object. The name of the properties match those passed in through the form fragments in BuildConfigurationAwarePlugin.getEditHtml(com.atlassian.bamboo.ww2.actions.build.admin.create.BuildConfiguration, com.atlassian.bamboo.plan.Plan) template.

Parameters:
buildConfiguration - - @NotNull
Returns:
ErrorCollection keyed by the field name. @NotNull

getFullParams

@NotNull
public java.util.Map<java.lang.String,java.lang.String> getFullParams()
Description copied from interface: Builder
Gets the full params that's used to persist.

Specified by:
getFullParams in interface Builder
Overrides:
getFullParams in class AbstractBuilder
Returns:
Map key by the full param key (e.g. builder.ant.label). Never null

getCommandExecutable

@NotNull
public java.lang.String getCommandExecutable(ReadOnlyCapabilitySet capabilitySet)
Description copied from class: Command
What is the executable for the command line to execute. Variable substitution is not required for exectutable, substitution will be performed later.

Overrides:
getCommandExecutable in class Command
Returns:
the executable as a string

getCommandArguments

@NotNull
public java.lang.String[] getCommandArguments(ReadOnlyCapabilitySet readOnlyCapabilitySet)
Description copied from class: Command
What are the arguments for the command line to execute Variable substitution is not required for the arguments, substitution will be performed later.

Overrides:
getCommandArguments in class Command
Parameters:
readOnlyCapabilitySet - - for the current context
Returns:
the executable as a string[]. Spaces/division of strings in the array should not matter.

getDefaultTestReportsDirectory

protected java.lang.String getDefaultTestReportsDirectory()

getCustomEnvironmentVars

protected java.lang.String[] getCustomEnvironmentVars(ReadOnlyCapabilitySet capabilitySet)
Overrides:
getCustomEnvironmentVars in class Command

getExecutableFileName

protected java.lang.String getExecutableFileName()

setTextProvider

public void setTextProvider(com.opensymphony.xwork.TextProvider textProvider)


Copyright © 2010 Atlassian. All Rights Reserved.