UNPKG

@atomist/sdm-pack-aspect

Version:

an Atomist SDM Extension Pack for visualizing drift across an organization

43 lines 1.48 kB
import { GitProject } from "@atomist/automation-client"; import { AnalysisTracking } from "../../../tracking/analysisTracker"; import { ScmSearchCriteria } from "../ScmSearchCriteria"; import { Analyzer, PersistenceResult, Spider, SpiderFailure, SpiderOptions, SpiderResult } from "../Spider"; /** * Implementating this allows control over cloning */ export interface Cloner { clone(sourceData: GitHubSearchResult): Promise<GitProject>; } /** * Spider GitHub. Ensure that GITHUB_TOKEN environment variable is set. */ export declare class GitHubSpider implements Spider { private readonly cloner; private readonly queryFunction; spider(criteria: ScmSearchCriteria, analyzer: Analyzer, analysisTracking: AnalysisTracking, opts: SpiderOptions): Promise<SpiderResult>; constructor(cloner: Cloner, queryFunction?: (token: string, criteria: ScmSearchCriteria) => AsyncIterable<GitHubSearchResult>); } export interface AnalyzeResult { failedToCloneOrAnalyze: SpiderFailure[]; repoCount: number; projectCount: number; millisTaken: number; } export interface AnalyzeAndPersistResult extends AnalyzeResult { failedToPersist: SpiderFailure[]; persisted: PersistenceResult[]; } /** * Result row in a GitHub search */ export interface GitHubSearchResult { owner: { login: string; }; name: string; url: string; html_url: string; timestamp: Date; query: string; } //# sourceMappingURL=GitHubSpider.d.ts.map