import { GitProject, HandlerContext } from "@atomist/automation-client"; import { ExecuteGoal, SdmGoalEvent } from "@atomist/sdm"; export interface DockerOptions { /** * True if the docker image should be pushed to the registry */ push?: boolean; /** * Optional registry to push the docker image too. * Needs to set when push === true */ registry?: string; /** * Optional user to use when pushing the docker image. * Needs to set when push === true */ user?: string; /** * Optional password to use when pushing the docker image. * Needs to set when push === true */ password?: string; dockerfileFinder?: (p: GitProject) => Promise; } export declare type DockerImageNameCreator = (p: GitProject, sdmGoal: SdmGoalEvent, options: DockerOptions, ctx: HandlerContext) => Promise<{ registry: string; name: string; tags: string[]; }>; /** * Execute a Docker build for the project * @param {DockerImageNameCreator} imageNameCreator * @param {DockerOptions} options * @returns {ExecuteGoal} */ export declare function executeDockerBuild(imageNameCreator: DockerImageNameCreator, options: DockerOptions): ExecuteGoal; export declare const DefaultDockerImageNameCreator: DockerImageNameCreator;