diff --git a/roles/ensure-zookeeper/tasks/Debian-12.yaml b/roles/ensure-zookeeper/tasks/Debian-12.yaml
new file mode 100644
index 000000000..390cb161e
--- /dev/null
+++ b/roles/ensure-zookeeper/tasks/Debian-12.yaml
@@ -0,0 +1,35 @@
+# Due to https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1030129
+# install certs before the JDK.
+# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1023748 has more details
+# including the request that the fix be backported to stable. TODO: once the
+# backport has been made we can stop installing from testing
+- name: Block to collect java cert package install steps
+  block:
+    - name: Enable testing repo
+      apt_repository:
+        repo: deb http://deb.debian.org/debian testing main
+        state: present
+        update_cache: yes
+        filename: debian-testing
+      become: true
+
+    - name: Install Java certs
+      apt:
+        name: ca-certificates-java
+        default_release: testing
+        state: present
+      become: true
+
+    - name: Disable testing repo
+      apt_repository:
+        repo: deb http://deb.debian.org/debian testing main
+        state: absent
+        update_cache: yes
+        filename: debian-testing
+      become: true
+
+- name: Install JDK
+  apt:
+    name: default-jdk-headless
+    state: present
+  become: true
diff --git a/roles/ensure-zookeeper/tasks/main.yaml b/roles/ensure-zookeeper/tasks/main.yaml
index b096bad09..04a2fc43e 100644
--- a/roles/ensure-zookeeper/tasks/main.yaml
+++ b/roles/ensure-zookeeper/tasks/main.yaml
@@ -1,6 +1,8 @@
 - name: Install distro-specific packages
   include_tasks: "{{ zj_distro_os }}"
   with_first_found:
+    - "{{ ansible_distribution }}-{{ ansible_distribution_version }}.yaml"
+    - "{{ ansible_distribution }}-{{ ansible_distribution_major_version }}.yaml"
     - "{{ ansible_distribution }}.yaml"
     - "{{ ansible_os_family }}.yaml"
     - "default.yaml"
diff --git a/zuul-tests.d/general-roles-jobs.yaml b/zuul-tests.d/general-roles-jobs.yaml
index 4ac0bab24..b8857a9f7 100644
--- a/zuul-tests.d/general-roles-jobs.yaml
+++ b/zuul-tests.d/general-roles-jobs.yaml
@@ -827,10 +827,67 @@
       - roles/ensure-zookeeper/.*
       - test-playbooks/ensure-zookeeper.yaml
     run: test-playbooks/ensure-zookeeper.yaml
+    tags: debuntu-platforms
+
+- job:
+    name: zuul-jobs-test-ensure-zookeeper-debian-bookworm
+    description: Test the ensure-zookeeper roles on debian-bookworm
+    parent: zuul-jobs-test-ensure-zookeeper
+    tags: auto-generated
     nodeset:
       nodes:
-        - name: fedora-36
-          label: fedora-36
+        - name: debian-bookworm
+          label: debian-bookworm
+
+- job:
+    name: zuul-jobs-test-ensure-zookeeper-debian-bullseye
+    description: Test the ensure-zookeeper roles on debian-bullseye
+    parent: zuul-jobs-test-ensure-zookeeper
+    tags: auto-generated
+    nodeset:
+      nodes:
+        - name: debian-bullseye
+          label: debian-bullseye
+
+- job:
+    name: zuul-jobs-test-ensure-zookeeper-debian-buster
+    description: Test the ensure-zookeeper roles on debian-buster
+    parent: zuul-jobs-test-ensure-zookeeper
+    tags: auto-generated
+    nodeset:
+      nodes:
+        - name: debian-buster
+          label: debian-buster
+
+- job:
+    name: zuul-jobs-test-ensure-zookeeper-ubuntu-bionic
+    description: Test the ensure-zookeeper roles on ubuntu-bionic
+    parent: zuul-jobs-test-ensure-zookeeper
+    tags: auto-generated
+    nodeset:
+      nodes:
+        - name: ubuntu-bionic
+          label: ubuntu-bionic
+
+- job:
+    name: zuul-jobs-test-ensure-zookeeper-ubuntu-focal
+    description: Test the ensure-zookeeper roles on ubuntu-focal
+    parent: zuul-jobs-test-ensure-zookeeper
+    tags: auto-generated
+    nodeset:
+      nodes:
+        - name: ubuntu-focal
+          label: ubuntu-focal
+
+- job:
+    name: zuul-jobs-test-ensure-zookeeper-ubuntu-jammy
+    description: Test the ensure-zookeeper roles on ubuntu-jammy
+    parent: zuul-jobs-test-ensure-zookeeper
+    tags: auto-generated
+    nodeset:
+      nodes:
+        - name: ubuntu-jammy
+          label: ubuntu-jammy
 
 - job:
     name: zuul-jobs-test-update-json-file
@@ -934,7 +991,12 @@
         - zuul-jobs-test-upload-artifactory
         - zuul-jobs-test-upload-git-mirror
         - zuul-jobs-test-shake-build
-        - zuul-jobs-test-ensure-zookeeper
+        - zuul-jobs-test-ensure-zookeeper-debian-bookworm
+        - zuul-jobs-test-ensure-zookeeper-debian-bullseye
+        - zuul-jobs-test-ensure-zookeeper-debian-buster
+        - zuul-jobs-test-ensure-zookeeper-ubuntu-bionic
+        - zuul-jobs-test-ensure-zookeeper-ubuntu-focal
+        - zuul-jobs-test-ensure-zookeeper-ubuntu-jammy
         - zuul-jobs-test-update-json-file
         - zuul-jobs-test-stage-output
         - zuul-jobs-test-fetch-translation-output