> For the complete documentation index, see [llms.txt](https://developer.harness.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.harness.io/continuous-delivery/troubleshooting-and-resources/armory/general/quiet-the-echo-service.md).

# Quiet the Echo Service

### Introduction <a href="#introduction" id="introduction"></a>

When planning and upgrade or maintenance in Spinnaker, Echo by default will keep on triggering notification which may cause unwanted errors or issues with stuck pipelines. Quieting Echo during the maintenance time will prevent unwanted echo triggers during that time. With triggers suppressed this effectively stops pipelines from being run if they are flagged to respect the quiet period. There are two options to quieting the Echo service. The first option is to disable communication to Orca. This will prevent ANY trigger from firing and cannot be scheduled. The second option is enable `quietPeriod` in Echo. This allows a quiet period to be scheduled and allows the operator to configure which triggers should be suppressed.

### Prerequisites <a href="#prerequisites" id="prerequisites"></a>

Suppressing all triggers by disabling communication to Orca In the Echo profile file `echo-local.yml` add the following configuration `orca.enabled: false` and redeploy Echo. This will suppress all triggers until this setting is changed back to `true` and the Echo service is redeployed.

### Instructions <a href="#instructions" id="instructions"></a>

Enable quietPeriod **NOTE:** Pipelines **MUST** be configured to respect the quiet period for this to work!!! The following sample config will suppress the list of triggers in `suppressedTriggerTypes` from `startIso` to `endIso` if `quietPeriod.enabled: true`. The triggers will automatically start working again after the `endIso` time. It can also be manually disabled by changing `quietPeriod.enabled` back to `false`. In Echo’s profile In the Echo profile file `echo-local.yml` in Halyard's hal config profiles directory e.g. (`~/.hal/default/profiles/`) or in Operator under the `spec.spinnakerConfig.profiles.echo,` add the following configuration and replace everything in between `<>` in the `startISO` and `endISO` parameters and change the list of `suppressedTriggerTypes` as needed.

quietPeriod: enabled: true startIso: endIso:

## see <https://github.com/spinnaker/echo/blob/64cb72de7648a82d392db459e98026d1a9c16959/echo-model/src/main/java/com/netflix/spinnaker/echo/model/Trigger.java#L77> for list of triggers

## The following will suppress all triggers including a Manual trigger

suppressedTriggerTypes: - cron - webhook - git - concourse - jenkins - docker - pubsub - dryrun - pipeline - plugin - helm - manual

In Deck’s settings-local.js In Deck’s `settings-local.js` file in Halyard's hal config profiles directory e.g. (`~/.hal/default/profiles/`) add the following: `window.spinnakerSettings.feature.quietPeriod = true;` In Operator under the `spec.spinnakerConfig.profiles.deck.settings-local.js:` spec: spinnakerConfig: profiles: deck: settings-local.js: window\.spinnakerSettings.feature.quietPeriod = true;

````
Update Pipeline configs to respect quietPeriod
For a pipeline to respect Echo’s ```quietPeriod``` setting it must have the following set in its pipeline definition at the same indent level as ```stages``` and ```triggers```:
```"respectQuietPeriod": true```
If this is not set it is assumed that the pipeline does NOT respect Echo’s quietPeriod setting.
**Example pipeline config snippet**

{
  "appConfig": {},
  "expectedArtifacts": [],
  "keepWaitingPipelines": false,
  "lastModifiedBy": "admin",
  "limitConcurrent": true,
  "respectQuietPeriod": true,
  "spelEvaluator": "v4",
  "stages": [],
  "triggers": [],
  "updateTs": "1625697650000"
}


**Update config via the Deck UI**
****

````
