Interface ExecutableBuildAgent
- All Known Implementing Classes:
DefaultBuildAgent,RemoteBuildAgent
public interface ExecutableBuildAgent
The
ExecutableBuildAgent that is able to be run builds. Basically it's an agent that's "local" to the
running directory-
Method Summary
Modifier and TypeMethodDescriptionvoidbuild(@NotNull ReadOnlyCapabilitySet agentCapabilities, @NotNull DockerContainerController dockerContainerController) Executes the passedCommonContextbooleancancelBuild(@NotNull String buildResultKey) Cancels the passed buildResultKey if it matches<V> VexecuteWithCurrentContext(Callable<V> callable) Execute with guarantee that context will not be switched during execution.@Nullable CommonContextGets theBuildContextrelated to the build that is building on the agent.@NotNull StringAgent descriptionlonggetId()Agent idgetName()Agent nameintTells the agent that an unhandled error has occurred.booleanisActive()voidThis method is called when the build process is completed and the result processing has finished.voidonContextReceived(@NotNull CommonContext commonContext) This method is called when the agent has just retrieved a context from queuevoidResetes the error countvoidsetContextToBuild(@NotNull CommonContext context) voidstart()Starts the build agentvoidstop()Stops the build agent immediately.voidAttempt to stop the agent and wait for the current build (if any) to stop buildingvoidstopNicely(int statusCode) Attempt to stop the agent and wait for the current build (if any) to stop building.voidwaitForStop(int secondsToWait) Waits a certain number of seconds for a build to stop.
-
Method Details
-
getId
long getId()Agent id- Returns:
-
getName
String getName()Agent name- Returns:
-
getDescription
Agent description -
start
void start()Starts the build agent -
stop
void stop()Stops the build agent immediately. Cancelling all currently running builds- Throws:
InterruptedException
-
stopNicely
void stopNicely()Attempt to stop the agent and wait for the current build (if any) to stop building -
stopNicely
void stopNicely(int statusCode) Attempt to stop the agent and wait for the current build (if any) to stop building. If it's a non-local agent, then it will terminate with the given status code. -
build
void build(@NotNull @NotNull ReadOnlyCapabilitySet agentCapabilities, @NotNull @NotNull DockerContainerController dockerContainerController) throws Exception Executes the passedCommonContext- Parameters:
agentCapabilities-- Throws:
Exception
-
cancelBuild
Cancels the passed buildResultKey if it matches- Parameters:
buildResultKey-
-
getAgentStatus
AgentStatus getAgentStatus() -
isActive
boolean isActive() -
getBuilding
Gets theBuildContextrelated to the build that is building on the agent. Null if not building or cancelling anything.- Returns:
-
setContextToBuild
-
waitForStop
Waits a certain number of seconds for a build to stop.- Parameters:
secondsToWait- -- Throws:
TimeoutException
-
incrementError
int incrementError()Tells the agent that an unhandled error has occurred. The agent may then choose to stop the error if a thredhold has been reached. Provides an overload of exceptions being thrown.- Returns:
-
resetErrors
void resetErrors()Resetes the error count -
onBuildProcessingFinished
void onBuildProcessingFinished()This method is called when the build process is completed and the result processing has finished. -
onContextReceived
This method is called when the agent has just retrieved a context from queue -
executeWithCurrentContext
Execute with guarantee that context will not be switched during execution. (i.e. no new build will be picked up by the agent)- Throws:
Exception- Since:
- 6.9
-