UNPKG

@atomist/sdm

Version:

Atomist Software Delivery Machine SDK

47 lines 1.88 kB
import { Configuration } from "@atomist/automation-client/lib/configuration"; import { HandlerContext } from "@atomist/automation-client/lib/HandlerContext"; import { ProjectOperationCredentials } from "@atomist/automation-client/lib/operations/common/ProjectOperationCredentials"; import { RemoteRepoRef } from "@atomist/automation-client/lib/operations/common/RepoId"; import { AddressChannels } from "./addressChannels"; import { PreferenceStore } from "./preferenceStore"; import { SkillContext } from "./skillContext"; /** * Context for an SDM action, whether a listener invocation or internal action */ export interface SdmContext { /** * Context of the Atomist EventHandler invocation. Use to run GraphQL * queries, use the messageClient directly and find * the team and correlation id */ context: HandlerContext; /** * Provides a way to address the channel(s) related to this action: * usually, an event or command invocation. * In an event handler, these are usually the channel(s) linked to a repo. * In a command handler, the behavior will be the same as that of `MessageClient.respond`. * In some cases, such as repo creation or a push to a repo where there is no linked channel, * addressChannels will go to dev/null without error. */ addressChannels: AddressChannels; /** * Credentials for use with source control hosts such as GitHub */ credentials: ProjectOperationCredentials; /** * Store and retrieve preferences for this SDM or team */ preferences: PreferenceStore; configuration: Configuration; skill: SkillContext; } /** * Context for an SDM action on a particular repo */ export interface RepoContext extends SdmContext { /** * The repo this relates to */ id: RemoteRepoRef; } //# sourceMappingURL=SdmContext.d.ts.map