<p>I have installed a brand-new Argo CD (v2.1.7) and notifications (v1.2.0). I configured it to send me a Slack message and subscribed my application to the <code>on-deployed</code> trigger using the following annotation:</p>
<pre class="lang-yaml prettyprint-override"><code>annotations:
  notifications.argoproj.io/subscribe.on-deployed.slack: my_channel
</code></pre>
<p>When I deploy my application, the log output of the <code>argocd-notifications-controller</code> is:</p>
<pre><code>time=&quot;2021-12-10T12:18:23Z&quot; level=error msg=&quot;failed to execute oncePer condition: cannot fetch syncResult from &lt;nil&gt; (1:27)\n | app.status.operationState.syncResult.revision\n | ..........................^&quot;
time=&quot;2021-12-10T12:18:23Z&quot; level=info msg=&quot;Trigger on-deployed result: [{[0].y7b5sbwa2Q329JYH755peeq-fBs  [app-deployed] false}]&quot; resource=argocd/ah-ctp-argocd-test
time=&quot;2021-12-10T12:18:23Z&quot; level=info msg=&quot;Processing completed&quot; resource=argocd/ah-ctp-argocd-test
time=&quot;2021-12-10T12:19:21Z&quot; level=info msg=&quot;Start processing&quot; resource=argocd/ah-ctp-argocd-test
time=&quot;2021-12-10T12:19:21Z&quot; level=error msg=&quot;failed to execute when condition: cannot fetch phase from &lt;nil&gt; (1:27)\n | app.status.operationState.phase in ['Succeeded'] and app.status.health.status == 'Healthy'\n | ..........................^&quot;
</code></pre>
<p>As a test, I changed the <code>when</code> condition to <code>when: true</code> and added <code>{{ .app }}</code> to the message body, then re-deployed. I received the notification in Slack, however <code>{{ .app }}</code> does not contain <code>operationState</code>. It does contain, for instance <code>app.status.health.status</code> and its value is 'Healthy'.</p>
<p>I see no one has posted any similar error online, which leads me to think I must be doing something wrong. Does anyone have any advice?</p>

sffortytwo
<p>Okay, so this was a PEDKAC error. I received a notification the first time, but never again. It turns out that Argo CD keeps track for which commits it has sent notifications. The problem was that I was deleting and redeploying the app in Argo CD, but it was always the same commit. When I created a new commit and deployed from that, the notifications came through as expected.</p>
