@atomist/sdm
Version:
Atomist Software Delivery Machine SDK
31 lines • 1.83 kB
TypeScript
import { HandlerContext } from "@atomist/automation-client/lib/HandlerContext";
import { HandlerResult } from "@atomist/automation-client/lib/HandlerResult";
import { ExecuteGoalResult } from "../../api/goal/ExecuteGoalResult";
import { Goal } from "../../api/goal/Goal";
import { ExecuteGoal, GoalInvocation, GoalProjectListenerRegistration } from "../../api/goal/GoalInvocation";
import { SdmGoalEvent } from "../../api/goal/SdmGoalEvent";
import { GoalImplementation } from "../../api/goal/support/GoalImplementationMapper";
import { GoalExecutionListener } from "../../api/listener/GoalStatusListener";
import { SoftwareDeliveryMachineConfiguration } from "../../api/machine/SoftwareDeliveryMachineOptions";
import { ProjectLoader } from "../../spi/project/ProjectLoader";
/**
* Central function to execute a goal with progress logging
*/
export declare function executeGoal(rules: {
projectLoader: ProjectLoader;
goalExecutionListeners: GoalExecutionListener[];
}, implementation: GoalImplementation, gi: GoalInvocation): Promise<ExecuteGoalResult>;
export declare function executeHook(rules: {
projectLoader: ProjectLoader;
}, goalInvocation: GoalInvocation, sdmGoal: SdmGoalEvent, stage: "post" | "pre"): Promise<HandlerResult>;
export declare function markStatus(parameters: {
context: HandlerContext;
goalEvent: SdmGoalEvent;
goal: Goal;
result: ExecuteGoalResult;
error?: Error;
progressLogUrl: string;
}): Promise<void>;
export declare function prepareGoalExecutor(gi: GoalImplementation, sdmGoal: SdmGoalEvent, configuration: SoftwareDeliveryMachineConfiguration): ExecuteGoal;
export declare function prepareGoalInvocation(gi: GoalInvocation, listeners: GoalProjectListenerRegistration | GoalProjectListenerRegistration[]): GoalInvocation;
//# sourceMappingURL=executeGoal.d.ts.map