diff --git a/ansible/bifrost.yml b/ansible/bifrost.yml
index 1769ce8e221c3ce5f919800f3f00e671bb3a80c1..2adedcc1dab71d94885eb51859014f4f827c0246 100644
--- a/ansible/bifrost.yml
+++ b/ansible/bifrost.yml
@@ -1,19 +1,7 @@
 ---
-- name: Detect openstack_release variable
-  hosts: bifrost
-  gather_facts: false
-  tasks:
-    - name: Get current kolla-ansible version number
-      local_action: command python -c "import pbr.version; print(pbr.version.VersionInfo('kolla-ansible'))"
-      register: kolla_ansible_version
-      changed_when: false
-      when: openstack_release == "auto"
-
-    - name: Set openstack_release variable
-      set_fact:
-        openstack_release: "{{ kolla_ansible_version.stdout }}"
-      when: openstack_release == "auto"
-  tags: always
+- import_playbook: detect-release.yml
+  vars:
+    detect_release_hosts: bifrost
 
 - name: Apply role bifrost
   hosts: bifrost
diff --git a/ansible/detect-release.yml b/ansible/detect-release.yml
new file mode 100644
index 0000000000000000000000000000000000000000..406a5449999534be11f7562cd2f5af10f4edac9a
--- /dev/null
+++ b/ansible/detect-release.yml
@@ -0,0 +1,16 @@
+---
+- name: Detect openstack_release variable
+  hosts: "{{ detect_release_hosts }}"
+  gather_facts: false
+  tasks:
+    - name: Get current kolla-ansible version number
+      local_action: command python -c "import pbr.version; print(pbr.version.VersionInfo('kolla-ansible'))"
+      register: kolla_ansible_version
+      changed_when: false
+      when: openstack_release == "auto"
+
+    - name: Set openstack_release variable
+      set_fact:
+        openstack_release: "{{ kolla_ansible_version.stdout }}"
+      when: openstack_release == "auto"
+  tags: always
diff --git a/ansible/mariadb_backup.yml b/ansible/mariadb_backup.yml
index 2bd9f9af90b8487e864f7f8639afe35918115a49..f3a1218863774791cccf2e5872e7c540051bbd86 100644
--- a/ansible/mariadb_backup.yml
+++ b/ansible/mariadb_backup.yml
@@ -1,19 +1,7 @@
 ---
-- name: Detect openstack_release variable
-  hosts: mariadb
-  gather_facts: false
-  tasks:
-    - name: Get current kolla-ansible version number
-      local_action: command python -c "import pbr.version; print(pbr.version.VersionInfo('kolla-ansible'))"
-      register: kolla_ansible_version
-      changed_when: false
-      when: openstack_release == "auto"
-
-    - name: Set openstack_release variable
-      set_fact:
-        openstack_release: "{{ kolla_ansible_version.stdout }}"
-      when: openstack_release == "auto"
-  tags: always
+- import_playbook: detect-release.yml
+  vars:
+    detect_release_hosts: mariadb
 
 - name: Backup MariaDB
   hosts: mariadb
diff --git a/ansible/mariadb_recovery.yml b/ansible/mariadb_recovery.yml
index 2fed6de36b320eaf2a2f27855cb4a4e539a67f62..a37bf9d5fc98bf8237cb68b74ed4b25557471050 100644
--- a/ansible/mariadb_recovery.yml
+++ b/ansible/mariadb_recovery.yml
@@ -1,19 +1,7 @@
 ---
-- name: Detect openstack_release variable
-  hosts: mariadb
-  gather_facts: false
-  tasks:
-    - name: Get current kolla-ansible version number
-      local_action: command python -c "import pbr.version; print(pbr.version.VersionInfo('kolla-ansible'))"
-      register: kolla_ansible_version
-      changed_when: false
-      when: openstack_release == "auto"
-
-    - name: Set openstack_release variable
-      set_fact:
-        openstack_release: "{{ kolla_ansible_version.stdout }}"
-      when: openstack_release == "auto"
-  tags: always
+- import_playbook: detect-release.yml
+  vars:
+    detect_release_hosts: mariadb
 
 - name: Recover mariadb
   hosts: mariadb
diff --git a/ansible/site.yml b/ansible/site.yml
index 7c4c54ebddf7bc2fecf0f570a8c2e568e80d584f..1f2cbc2e4d7d69e61279fcbd321138f89eb57d71 100644
--- a/ansible/site.yml
+++ b/ansible/site.yml
@@ -32,21 +32,9 @@
         - (ansible_play_batch | length) != (groups['all'] | length)
   tags: always
 
-- name: Detect openstack_release variable
-  hosts: all
-  gather_facts: false
-  tasks:
-    - name: Get current kolla-ansible version number
-      local_action: command python -c "import pbr.version; print(pbr.version.VersionInfo('kolla-ansible'))"
-      register: kolla_ansible_version
-      changed_when: false
-      when: openstack_release == "auto"
-
-    - name: Set openstack_release variable
-      set_fact:
-        openstack_release: "{{ kolla_ansible_version.stdout }}"
-      when: openstack_release == "auto"
-  tags: always
+- import_playbook: detect-release.yml
+  vars:
+    detect_release_hosts: all
 
 - name: Apply role prechecks
   gather_facts: false