Skip to content

Commit

Permalink
Merge PR #811
Browse files Browse the repository at this point in the history
This change the default rules dir var from package init to
a new `ansiblelint.constants` module.
  • Loading branch information
webknjaz committed Jun 5, 2020
2 parents eca19dd + f575960 commit 55043d6
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 13 deletions.
2 changes: 1 addition & 1 deletion lib/ansiblelint/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,6 @@
from typing import List, Set


default_rulesdir = os.path.join(os.path.dirname(ansiblelint.utils.__file__), 'rules')
_logger = logging.getLogger(__name__)


Expand All @@ -44,6 +43,7 @@ def __init__(self, rulesdirs=None):
self.rulesdirs = ansiblelint.utils.expand_paths_vars(rulesdirs)
self.rules = []
for rulesdir in self.rulesdirs:
_logger.debug("Loading rules from %s", rulesdir)
self.extend(ansiblelint.utils.load_plugins(rulesdir))
self.rules = sorted(self.rules, key=lambda r: r.id)

Expand Down
7 changes: 4 additions & 3 deletions lib/ansiblelint/__main__.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,8 @@
import sys

import ansiblelint.formatters as formatters
from ansiblelint import cli, default_rulesdir, RulesCollection, Runner
from ansiblelint import cli, RulesCollection, Runner
from ansiblelint.constants import DEFAULT_RULESDIR
from ansiblelint.utils import get_playbooks_and_roles
from ansiblelint.utils import normpath, initialize_logger
from ansiblelint.generate_docs import rules_as_rst
Expand Down Expand Up @@ -58,9 +59,9 @@ def main():
formatter = formatter_factory(cwd, options.display_relative_path)

if options.use_default_rules:
rulesdirs = options.rulesdir + [default_rulesdir]
rulesdirs = options.rulesdir + [DEFAULT_RULESDIR]
else:
rulesdirs = options.rulesdir or [default_rulesdir]
rulesdirs = options.rulesdir or [DEFAULT_RULESDIR]
rules = RulesCollection(rulesdirs)

if options.listrules:
Expand Down
14 changes: 5 additions & 9 deletions lib/ansiblelint/cli.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,9 @@
import yaml
from typing import NamedTuple

import ansiblelint
from ansiblelint.constants import DEFAULT_RULESDIR
from ansiblelint.version import __version__
import ansiblelint.utils


_logger = logging.getLogger(__name__)
Expand Down Expand Up @@ -110,17 +111,12 @@ def get_cli_parser() -> argparse.ArgumentParser:
help="parseable output including severity of rule")
parser.add_argument('-r', action=AbspathArgAction, dest='rulesdir',
default=[], type=Path,
help="specify one or more rules directories using "
"one or more -r arguments. Any -r flags override "
"the default rules in %s, unless -R is also used."
% ansiblelint.default_rulesdir)
help="Specify custom rule directories. Add -R "
f"to keep using embedded rules from {DEFAULT_RULESDIR}")
parser.add_argument('-R', action='store_true',
default=False,
dest='use_default_rules',
help="Use default rules in %s in addition to any extra "
"rules directories specified with -r. There is "
"no need to specify this if no -r flags are used"
% ansiblelint.default_rulesdir)
help="Keep default rules when using -r")
parser.add_argument('--show-relpath', dest='display_relative_path', action='store_false',
default=True,
help="Display path relative to CWD")
Expand Down
5 changes: 5 additions & 0 deletions lib/ansiblelint/constants.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
"""Constants used by AnsibleLint."""
import os.path


DEFAULT_RULESDIR = os.path.join(os.path.dirname(__file__), 'rules')

0 comments on commit 55043d6

Please sign in to comment.