UNPKG

1.52 kBTypeScriptView Raw
1import { RepoFilter } from "@atomist/automation-client/lib/operations/common/repoFilter";
2import { Maker } from "@atomist/automation-client/lib/util/constructionUtils";
3import { RepoTargets } from "../machine/RepoTargets";
4import { ProjectPredicate } from "../mapping/PushTest";
5import { CommandRegistration } from "./CommandRegistration";
6/**
7 * Superclass for all registrations that can apply to one or more projects.
8 */
9export interface ProjectsOperationRegistration<PARAMS> extends CommandRegistration<PARAMS> {
10 /**
11 * Allow customization of the repositories that an inspection targets.
12 */
13 targets?: Maker<RepoTargets>;
14 /**
15 * Additionally, programmatically limit repositories to inspect, by id
16 */
17 repoFilter?: RepoFilter;
18 /**
19 * Programmatically limit repositories to inspect, by a project predicate.
20 * This can look inside project.
21 */
22 projectTest?: ProjectPredicate;
23 /**
24 * Configure the concurrency behavior of running project operations
25 * on many repos
26 */
27 concurrency?: {
28 /** Maximum number of concurrent project operations would be executing */
29 maxConcurrent?: number;
30 /** Indicate if a Job scheduling is required; even for only one project operation */
31 requiresJob?: boolean;
32 };
33 /**
34 * Whether or not this project operation should send messages during processing.
35 *
36 * Defaults to true.
37 */
38 chatty?: boolean;
39}
40//# sourceMappingURL=ProjectsOperationRegistration.d.ts.map
\No newline at end of file