@atomist/automation-client
Version:
Atomist API for software low-level client
34 lines • 1.07 kB
TypeScript
import { CloneDirectoryInfo, CloneOptions, DirectoryManager } from "./DirectoryManager";
export interface StableDirectoryManagerOpts {
/**
* Attempt to reuse directories?
*/
reuseDirectories: boolean;
/**
* Clean up directories on exit?
*/
cleanOnExit?: boolean;
/**
* If provided, number of directories
*/
baseDir: string;
}
/**
* Build a stable working directory structure.
* Options determine whether it's cleared on exit.
*/
export declare class StableDirectoryManager implements DirectoryManager {
opts: StableDirectoryManagerOpts;
private directoriesUsed;
constructor(pOpts: StableDirectoryManagerOpts);
invalidate(existing: CloneDirectoryInfo): Promise<void>;
directoryFor(owner: string, repo: string, branch: string, opts: CloneOptions): Promise<CloneDirectoryInfo>;
/**
* Return undefined if not found
*/
private existingDirectoryFor;
private freshDirectoryFor;
private pathFor;
private createFreshDir;
}
//# sourceMappingURL=StableDirectoryManager.d.ts.map