Options
All
  • Public
  • Public/Protected
  • All
Menu

Class instantiated to create a Software Delivery MachineConfiguration. Combines commands and delivery event handling using goals.

Goals and goal "implementations" can be defined by users.

The most important element of a software delivery machine is setting zero or more push rules. This is normally done using an internal DSL

Type parameters

Hierarchy

Implemented by

Index

Properties

Readonly channelLinkListeners

channelLinkListeners: ReadonlyArray<ChannelLinkListener>

Readonly closedIssueListeners

closedIssueListeners: ReadonlyArray<ClosedIssueListener>

Readonly commandHandlers

commandHandlers: Array<Maker<HandleCommand>>

Readonly configuration

configuration: Configuration & O

Automation client and machine configuration this machine will run in

Readonly eventHandlers

eventHandlers: Array<Maker<HandleEvent<any>>>

Readonly extensionPacks

extensionPacks: ReadonlyArray<ExtensionPack>

Readonly firstPushListeners

firstPushListeners: ReadonlyArray<PushListener>

Readonly goalCompletionListeners

goalCompletionListeners: ReadonlyArray<GoalCompletionListener>

Readonly goalExecutionListeners

goalExecutionListeners: ReadonlyArray<GoalExecutionListener>

Readonly goalFulfillmentMapper

goalFulfillmentMapper: GoalImplementationMapper

Readonly goalsSetListeners

goalsSetListeners: ReadonlyArray<GoalsSetListener>

Readonly ingesters

ingesters: string[]

Readonly name

name: string

Readonly newIssueListeners

newIssueListeners: ReadonlyArray<NewIssueListener>

Readonly pullRequestListeners

pullRequestListeners: ReadonlyArray<PullRequestListener>

pushMapping

pushMapping: PushMapping<Goals>

Return the PushMapping that will be used on pushes. Useful in testing goal setting.

returns

Readonly repoCreationListeners

repoCreationListeners: ReadonlyArray<RepoCreationListener>

Readonly repoOnboardingListeners

repoOnboardingListeners: ReadonlyArray<ProjectListener>

Readonly startupListeners

startupListeners: ReadonlyArray<StartupListener>

Readonly tagListeners

tagListeners: ReadonlyArray<TagListener>

Readonly updatedIssueListeners

updatedIssueListeners: ReadonlyArray<UpdatedIssueListener>

Readonly userJoiningChannelListeners

userJoiningChannelListeners: ReadonlyArray<UserJoiningChannelListener>

Methods

addChannelLinkListener

addClosedIssueListener

addCodeInspectionCommand

addCodeTransformCommand

addCommand

addEvent

addExtensionPacks

  • Add capabilities from these extension packs. This is the primary SDM extension mechanism. Extension packs are typically brought in as Node modules, and can contribute goals as well configure SDM behavior.

    Parameters

    Returns this

addFirstPushListener

addGeneratorCommand

addGoalApprovalRequestVoter

addGoalCompletionListener

addGoalContributions

  • addGoalContributions(goalContributions: GoalSetter): this
  • (hint: prefer withPushRules)

    Add goal setting contributions that will be added into SDM goal setting. Decorates other goal setting behavior.

    For example, always do fingerprints: sdm.addGoalContributions(onAnyPush().setGoals(FingerprintGoal))

    Or, sometimes do a custom local deploy goal: sdm.addGoalContributions( whenPushSatisfies(IsSdm, IsInLocalMode).setGoals( new Goals("delivery", LocalSdmDelivery)));

    Parameters

    • goalContributions: GoalSetter

      contributions to goals

    Returns this

addGoalExecutionListener

addGoalsSetListener

addIngester

addNewIssueListener

addPullRequestListener

addRepoCreationListener

addRepoOnboardingListener

addStartupListener

addTagListener

addTriggeredListener

addUpdatedIssueListener

addUserJoiningChannelListener

setGoalApprovalRequestVoteDecisionManager

withPushRules

Generated using TypeDoc