Merge "Remove implied playbook extensions" into feature/zuulv3
diff --git a/doc/source/user/config.rst b/doc/source/user/config.rst
index 96e55a8..4151eda 100644
--- a/doc/source/user/config.rst
+++ b/doc/source/user/config.rst
@@ -798,13 +798,6 @@
       are run after the parent's.  See :ref:`job` for more
       information.
 
-      .. warning::
-
-         If the path as specified does not exist, Zuul will try
-         appending the extensions ``.yaml`` and ``.yml``.  This
-         behavior is deprecated and will be removed in the future all
-         playbook paths should include the file extension.
-
    .. attr:: post-run
 
       The name of a playbook or list of playbooks to run after the
@@ -815,13 +808,6 @@
       playbooks are run before the parent's.  See :ref:`job` for more
       information.
 
-      .. warning::
-
-         If the path as specified does not exist, Zuul will try
-         appending the extensions ``.yaml`` and ``.yml``.  This
-         behavior is deprecated and will be removed in the future all
-         playbook paths should include the file extension.
-
    .. attr:: run
 
       The name of the main playbook for this job.  If it is not
@@ -833,13 +819,6 @@
 
          run: playbooks/job-playbook.yaml
 
-      .. warning::
-
-         If the path as specified does not exist, Zuul will try
-         appending the extensions ``.yaml`` and ``.yml``.  This
-         behavior is deprecated and will be removed in the future all
-         playbook paths should include the file extension.
-
    .. attr:: roles
 
       A list of Ansible roles to prepare for the job.  Because a job
diff --git a/zuul/executor/server.py b/zuul/executor/server.py
index 3a91995..7a93f89 100644
--- a/zuul/executor/server.py
+++ b/zuul/executor/server.py
@@ -959,13 +959,11 @@
                     "non-trusted repo." % (entry, path))
 
     def findPlaybook(self, path, trusted=False):
-        for ext in ['', '.yaml', '.yml']:
-            fn = path + ext
-            if os.path.exists(fn):
-                if not trusted:
-                    playbook_dir = os.path.dirname(os.path.abspath(fn))
-                    self._blockPluginDirs(playbook_dir)
-                return fn
+        if os.path.exists(path):
+            if not trusted:
+                playbook_dir = os.path.dirname(os.path.abspath(path))
+                self._blockPluginDirs(playbook_dir)
+            return path
         raise ExecutorError("Unable to find playbook %s" % path)
 
     def preparePlaybooks(self, args):