diff --git a/roles/float-util-credentials/tasks/main.yml b/roles/float-util-credentials/tasks/main.yml
index 9a61b5936671af7b859437126c5b48ae039bddcf..20594ccbf9b53620902f65e0591a3eb6d37e3e4c 100644
--- a/roles/float-util-credentials/tasks/main.yml
+++ b/roles/float-util-credentials/tasks/main.yml
@@ -96,7 +96,7 @@
     # This should use the systemd module but it doesn't take lists of services.
     - name: "Restart associated services"
       shell: "systemctl restart {{ services[item.0.service].systemd_services | join(' ') }}"
-      when: "item.1.changed and item.0.service != 'LOCAL'"
+      when: "item.1.changed and item.0.service != 'LOCAL' and services[item.0.service].systemd_services"
       loop: "{{ credentials | zip(x509_sign.results) | list }}"
 
   rescue: