Echo serves as a router for events that happen within Spinnaker.
It provides integrations for outgoing notifications in the echo-notifications package via:
- Slack
- Bearychat
- Google Chat
- sms ( via Twilio )
Echo is also able to send events within Spinnaker to a predefined url, which is configurable under the echo-rest module.
You can extend the way in which Echo events are sent by implementing the EchoEventListener
interface.
Currently, echo receives build events from igor and orchestration events from orca.
Echo also integrates with igor, front50 and orca to trigger pipeline executions.
It does so via two modules:
- pipeline-triggers : Responsible firing off events from Jenkins Triggers
- scheduler : Triggers pipelines off cron expressions. Support for cron expressions is provided by Netflix's Fenzo library.
This can be done locally via ./gradlew bootRun
, which will start with an embedded cassandra instance. Or by following the instructions using the Spinnaker installation scripts.
To start the JVM in debug mode, set the Java system property DEBUG=true
:
./gradlew -DDEBUG=true
The JVM will then listen for a debugger to be attached on port 8189. The JVM will not wait for
the debugger to be attached before starting Echo; the relevant JVM arguments can be seen and
modified as needed in build.gradle
.