diff --git a/tools/setup_gate.sh b/tools/setup_gate.sh
index 036521752c..54922f6024 100755
--- a/tools/setup_gate.sh
+++ b/tools/setup_gate.sh
@@ -92,8 +92,14 @@ function detect_distro {
 function setup_ansible {
     RAW_INVENTORY=/etc/kolla/inventory
 
+    # Test latest ansible version on Ubuntu, minimum supported on others.
+    if [[ $BASE_DISTRO == "ubuntu" ]]; then
+        ANSIBLE_VERSION=">=2.5"
+    else
+        ANSIBLE_VERSION="<2.6"
+    fi
     # TODO(SamYaple): Move to virtualenv
-    sudo -H pip install -U "ansible>=2.5" "docker>=2.0.0" "python-openstackclient" "ara<1.0.0" "cmd2<0.9.0"
+    sudo -H pip install -U "ansible${ANSIBLE_VERSION}" "docker>=2.0.0" "python-openstackclient" "ara<1.0.0" "cmd2<0.9.0"
     if [[ $ACTION == "zun" ]]; then
         sudo -H pip install -U "python-zunclient"
     fi