We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
To prevent my CI jobs from falsely reporting a success, I need to set the following parameters in my ansible.cfg:
ansible.cfg
host_pattern_mismatch=error any_unparsed_is_failed=True unparsed_is_failed=True
Up until ansible-lint 24.12.x, I used to pass the following overrides to ansible-lint throug environment variables to prevent errors:
ANSIBLE_INVENTORY_ANY_UNPARSED_IS_FAILED=False ANSIBLE_INVENTORY_UNPARSED_IS_FAILED=False ANSIBLE_HOST_PATTERN_MISMATCH=warning
ansible-lint --version ansible-lint 24.12.2 using ansible-core:2.17.4 ansible-compat:24.10.0 ruamel-yaml:0.18.6 ruamel-yaml-clib:0.2.8
[inventory]
Overrides should be honored as they were before 24.12.x
Please give some details of what is happening. Include a minimum complete verifiable example with:
ansible-playbook --syntax-check playbook
### ansible.cfg [inventory] host_pattern_mismatch=error any_unparsed_is_failed=True unparsed_is_failed=True
--- ### playbook.yml - name: Some playbook hosts: some_group tasks: - name: Print a message ansible.builtin.debug: msg: This is a message
export ANSIBLE_HOST_PATTERN_MISMATCH=warning export ANSIBLE_INVENTORY_ANY_UNPARSED_IS_FAILED=False export ANSIBLE_INVENTORY_UNPARSED_IS_FAILED=False ansible-lint playbook.yml -f json -vvvv # OUTPUT DEBUG Logging initialized to level 10 INFO Identified / as project root due file system root. DEBUG Options: Options(_skip_ansible_syntax_check=False, cache_dir=PosixPath('~/.cache/ansible-compat/e3b0c4'), colored=True, configured=True, cwd=PosixPath('~/src/2024-12-13'), display_relative_path=True, exclude_paths=['.cache', '.git', '.hg', '.svn', '.tox'], format='json', lintables=['playbook.yml'], list_rules=False, list_tags=False, write_list=[], parseable=False, quiet=0, rulesdirs=[PosixPath('~/.venvs/ansible-10.4.0/lib/python3.12/site-packages/ansiblelint/rules')], skip_list=[], tags=[], verbosity=4, warn_list=['experimental', 'jinja[spacing]', 'fqcn[deep]'], mock_filters=[], mock_modules=[], mock_roles=[], loop_var_prefix=None, only_builtins_allow_collections=[], only_builtins_allow_modules=[], var_naming_pattern=None, offline=None, project_dir='/', extra_vars=None, enable_list=[], skip_action_validation=True, strict=False, rules={}, profile=None, task_name_prefix='{stem} | ', sarif_file=None, config_file=None, generate_ignore=False, rulesdir=[], use_default_rules=False, version=False, list_profiles=False, ignore_file=None, max_tasks=100, max_block_depth=20, supported_ansible_also=[])[/] DEBUG CWD: ~/src/2024-12-13 DEBUG Logging initialized to level 10 DEBUG Effective yamllint rules used: {'anchors': {'level': 'error', 'forbid-undeclared-aliases': True, 'forbid-duplicated-anchors': False, 'forbid-unused-anchors': False}, 'braces': {'level': 'error', 'forbid': False, 'min-spaces-inside': 0, 'max-spaces-inside': 1, 'min-spaces-inside-empty': -1, 'max-spaces-inside-empty': -1}, 'brackets': {'level': 'error', 'forbid': False, 'min-spaces-inside': 0, 'max-spaces-inside': 0, 'min-spaces-inside-empty': -1, 'max-spaces-inside-empty': -1}, 'colons': {'level': 'error', 'max-spaces-before': 0, 'max-spaces-after': 1}, 'commas': {'level': 'error', 'max-spaces-before': 0, 'min-spaces-after': 1, 'max-spaces-after': 1}, 'comments': {'level': 'warning', 'require-starting-space': True, 'ignore-shebangs': True, 'min-spaces-from-content': 1}, 'comments-indentation': False, 'document-end': False, 'document-start': False, 'empty-lines': {'level': 'error', 'max': 2, 'max-start': 0, 'max-end': 0}, 'empty-values': False, 'float-values': False, 'hyphens': {'level': 'error', 'max-spaces-after': 1}, 'indentation': {'level': 'error', 'spaces': 'consistent', 'indent-sequences': True, 'check-multi-line-strings': False}, 'key-duplicates': {'level': 'error', 'forbid-duplicated-merge-keys': False}, 'key-ordering': False, 'line-length': {'level': 'error', 'max': 160, 'allow-non-breakable-words': True, 'allow-non-breakable-inline-mappings': False}, 'new-line-at-end-of-file': {'level': 'error'}, 'new-lines': {'level': 'error', 'type': 'unix'}, 'octal-values': {'forbid-implicit-octal': True, 'forbid-explicit-octal': True, 'level': 'error'}, 'quoted-strings': False, 'trailing-spaces': {'level': 'error'}, 'truthy': {'level': 'warning', 'allowed-values': ['true', 'false'], 'check-keys': True}} INFO Set ANSIBLE_LIBRARY=~/.cache/ansible-compat/c0ad97/modules:~/.ansible/plugins/modules:/usr/share/ansible/plugins/modules INFO Set ANSIBLE_ROLES_PATH=~/.cache/ansible-compat/c0ad97/roles:~/.ansible/roles:/usr/share/ansible/roles:/etc/ansible/roles DEBUG Effective yamllint rules used: {'anchors': {'level': 'error', 'forbid-undeclared-aliases': True, 'forbid-duplicated-anchors': False, 'forbid-unused-anchors': False}, 'braces': {'level': 'error', 'forbid': False, 'min-spaces-inside': 0, 'max-spaces-inside': 1, 'min-spaces-inside-empty': -1, 'max-spaces-inside-empty': -1}, 'brackets': {'level': 'error', 'forbid': False, 'min-spaces-inside': 0, 'max-spaces-inside': 0, 'min-spaces-inside-empty': -1, 'max-spaces-inside-empty': -1}, 'colons': {'level': 'error', 'max-spaces-before': 0, 'max-spaces-after': 1}, 'commas': {'level': 'error', 'max-spaces-before': 0, 'min-spaces-after': 1, 'max-spaces-after': 1}, 'comments': {'level': 'warning', 'require-starting-space': True, 'ignore-shebangs': True, 'min-spaces-from-content': 1}, 'comments-indentation': False, 'document-end': False, 'document-start': False, 'empty-lines': {'level': 'error', 'max': 2, 'max-start': 0, 'max-end': 0}, 'empty-values': False, 'float-values': False, 'hyphens': {'level': 'error', 'max-spaces-after': 1}, 'indentation': {'level': 'error', 'spaces': 'consistent', 'indent-sequences': True, 'check-multi-line-strings': False}, 'key-duplicates': {'level': 'error', 'forbid-duplicated-merge-keys': False}, 'key-ordering': False, 'line-length': {'level': 'error', 'max': 160, 'allow-non-breakable-words': True, 'allow-non-breakable-inline-mappings': False}, 'new-line-at-end-of-file': {'level': 'error'}, 'new-lines': {'level': 'error', 'type': 'unix'}, 'octal-values': {'forbid-implicit-octal': True, 'forbid-explicit-octal': True, 'level': 'error'}, 'quoted-strings': False, 'trailing-spaces': {'level': 'error'}, 'truthy': {'level': 'warning', 'allowed-values': ['true', 'false'], 'check-keys': True}} INFO Executing syntax check on playbook playbook.yml (0.21s) DEBUG Examining playbook.yml of type playbook DEBUG Running rule internal-error DEBUG Running rule load-failure DEBUG Running rule parser-error DEBUG Running rule warning DEBUG Running rule yaml DEBUG Running rule args DEBUG Running rule avoid-implicit DEBUG Running rule command-instead-of-module DEBUG Running rule command-instead-of-shell DEBUG Running rule complexity DEBUG Running rule deprecated-bare-vars DEBUG Running rule deprecated-local-action DEBUG Running rule deprecated-module DEBUG Running rule fqcn DEBUG Running rule galaxy DEBUG Running rule ignore-errors DEBUG Running rule inline-env-var DEBUG Running rule jinja DEBUG Running rule key-order DEBUG Running rule latest DEBUG Running rule literal-compare DEBUG Running rule loop-var-prefix DEBUG Running rule meta-incorrect DEBUG Running rule meta-no-tags DEBUG Running rule meta-runtime DEBUG Running rule meta-video-links DEBUG Running rule name DEBUG Running rule no-changed-when DEBUG Running rule no-free-form DEBUG Running rule no-handler DEBUG Running rule no-jinja-when DEBUG Running rule no-relative-paths DEBUG Running rule no-tabs DEBUG Running rule package-latest DEBUG Running rule partial-become DEBUG Running rule playbook-extension DEBUG Running rule risky-file-permissions DEBUG Running rule risky-octal DEBUG Running rule risky-shell-pipe DEBUG Running rule role-name DEBUG Running rule run-once DEBUG Running rule sanity DEBUG Running rule schema DEBUG Running rule var-naming [{"type": "issue", "check_name": "internal-error", "categories": ["core"], "url": "https://ansible.readthedocs.io/projects/lint/rules/internal-error/", "severity": "major", "description": "Unexpected error code 1 from execution of: ansible-playbook --syntax-check playbook.yml", "fingerprint": "ddab0a7a2dd82dd0f127a99d9fadd4d0b8f6d6eb3b08ce90c30fec0df1cf9a1f", "location": {"path": "playbook.yml", "lines": {"begin": 1}}, "content": {"body": "ERROR! No inventory was parsed, please check your configuration and options.\n"}}] DEBUG Attempting to release lock 140026562581408 on ~/.cache/ansible-compat/e3b0c4/.lock DEBUG Lock 140026562581408 released on ~/.cache/ansible-compat/e3b0c4/.lock Read documentation for instructions on how to ignore specific rule violations. DEBUG Determined rule-profile order: {'internal-error': (0, 'min'), 'load-failure': (1, 'min'), 'parser-error': (2, 'min'), 'syntax-check': (3, 'min'), 'command-instead-of-module': (4, 'basic'), 'command-instead-of-shell': (5, 'basic'), 'deprecated-bare-vars': (6, 'basic'), 'deprecated-local-action': (7, 'basic'), 'deprecated-module': (8, 'basic'), 'inline-env-var': (9, 'basic'), 'key-order': (10, 'basic'), 'literal-compare': (11, 'basic'), 'jinja': (12, 'basic'), 'no-free-form': (13, 'basic'), 'no-jinja-when': (14, 'basic'), 'no-tabs': (15, 'basic'), 'partial-become': (16, 'basic'), 'playbook-extension': (17, 'basic'), 'role-name': (18, 'basic'), 'schema': (19, 'basic'), 'name': (20, 'basic'), 'var-naming': (21, 'basic'), 'yaml': (22, 'basic'), 'name[template]': (23, 'moderate'), 'name[imperative]': (24, 'moderate'), 'name[casing]': (25, 'moderate'), 'spell-var-name': (26, 'moderate'), 'avoid-implicit': (27, 'safety'), 'latest': (28, 'safety'), 'package-latest': (29, 'safety'), 'risky-file-permissions': (30, 'safety'), 'risky-octal': (31, 'safety'), 'risky-shell-pipe': (32, 'safety'), 'galaxy': (33, 'shared'), 'ignore-errors': (34, 'shared'), 'layout': (35, 'shared'), 'meta-incorrect': (36, 'shared'), 'meta-no-tags': (37, 'shared'), 'meta-video-links': (38, 'shared'), 'meta-version': (39, 'shared'), 'meta-runtime': (40, 'shared'), 'no-changed-when': (41, 'shared'), 'no-changelog': (42, 'shared'), 'no-handler': (43, 'shared'), 'no-relative-paths': (44, 'shared'), 'max-block-depth': (45, 'shared'), 'max-tasks': (46, 'shared'), 'unsafe-loop': (47, 'shared'), 'avoid-dot-notation': (48, 'production'), 'sanity': (49, 'production'), 'fqcn': (50, 'production'), 'import-task-no-when': (51, 'production'), 'meta-no-dependencies': (52, 'production'), 'single-entry-point': (53, 'production'), 'use-loop': (54, 'production')}[/] # Rule Violation Summary 1 internal-error profile:min tags:core DEBUG Found virtualenv, assuming `pip3 install` will work. DEBUG lzma module is not available DEBUG Registered VCS backend: bzr DEBUG Registered VCS backend: git DEBUG Registered VCS backend: hg DEBUG Registered VCS backend: svn DEBUG Found ansible-lint 24.12.2 dist Failed: 1 failure(s), 0 warning(s) on 1 files.
[ { "type": "issue", "check_name": "internal-error", "categories": ["core"], "url": "https://ansible.readthedocs.io/projects/lint/rules/internal-error/", "severity": "major", "description": "Unexpected error code 1 from execution of: ansible-playbook --syntax-check playbook.yml", "fingerprint": "ddab0a7a2dd82dd0f127a99d9fadd4d0b8f6d6eb3b08ce90c30fec0df1cf9a1f", "location": { "path": "playbook.yml", "lines": {"begin": 1} }, "content": { "body": "ERROR! No inventory was parsed, please check your configuration and options.\n" } } ]
The text was updated successfully, but these errors were encountered:
Seems legit, any chance to attempt to make a PR to address it?
Sorry, something went wrong.
No branches or pull requests
Summary
To prevent my CI jobs from falsely reporting a success, I need to set the following parameters in my
ansible.cfg
:Up until ansible-lint 24.12.x, I used to pass the following overrides to ansible-lint throug environment variables to prevent errors:
Issue Type
OS / ENVIRONMENT
STEPS TO REPRODUCE
ansible.cfg
file using the previously mentionned parameters in the[inventory]
sectionDesired Behavior
Overrides should be honored as they were before 24.12.x
Actual Behavior
Please give some details of what is happening. Include a minimum complete
verifiable example with:
ansible-playbook --syntax-check playbook
The text was updated successfully, but these errors were encountered: