diff --git a/ansible/roles/prometheus/templates/prometheus.yml.j2 b/ansible/roles/prometheus/templates/prometheus.yml.j2
index f74eadb2bc..2acf076465 100644
--- a/ansible/roles/prometheus/templates/prometheus.yml.j2
+++ b/ansible/roles/prometheus/templates/prometheus.yml.j2
@@ -5,7 +5,7 @@ global:
   external_labels:
     monitor: 'kolla'
 
-{% if prometheus_alert_rules is defined and prometheus_alert_rules.files | length  > 0 %}
+{% if prometheus_alert_rules.files is defined and prometheus_alert_rules.files | length  > 0 %}
 rule_files:
 {% for rule in prometheus_alert_rules.files %}
   - "/etc/prometheus/{{ rule.path | basename }}"
diff --git a/releasenotes/notes/prometheus-config-when-alertmanager-disabled-0090c1570ff4e632.yaml b/releasenotes/notes/prometheus-config-when-alertmanager-disabled-0090c1570ff4e632.yaml
new file mode 100644
index 0000000000..149055552b
--- /dev/null
+++ b/releasenotes/notes/prometheus-config-when-alertmanager-disabled-0090c1570ff4e632.yaml
@@ -0,0 +1,8 @@
+---
+fixes:
+  - |
+    Fixes templating of Prometheus configuration when Alertmanager is disabled.
+    In a deployment where Prometheus is enabled and Alertmanager is disabled the
+    configuration for the Prometheus will fail when templating as the variable
+    `prometheus_alert_rules` does not contain the key `files`. For details
+    please see <https://bugs.launchpad.net/kolla-ansible/+bug/1854540>`__.