UNPKG

@atomist/sdm-pack-aspect

Version:

an Atomist SDM Extension Pack for visualizing drift across an organization

42 lines 1.36 kB
import { Project } from "@atomist/automation-client"; 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<Project>; } /** * 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, 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