@atomist/sdm-pack-aspect
Version:
an Atomist SDM Extension Pack for visualizing drift across an organization
42 lines • 1.61 kB
TypeScript
import { GitProject, Project, RepoRef } from "@atomist/automation-client";
import { AnalysisTracking } from "../../tracking/analysisTracker";
import { ProjectAnalysisResultStore } from "../persist/ProjectAnalysisResultStore";
import { Analyzer, ProjectAnalysisResultFilter, SpiderResult } from "./Spider";
/**
* A reasonable number of repositories to analyze at a time.
* The bucketing mechanism will wait for this many to complete, then
* start another batch. If this is too big, the web interface can't respond.
*/
export declare const DefaultPoolSize = 6;
/**
* This class knows how to execute an analysis run,
* given some functions that are specific to the source
* of the repositories.
*/
export declare class AnalysisRun<FoundRepo> {
private readonly world;
private readonly params;
constructor(world: {
howToFindRepos: () => AsyncIterable<FoundRepo>;
determineRepoRef: (f: FoundRepo) => Promise<RepoRef>;
describeFoundRepo: (f: FoundRepo) => RepoDescription;
howToClone: (rr: RepoRef, fr: FoundRepo) => Promise<GitProject>;
analyzer: Analyzer;
persister: ProjectAnalysisResultStore;
analysisTracking: AnalysisTracking;
keepExistingPersisted: ProjectAnalysisResultFilter;
projectFilter?: (p: Project) => Promise<boolean>;
}, params: {
workspaceId: string;
description: string;
maxRepos?: number;
poolSize?: number;
});
run(): Promise<SpiderResult>;
}
interface RepoDescription {
description: string;
url?: string;
}
export {};
//# sourceMappingURL=common.d.ts.map