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
Automation client and machine configuration this machine will run in
Return the PushMapping that will be used on pushes. Useful in testing goal setting.
Add a listener that will be invoked when a channel is linked to a repo
Add a code inspection to this machine. Unlike code transformations, code inspections cannot mutate projects.
Add a code transformation to this machine.
Add a generic command to this machine
Add an event to this machine.
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.
Register a listener that reacts to a new repo appearing with content. The invocation's addressChannels will DM the creator of the project if possible, as any channel mapping will not have been set up.
Add a generator to this machine to enable project creation
Add vote that gets to decide whether to deny or grant goal approval requests.
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)));
contributions to goals
Invoked when a goal state changes to in-process, success, or failure.
Add ingester to this machine.
Add a listener that reacts to new issues
You probably mean to use addFirstPushListener! This responds to a repo creation, but there may be no code in it. The invocation's addressChannels method with have no effect: use the context if you want to send messages
Register a listener that reacts to a repo being brought to Atomist's notice
Add a listener that will be notified of machine startup
Add a listener that gets invoked on time-based triggers
Set the decision manager used to make final decision on GoalApprovalRequestVoteResult instances.
Generated using TypeDoc