We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Docs contains template option for init role that actually does not exists
There are option documented here https://molecule.readthedocs.io/en/latest/usage.html#cmdoption-molecule-init-role-foo-template-path-arg-molecule
```
% molecule --version            
molecule 3.0.8
   ansible==2.9.11 python==3.8

```
but missed in command line
```
% molecule init role --template 111
Usage: molecule init role [OPTIONS] ROLE_NAME
Try 'molecule init role --help' for help.

Error: no such option: --template
zsh: exit 2     molecule init role --template 111
```

--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `molecule/command/init/role.py`
Content:
```
1 #  Copyright (c) 2015-2018 Cisco Systems, Inc.
2 #
3 #  Permission is hereby granted, free of charge, to any person obtaining a copy
4 #  of this software and associated documentation files (the "Software"), to
5 #  deal in the Software without restriction, including without limitation the
6 #  rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
7 #  sell copies of the Software, and to permit persons to whom the Software is
8 #  furnished to do so, subject to the following conditions:
9 #
10 #  The above copyright notice and this permission notice shall be included in
11 #  all copies or substantial portions of the Software.
12 #
13 #  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 #  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 #  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 #  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 #  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
18 #  FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
19 #  DEALINGS IN THE SOFTWARE.
20 """Base class used by init role command."""
21 
22 import os
23 import subprocess
24 from subprocess import check_output
25 
26 import click
27 
28 from molecule import api, logger, util
29 from molecule.command import base as command_base
30 from molecule.command.init import base
31 from molecule.config import DEFAULT_DRIVER
32 
33 LOG = logger.get_logger(__name__)
34 
35 
36 class Role(base.Base):
37     """
38     Init Role Command Class.
39 
40     .. program:: molecule init role foo
41 
42     .. option:: molecule init role foo
43 
44         Initialize a new role.
45 
46     .. program:: molecule init role foo --template path
47 
48     .. option:: molecule init role foo --template path
49 
50         Initialize a new role using ansible-galaxy and include default
51         molecule directory. Please refer to the ``init scenario``
52         command in order to generate a custom ``molecule`` scenario.
53     """
54 
55     def __init__(self, command_args):
56         """Construct Role."""
57         self._command_args = command_args
58 
59     def execute(self):
60         """
61         Execute the actions necessary to perform a `molecule init role` and \
62         returns None.
63 
64         :return: None
65         """
66         role_name = self._command_args["role_name"]
67         role_directory = os.getcwd()
68         msg = "Initializing new role {}...".format(role_name)
69         LOG.info(msg)
70 
71         if os.path.isdir(role_name):
72             msg = ("The directory {} exists. " "Cannot create new role.").format(
73                 role_name
74             )
75             util.sysexit_with_message(msg)
76 
77         try:
78             cmd = ["ansible-galaxy", "init", "-v", "--offline", role_name]
79             check_output(cmd, stderr=subprocess.STDOUT, universal_newlines=True)
80         except Exception as e:
81             util.sysexit_with_message(
82                 "Galaxy failed to create role: %s: %s" % (e, e.output)
83             )
84 
85         scenario_base_directory = os.path.join(role_directory, role_name)
86         templates = [
87             api.drivers()[self._command_args["driver_name"]].template_dir(),
88             api.verifiers()[self._command_args["verifier_name"]].template_dir(),
89         ]
90         self._process_templates("molecule", self._command_args, role_directory)
91         for template in templates:
92             self._process_templates(
93                 template, self._command_args, scenario_base_directory
94             )
95 
96         role_directory = os.path.join(role_directory, role_name)
97         msg = "Initialized role in {} successfully.".format(role_directory)
98         LOG.success(msg)
99 
100 
101 @command_base.click_command_ex()
102 @click.pass_context
103 @click.option(
104     "--dependency-name",
105     type=click.Choice(["galaxy"]),
106     default="galaxy",
107     help="Name of dependency to initialize. (galaxy)",
108 )
109 @click.option(
110     "--driver-name",
111     "-d",
112     type=click.Choice([str(s) for s in api.drivers()]),
113     default=DEFAULT_DRIVER,
114     help=f"Name of driver to initialize. ({DEFAULT_DRIVER})",
115 )
116 @click.option(
117     "--lint-name",
118     type=click.Choice(["yamllint"]),
119     default="yamllint",
120     help="Name of lint to initialize. (yamllint)",
121 )
122 @click.option(
123     "--provisioner-name",
124     type=click.Choice(["ansible"]),
125     default="ansible",
126     help="Name of provisioner to initialize. (ansible)",
127 )
128 @click.argument("ROLE-NAME", required=True)
129 @click.option(
130     "--verifier-name",
131     type=click.Choice([str(s) for s in api.verifiers()]),
132     default="ansible",
133     help="Name of verifier to initialize. (ansible)",
134 )
135 def role(
136     ctx,
137     dependency_name,
138     driver_name,
139     lint_name,
140     provisioner_name,
141     role_name,
142     verifier_name,
143 ):  # pragma: no cover
144     """Initialize a new role for use with Molecule."""
145     command_args = {
146         "dependency_name": dependency_name,
147         "driver_name": driver_name,
148         "lint_name": lint_name,
149         "provisioner_name": provisioner_name,
150         "role_name": role_name,
151         "scenario_name": command_base.MOLECULE_DEFAULT_SCENARIO_NAME,
152         "subcommand": __name__,
153         "verifier_name": verifier_name,
154     }
155 
156     r = Role(command_args)
157     r.execute()
158
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/molecule/command/init/role.py b/molecule/command/init/role.py
--- a/molecule/command/init/role.py
+++ b/molecule/command/init/role.py
@@ -43,10 +43,6 @@
 
         Initialize a new role.
 
-    .. program:: molecule init role foo --template path
-
-    .. option:: molecule init role foo --template path
-
         Initialize a new role using ansible-galaxy and include default
         molecule directory. Please refer to the ``init scenario``
         command in order to generate a custom ``molecule`` scenario.

{"golden_diff": "diff --git a/molecule/command/init/role.py b/molecule/command/init/role.py\n--- a/molecule/command/init/role.py\n+++ b/molecule/command/init/role.py\n@@ -43,10 +43,6 @@\n \n         Initialize a new role.\n \n-    .. program:: molecule init role foo --template path\n-\n-    .. option:: molecule init role foo --template path\n-\n         Initialize a new role using ansible-galaxy and include default\n         molecule directory. Please refer to the ``init scenario``\n         command in order to generate a custom ``molecule`` scenario.\n", "issue": "Docs contains template option for init role that actually does not exists\nThere are option documented here https://molecule.readthedocs.io/en/latest/usage.html#cmdoption-molecule-init-role-foo-template-path-arg-molecule\r\n```\r\n% molecule --version            \r\nmolecule 3.0.8\r\n   ansible==2.9.11 python==3.8\r\n\r\n```\r\nbut missed in command line\r\n```\r\n% molecule init role --template 111\r\nUsage: molecule init role [OPTIONS] ROLE_NAME\r\nTry 'molecule init role --help' for help.\r\n\r\nError: no such option: --template\r\nzsh: exit 2     molecule init role --template 111\r\n```\n", "before_files": [{"content": "#  Copyright (c) 2015-2018 Cisco Systems, Inc.\n#\n#  Permission is hereby granted, free of charge, to any person obtaining a copy\n#  of this software and associated documentation files (the \"Software\"), to\n#  deal in the Software without restriction, including without limitation the\n#  rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n#  sell copies of the Software, and to permit persons to whom the Software is\n#  furnished to do so, subject to the following conditions:\n#\n#  The above copyright notice and this permission notice shall be included in\n#  all copies or substantial portions of the Software.\n#\n#  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n#  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n#  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n#  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n#  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n#  FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER\n#  DEALINGS IN THE SOFTWARE.\n\"\"\"Base class used by init role command.\"\"\"\n\nimport os\nimport subprocess\nfrom subprocess import check_output\n\nimport click\n\nfrom molecule import api, logger, util\nfrom molecule.command import base as command_base\nfrom molecule.command.init import base\nfrom molecule.config import DEFAULT_DRIVER\n\nLOG = logger.get_logger(__name__)\n\n\nclass Role(base.Base):\n    \"\"\"\n    Init Role Command Class.\n\n    .. program:: molecule init role foo\n\n    .. option:: molecule init role foo\n\n        Initialize a new role.\n\n    .. program:: molecule init role foo --template path\n\n    .. option:: molecule init role foo --template path\n\n        Initialize a new role using ansible-galaxy and include default\n        molecule directory. Please refer to the ``init scenario``\n        command in order to generate a custom ``molecule`` scenario.\n    \"\"\"\n\n    def __init__(self, command_args):\n        \"\"\"Construct Role.\"\"\"\n        self._command_args = command_args\n\n    def execute(self):\n        \"\"\"\n        Execute the actions necessary to perform a `molecule init role` and \\\n        returns None.\n\n        :return: None\n        \"\"\"\n        role_name = self._command_args[\"role_name\"]\n        role_directory = os.getcwd()\n        msg = \"Initializing new role {}...\".format(role_name)\n        LOG.info(msg)\n\n        if os.path.isdir(role_name):\n            msg = (\"The directory {} exists. \" \"Cannot create new role.\").format(\n                role_name\n            )\n            util.sysexit_with_message(msg)\n\n        try:\n            cmd = [\"ansible-galaxy\", \"init\", \"-v\", \"--offline\", role_name]\n            check_output(cmd, stderr=subprocess.STDOUT, universal_newlines=True)\n        except Exception as e:\n            util.sysexit_with_message(\n                \"Galaxy failed to create role: %s: %s\" % (e, e.output)\n            )\n\n        scenario_base_directory = os.path.join(role_directory, role_name)\n        templates = [\n            api.drivers()[self._command_args[\"driver_name\"]].template_dir(),\n            api.verifiers()[self._command_args[\"verifier_name\"]].template_dir(),\n        ]\n        self._process_templates(\"molecule\", self._command_args, role_directory)\n        for template in templates:\n            self._process_templates(\n                template, self._command_args, scenario_base_directory\n            )\n\n        role_directory = os.path.join(role_directory, role_name)\n        msg = \"Initialized role in {} successfully.\".format(role_directory)\n        LOG.success(msg)\n\n\n@command_base.click_command_ex()\n@click.pass_context\n@click.option(\n    \"--dependency-name\",\n    type=click.Choice([\"galaxy\"]),\n    default=\"galaxy\",\n    help=\"Name of dependency to initialize. (galaxy)\",\n)\n@click.option(\n    \"--driver-name\",\n    \"-d\",\n    type=click.Choice([str(s) for s in api.drivers()]),\n    default=DEFAULT_DRIVER,\n    help=f\"Name of driver to initialize. ({DEFAULT_DRIVER})\",\n)\n@click.option(\n    \"--lint-name\",\n    type=click.Choice([\"yamllint\"]),\n    default=\"yamllint\",\n    help=\"Name of lint to initialize. (yamllint)\",\n)\n@click.option(\n    \"--provisioner-name\",\n    type=click.Choice([\"ansible\"]),\n    default=\"ansible\",\n    help=\"Name of provisioner to initialize. (ansible)\",\n)\n@click.argument(\"ROLE-NAME\", required=True)\n@click.option(\n    \"--verifier-name\",\n    type=click.Choice([str(s) for s in api.verifiers()]),\n    default=\"ansible\",\n    help=\"Name of verifier to initialize. (ansible)\",\n)\ndef role(\n    ctx,\n    dependency_name,\n    driver_name,\n    lint_name,\n    provisioner_name,\n    role_name,\n    verifier_name,\n):  # pragma: no cover\n    \"\"\"Initialize a new role for use with Molecule.\"\"\"\n    command_args = {\n        \"dependency_name\": dependency_name,\n        \"driver_name\": driver_name,\n        \"lint_name\": lint_name,\n        \"provisioner_name\": provisioner_name,\n        \"role_name\": role_name,\n        \"scenario_name\": command_base.MOLECULE_DEFAULT_SCENARIO_NAME,\n        \"subcommand\": __name__,\n        \"verifier_name\": verifier_name,\n    }\n\n    r = Role(command_args)\n    r.execute()\n", "path": "molecule/command/init/role.py"}], "after_files": [{"content": "#  Copyright (c) 2015-2018 Cisco Systems, Inc.\n#\n#  Permission is hereby granted, free of charge, to any person obtaining a copy\n#  of this software and associated documentation files (the \"Software\"), to\n#  deal in the Software without restriction, including without limitation the\n#  rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n#  sell copies of the Software, and to permit persons to whom the Software is\n#  furnished to do so, subject to the following conditions:\n#\n#  The above copyright notice and this permission notice shall be included in\n#  all copies or substantial portions of the Software.\n#\n#  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n#  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n#  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n#  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n#  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n#  FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER\n#  DEALINGS IN THE SOFTWARE.\n\"\"\"Base class used by init role command.\"\"\"\n\nimport os\nimport subprocess\nfrom subprocess import check_output\n\nimport click\n\nfrom molecule import api, logger, util\nfrom molecule.command import base as command_base\nfrom molecule.command.init import base\nfrom molecule.config import DEFAULT_DRIVER\n\nLOG = logger.get_logger(__name__)\n\n\nclass Role(base.Base):\n    \"\"\"\n    Init Role Command Class.\n\n    .. program:: molecule init role foo\n\n    .. option:: molecule init role foo\n\n        Initialize a new role.\n\n        Initialize a new role using ansible-galaxy and include default\n        molecule directory. Please refer to the ``init scenario``\n        command in order to generate a custom ``molecule`` scenario.\n    \"\"\"\n\n    def __init__(self, command_args):\n        \"\"\"Construct Role.\"\"\"\n        self._command_args = command_args\n\n    def execute(self):\n        \"\"\"\n        Execute the actions necessary to perform a `molecule init role` and \\\n        returns None.\n\n        :return: None\n        \"\"\"\n        role_name = self._command_args[\"role_name\"]\n        role_directory = os.getcwd()\n        msg = \"Initializing new role {}...\".format(role_name)\n        LOG.info(msg)\n\n        if os.path.isdir(role_name):\n            msg = (\"The directory {} exists. \" \"Cannot create new role.\").format(\n                role_name\n            )\n            util.sysexit_with_message(msg)\n\n        try:\n            cmd = [\"ansible-galaxy\", \"init\", \"-v\", \"--offline\", role_name]\n            check_output(cmd, stderr=subprocess.STDOUT, universal_newlines=True)\n        except Exception as e:\n            util.sysexit_with_message(\n                \"Galaxy failed to create role: %s: %s\" % (e, e.output)\n            )\n\n        scenario_base_directory = os.path.join(role_directory, role_name)\n        templates = [\n            api.drivers()[self._command_args[\"driver_name\"]].template_dir(),\n            api.verifiers()[self._command_args[\"verifier_name\"]].template_dir(),\n        ]\n        self._process_templates(\"molecule\", self._command_args, role_directory)\n        for template in templates:\n            self._process_templates(\n                template, self._command_args, scenario_base_directory\n            )\n\n        role_directory = os.path.join(role_directory, role_name)\n        msg = \"Initialized role in {} successfully.\".format(role_directory)\n        LOG.success(msg)\n\n\n@command_base.click_command_ex()\n@click.pass_context\n@click.option(\n    \"--dependency-name\",\n    type=click.Choice([\"galaxy\"]),\n    default=\"galaxy\",\n    help=\"Name of dependency to initialize. (galaxy)\",\n)\n@click.option(\n    \"--driver-name\",\n    \"-d\",\n    type=click.Choice([str(s) for s in api.drivers()]),\n    default=DEFAULT_DRIVER,\n    help=f\"Name of driver to initialize. ({DEFAULT_DRIVER})\",\n)\n@click.option(\n    \"--lint-name\",\n    type=click.Choice([\"yamllint\"]),\n    default=\"yamllint\",\n    help=\"Name of lint to initialize. (yamllint)\",\n)\n@click.option(\n    \"--provisioner-name\",\n    type=click.Choice([\"ansible\"]),\n    default=\"ansible\",\n    help=\"Name of provisioner to initialize. (ansible)\",\n)\n@click.argument(\"ROLE-NAME\", required=True)\n@click.option(\n    \"--verifier-name\",\n    type=click.Choice([str(s) for s in api.verifiers()]),\n    default=\"ansible\",\n    help=\"Name of verifier to initialize. (ansible)\",\n)\ndef role(\n    ctx,\n    dependency_name,\n    driver_name,\n    lint_name,\n    provisioner_name,\n    role_name,\n    verifier_name,\n):  # pragma: no cover\n    \"\"\"Initialize a new role for use with Molecule.\"\"\"\n    command_args = {\n        \"dependency_name\": dependency_name,\n        \"driver_name\": driver_name,\n        \"lint_name\": lint_name,\n        \"provisioner_name\": provisioner_name,\n        \"role_name\": role_name,\n        \"scenario_name\": command_base.MOLECULE_DEFAULT_SCENARIO_NAME,\n        \"subcommand\": __name__,\n        \"verifier_name\": verifier_name,\n    }\n\n    r = Role(command_args)\n    r.execute()\n", "path": "molecule/command/init/role.py"}]}