Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion docs/configuration.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@ In order to help Ansible find used modules and roles, molecule will perform
a prerun set of actions. These involve installing dependencies from
``requirements.yml`` specified at project level, install a standalone role
or a collection. The destination is ``project_dir/.cache`` and the code itself
is reused from ansible-lint, which has to do the same actions.
was reused from ansible-lint, which has to do the same actions.
(Note: ansible-lint is not included with molecule.)

This assures that when you include a role inside molecule playbooks, Ansible
will be able to find that role, and that the include is exactly the same as
Expand Down Expand Up @@ -138,6 +139,9 @@ Molecule was able to use up to three linters and while it was aimed to flexible
about them, it ended up creating more confusions to the users. We decided to
maximize flexibility by just calling an external shell command.

Note: ansible-lint is not included with molecule. The ``molecule[lint]`` extra
does not install ansible-lint.

.. code-block:: yaml

lint: |
Expand Down
3 changes: 2 additions & 1 deletion docs/getting-started.rst
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,8 @@ keys represent the high level components that Molecule provides. These are:
the driver to delegate the task of creating instances.

* The :ref:`lint` command. Molecule can call external commands to ensure
that best practices are encouraged.
that best practices are encouraged. Note: `ansible-lint` is not included with
molecule or molecule[lint].
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove mention of extra.


* The :ref:`platforms` definitions. Molecule relies on this to know which
instances to create, name and to which group each instance belongs. If you
Expand Down
11 changes: 9 additions & 2 deletions docs/installation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,14 @@ Install Molecule:

.. code-block:: bash

$ python3 -m pip install --user "molecule[lint]"
$ python3 -m pip install --user "molecule"

Molecule does not include ansible-lint (nor does the lint extra), but
is easily installed separately:

.. code-block:: bash

$ python3 -m pip install --user "molecule ansible-lint"

Molecule uses the "delegated" driver by default. Other drivers can
be installed separately from PyPI, such as the molecule-docker driver.
Expand All @@ -103,7 +110,7 @@ command would look like this:

.. code-block:: bash

$ python3 -m pip install --user "molecule[docker,lint]"
$ python3 -m pip install --user "molecule[docker]"

Other drivers, such as ``molecule-podman``, ``molecule-vagrant``,
``molecule-azure`` or ``molecule-hetzner`` are also available.
Expand Down
1 change: 0 additions & 1 deletion setup.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,6 @@ test =
pytest-xdist >= 2.1.0
pytest >= 6.1.2
lint =
# ansible-lint is now a core dependency, duplicating it here would confuse pip
flake8 >= 3.8.4
pre-commit >= 2.10.1
yamllint
Expand Down
2 changes: 1 addition & 1 deletion src/molecule/command/init/scenario.py
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,7 @@ def _default_scenario_exists(ctx, param, value: str): # pragma: no cover
"--lint-name",
type=click.Choice(["yamllint"]),
default="yamllint",
help="Name of lint to initialize. (ansible-lint)",
help="Name of lint to initialize. (yamllint)",
)
@click.option(
"--provisioner-name",
Expand Down