From 842a4fbbac941643048856f67273e3497348b8be Mon Sep 17 00:00:00 2001 From: Sorin Sbarnea Date: Thu, 22 Jun 2023 16:10:08 +0100 Subject: [PATCH] Enable ansible-lint action Related: https://github.com/ansible/ansible-lint/issues/3482 --- .ansible-lint-ignore | 213 +++++++++++++++++++++++++++++ .github/workflows/ansible-lint.yml | 12 ++ 2 files changed, 225 insertions(+) create mode 100644 .ansible-lint-ignore create mode 100644 .github/workflows/ansible-lint.yml diff --git a/.ansible-lint-ignore b/.ansible-lint-ignore new file mode 100644 index 0000000..60798f8 --- /dev/null +++ b/.ansible-lint-ignore @@ -0,0 +1,213 @@ +# This file contains ignores rule violations for ansible-lint +changelogs/changelog.yaml yaml[indentation] +changelogs/config.yaml yaml[indentation] +changelogs/fragments/test-reqs.yml yaml[line-length] +meta/runtime.yml meta-runtime[unsupported-version] +tests/integration/requirements.yml yaml[indentation] +tests/integration/targets/acl/tasks/acl.yml command-instead-of-shell +tests/integration/targets/acl/tasks/acl.yml fqcn[action-core] +tests/integration/targets/acl/tasks/acl.yml fqcn[action] +tests/integration/targets/acl/tasks/acl.yml name[casing] +tests/integration/targets/acl/tasks/acl.yml no-changed-when +tests/integration/targets/acl/tasks/acl.yml risky-file-permissions +tests/integration/targets/acl/tasks/acl.yml yaml[indentation] +tests/integration/targets/acl/tasks/acl.yml yaml[truthy] +tests/integration/targets/acl/tasks/main.yml fqcn[action-core] +tests/integration/targets/acl/tasks/main.yml key-order[task] +tests/integration/targets/acl/tasks/main.yml name[casing] +tests/integration/targets/acl/tasks/main.yml name[missing] +tests/integration/targets/acl/tasks/main.yml yaml[indentation] +tests/integration/targets/at/tasks/main.yml fqcn[action-core] +tests/integration/targets/at/tasks/main.yml fqcn[action] +tests/integration/targets/at/tasks/main.yml jinja[spacing] +tests/integration/targets/at/tasks/main.yml name[casing] +tests/integration/targets/at/tasks/main.yml name[missing] +tests/integration/targets/at/tasks/main.yml no-free-form +tests/integration/targets/at/tasks/main.yml risky-file-permissions +tests/integration/targets/at/tasks/main.yml yaml[indentation] +tests/integration/targets/at/tasks/main.yml yaml[trailing-spaces] +tests/integration/targets/authorized_key/tasks/check_mode.yml fqcn[action-core] +tests/integration/targets/authorized_key/tasks/check_mode.yml fqcn[action] +tests/integration/targets/authorized_key/tasks/check_mode.yml risky-file-permissions +tests/integration/targets/authorized_key/tasks/check_mode.yml yaml[truthy] +tests/integration/targets/authorized_key/tasks/comments.yml fqcn[action-core] +tests/integration/targets/authorized_key/tasks/comments.yml fqcn[action] +tests/integration/targets/authorized_key/tasks/comments.yml name[casing] +tests/integration/targets/authorized_key/tasks/comments.yml name[missing] +tests/integration/targets/authorized_key/tasks/comments.yml risky-shell-pipe +tests/integration/targets/authorized_key/tasks/comments.yml yaml[truthy] +tests/integration/targets/authorized_key/tasks/main.yml fqcn[action-core] +tests/integration/targets/authorized_key/tasks/multiple_keys.yml command-instead-of-shell +tests/integration/targets/authorized_key/tasks/multiple_keys.yml fqcn[action-core] +tests/integration/targets/authorized_key/tasks/multiple_keys.yml fqcn[action] +tests/integration/targets/authorized_key/tasks/multiple_keys.yml name[casing] +tests/integration/targets/authorized_key/tasks/multiple_keys.yml yaml[indentation] +tests/integration/targets/authorized_key/tasks/multiple_keys.yml yaml[truthy] +tests/integration/targets/authorized_key/tasks/setup_steps.yml command-instead-of-shell +tests/integration/targets/authorized_key/tasks/setup_steps.yml fqcn[action-core] +tests/integration/targets/authorized_key/tasks/setup_steps.yml fqcn[action] +tests/integration/targets/authorized_key/tasks/setup_steps.yml name[casing] +tests/integration/targets/authorized_key/tasks/setup_steps.yml risky-file-permissions +tests/integration/targets/authorized_key/tasks/setup_steps.yml yaml[truthy] +tests/integration/targets/authorized_key/tasks/ssh_dss.yml fqcn[action-core] +tests/integration/targets/authorized_key/tasks/ssh_dss.yml fqcn[action] +tests/integration/targets/authorized_key/tasks/ssh_dss.yml name[casing] +tests/integration/targets/authorized_key/tasks/ssh_dss.yml no-free-form +tests/integration/targets/authorized_key/tasks/ssh_dss.yml risky-shell-pipe +tests/integration/targets/authorized_key/tasks/ssh_dss.yml yaml[truthy] +tests/integration/targets/firewalld/tasks/icmp_block_inversion_test_cases.yml fqcn[action-core] +tests/integration/targets/firewalld/tasks/icmp_block_inversion_test_cases.yml name[casing] +tests/integration/targets/firewalld/tasks/icmp_block_inversion_test_cases.yml yaml[colons] +tests/integration/targets/firewalld/tasks/icmp_block_inversion_test_cases.yml yaml[indentation] +tests/integration/targets/firewalld/tasks/icmp_block_inversion_test_cases.yml yaml[truthy] +tests/integration/targets/firewalld/tasks/interface_test_cases.yml fqcn[action-core] +tests/integration/targets/firewalld/tasks/interface_test_cases.yml name[casing] +tests/integration/targets/firewalld/tasks/interface_test_cases.yml yaml[indentation] +tests/integration/targets/firewalld/tasks/interface_test_cases.yml yaml[truthy] +tests/integration/targets/firewalld/tasks/main.yml command-instead-of-shell +tests/integration/targets/firewalld/tasks/main.yml fqcn[action-core] +tests/integration/targets/firewalld/tasks/main.yml jinja[spacing] +tests/integration/targets/firewalld/tasks/main.yml key-order[task] +tests/integration/targets/firewalld/tasks/main.yml name[casing] +tests/integration/targets/firewalld/tasks/main.yml name[missing] +tests/integration/targets/firewalld/tasks/main.yml no-changed-when +tests/integration/targets/firewalld/tasks/main.yml yaml[indentation] +tests/integration/targets/firewalld/tasks/masquerade_test_cases.yml fqcn[action-core] +tests/integration/targets/firewalld/tasks/masquerade_test_cases.yml name[casing] +tests/integration/targets/firewalld/tasks/masquerade_test_cases.yml yaml[colons] +tests/integration/targets/firewalld/tasks/masquerade_test_cases.yml yaml[indentation] +tests/integration/targets/firewalld/tasks/masquerade_test_cases.yml yaml[truthy] +tests/integration/targets/firewalld/tasks/port_forward_test_cases.yml fqcn[action-core] +tests/integration/targets/firewalld/tasks/port_forward_test_cases.yml fqcn[action] +tests/integration/targets/firewalld/tasks/port_forward_test_cases.yml name[casing] +tests/integration/targets/firewalld/tasks/port_forward_test_cases.yml yaml[indentation] +tests/integration/targets/firewalld/tasks/port_test_cases.yml fqcn[action-core] +tests/integration/targets/firewalld/tasks/port_test_cases.yml fqcn[action] +tests/integration/targets/firewalld/tasks/port_test_cases.yml name[casing] +tests/integration/targets/firewalld/tasks/port_test_cases.yml yaml[indentation] +tests/integration/targets/firewalld/tasks/protocol_test_cases.yml fqcn[action-core] +tests/integration/targets/firewalld/tasks/protocol_test_cases.yml fqcn[action] +tests/integration/targets/firewalld/tasks/protocol_test_cases.yml name[casing] +tests/integration/targets/firewalld/tasks/protocol_test_cases.yml yaml[indentation] +tests/integration/targets/firewalld/tasks/run_all_tests.yml fqcn[action-core] +tests/integration/targets/firewalld/tasks/run_all_tests.yml name[missing] +tests/integration/targets/firewalld/tasks/run_all_tests.yml risky-file-permissions +tests/integration/targets/firewalld/tasks/service_test_cases.yml fqcn[action-core] +tests/integration/targets/firewalld/tasks/service_test_cases.yml fqcn[action] +tests/integration/targets/firewalld/tasks/service_test_cases.yml name[casing] +tests/integration/targets/firewalld/tasks/service_test_cases.yml yaml[indentation] +tests/integration/targets/firewalld/tasks/source_test_cases.yml fqcn[action-core] +tests/integration/targets/firewalld/tasks/source_test_cases.yml fqcn[action] +tests/integration/targets/firewalld/tasks/source_test_cases.yml name[casing] +tests/integration/targets/firewalld/tasks/source_test_cases.yml yaml[indentation] +tests/integration/targets/firewalld/tasks/source_test_cases.yml yaml[line-length] +tests/integration/targets/firewalld/tasks/source_test_cases.yml yaml[truthy] +tests/integration/targets/firewalld/tasks/zone_target_test_cases.yml fqcn[action-core] +tests/integration/targets/firewalld/tasks/zone_target_test_cases.yml fqcn[action] +tests/integration/targets/firewalld/tasks/zone_target_test_cases.yml name[casing] +tests/integration/targets/firewalld/tasks/zone_target_test_cases.yml yaml[indentation] +tests/integration/targets/firewalld/tasks/zone_target_test_cases.yml yaml[new-line-at-end-of-file] +tests/integration/targets/firewalld/tasks/zone_target_test_cases.yml yaml[truthy] +tests/integration/targets/firewalld/tasks/zone_test_cases.yml fqcn[action-core] +tests/integration/targets/firewalld/tasks/zone_test_cases.yml fqcn[action] +tests/integration/targets/firewalld/tasks/zone_test_cases.yml name[casing] +tests/integration/targets/firewalld/tasks/zone_test_cases.yml yaml[indentation] +tests/integration/targets/firewalld/tasks/zone_test_cases.yml yaml[truthy] +tests/integration/targets/firewalld_info/tasks/main.yml command-instead-of-shell +tests/integration/targets/firewalld_info/tasks/main.yml fqcn[action-core] +tests/integration/targets/firewalld_info/tasks/main.yml jinja[spacing] +tests/integration/targets/firewalld_info/tasks/main.yml key-order[task] +tests/integration/targets/firewalld_info/tasks/main.yml name[casing] +tests/integration/targets/firewalld_info/tasks/main.yml name[missing] +tests/integration/targets/firewalld_info/tasks/main.yml no-changed-when +tests/integration/targets/firewalld_info/tasks/main.yml yaml[indentation] +tests/integration/targets/firewalld_info/tasks/run_tests_in_started.yml fqcn[action-core] +tests/integration/targets/firewalld_info/tasks/run_tests_in_started.yml yaml[truthy] +tests/integration/targets/firewalld_info/tasks/run_tests_in_stopped.yml fqcn[action-core] +tests/integration/targets/firewalld_info/tasks/run_tests_in_stopped.yml yaml[truthy] +tests/integration/targets/mount/tasks/main.yml command-instead-of-module +tests/integration/targets/mount/tasks/main.yml command-instead-of-shell +tests/integration/targets/mount/tasks/main.yml fqcn[action-core] +tests/integration/targets/mount/tasks/main.yml fqcn[action] +tests/integration/targets/mount/tasks/main.yml key-order[task] +tests/integration/targets/mount/tasks/main.yml name[casing] +tests/integration/targets/mount/tasks/main.yml no-changed-when +tests/integration/targets/mount/tasks/main.yml risky-file-permissions +tests/integration/targets/mount/tasks/main.yml risky-shell-pipe +tests/integration/targets/mount/tasks/main.yml var-naming[pattern] +tests/integration/targets/mount/tasks/main.yml yaml[indentation] +tests/integration/targets/mount/tasks/main.yml yaml[truthy] +tests/integration/targets/patch/tasks/main.yml fqcn[action-core] +tests/integration/targets/patch/tasks/main.yml fqcn[action] +tests/integration/targets/patch/tasks/main.yml name[casing] +tests/integration/targets/patch/tasks/main.yml risky-file-permissions +tests/integration/targets/patch/tasks/main.yml yaml[indentation] +tests/integration/targets/patch/tasks/main.yml yaml[truthy] +tests/integration/targets/seboolean/tasks/main.yml fqcn[action-core] +tests/integration/targets/seboolean/tasks/main.yml literal-compare +tests/integration/targets/seboolean/tasks/main.yml name[missing] +tests/integration/targets/seboolean/tasks/seboolean.yml command-instead-of-shell +tests/integration/targets/seboolean/tasks/seboolean.yml fqcn[action-core] +tests/integration/targets/seboolean/tasks/seboolean.yml fqcn[action] +tests/integration/targets/seboolean/tasks/seboolean.yml name[casing] +tests/integration/targets/seboolean/tasks/seboolean.yml no-changed-when +tests/integration/targets/seboolean/tasks/seboolean.yml risky-shell-pipe +tests/integration/targets/seboolean/tasks/seboolean.yml yaml[truthy] +tests/integration/targets/selinux/tasks/main.yml fqcn[action-core] +tests/integration/targets/selinux/tasks/main.yml literal-compare +tests/integration/targets/selinux/tasks/main.yml name[missing] +tests/integration/targets/selinux/tasks/selinux.yml fqcn[action-core] +tests/integration/targets/selinux/tasks/selinux.yml fqcn[action] +tests/integration/targets/selinux/tasks/selinux.yml name[missing] +tests/integration/targets/selinux/tasks/selinux.yml no-changed-when +tests/integration/targets/selinux/tasks/selinux.yml risky-file-permissions +tests/integration/targets/selinux/tasks/selinux.yml yaml[truthy] +tests/integration/targets/selinux/tasks/selogin.yml args[module] +tests/integration/targets/selinux/tasks/selogin.yml fqcn[action-core] +tests/integration/targets/selinux/tasks/selogin.yml name[casing] +tests/integration/targets/selinux/tasks/selogin.yml yaml[indentation] +tests/integration/targets/setup_pkg_mgr/tasks/main.yml fqcn[action-core] +tests/integration/targets/setup_pkg_mgr/tasks/main.yml name[missing] +tests/integration/targets/setup_pkg_mgr/tasks/main.yml yaml[truthy] +tests/integration/targets/synchronize/tasks/main.yml fqcn[action-core] +tests/integration/targets/synchronize/tasks/main.yml fqcn[action] +tests/integration/targets/synchronize/tasks/main.yml jinja[spacing] +tests/integration/targets/synchronize/tasks/main.yml name[casing] +tests/integration/targets/synchronize/tasks/main.yml name[missing] +tests/integration/targets/synchronize/tasks/main.yml no-free-form +tests/integration/targets/synchronize/tasks/main.yml risky-file-permissions +tests/integration/targets/synchronize/tasks/main.yml yaml[indentation] +tests/integration/targets/sysctl/tasks/main.yml command-instead-of-shell +tests/integration/targets/sysctl/tasks/main.yml fqcn[action-core] +tests/integration/targets/sysctl/tasks/main.yml fqcn[action] +tests/integration/targets/sysctl/tasks/main.yml name[casing] +tests/integration/targets/sysctl/tasks/main.yml name[missing] +tests/integration/targets/sysctl/tasks/main.yml no-changed-when +tests/integration/targets/sysctl/tasks/main.yml risky-file-permissions +tests/integration/targets/sysctl/tasks/main.yml risky-shell-pipe +tests/integration/targets/sysctl/tasks/main.yml yaml[indentation] +tests/integration/targets/sysctl/tasks/main.yml yaml[truthy] +tests/sanity/ignore-2.10.txt sanity[cannot-ignore] +tests/sanity/ignore-2.11.txt sanity[cannot-ignore] +tests/sanity/ignore-2.12.txt sanity[cannot-ignore] +tests/sanity/ignore-2.13.txt sanity[cannot-ignore] +tests/sanity/ignore-2.14.txt sanity[cannot-ignore] +tests/sanity/ignore-2.15.txt sanity[cannot-ignore] +tests/sanity/ignore-2.16.txt sanity[cannot-ignore] +tests/sanity/ignore-2.9.txt sanity[cannot-ignore] +tests/unit/plugins/action/fixtures/__init__.py fqcn[deep] +tests/unit/plugins/action/fixtures/synchronize/__init__.py fqcn[deep] +tests/unit/plugins/action/fixtures/synchronize/basic_become/meta.yaml yaml[comments] +tests/unit/plugins/action/fixtures/synchronize/basic_become/meta.yaml yaml[truthy] +tests/unit/plugins/action/fixtures/synchronize/basic_become_cli/meta.yaml yaml[comments] +tests/unit/plugins/action/fixtures/synchronize/basic_become_cli/meta.yaml yaml[truthy] +tests/unit/plugins/action/fixtures/synchronize/basic_vagrant_become_cli/meta.yaml yaml[comments] +tests/unit/plugins/action/fixtures/synchronize/basic_vagrant_become_cli/meta.yaml yaml[truthy] +tests/unit/plugins/action/fixtures/synchronize/basic_with_private_key/meta.yaml yaml[indentation] +tests/unit/plugins/action/fixtures/synchronize/delegate_remote/meta.yaml yaml[trailing-spaces] +tests/unit/plugins/action/fixtures/synchronize/delegate_remote_play_context_private_key/meta.yaml yaml[trailing-spaces] +tests/unit/plugins/action/fixtures/synchronize/delegate_remote_su/meta.yaml yaml[comments] +tests/unit/plugins/action/fixtures/synchronize/delegate_remote_su/meta.yaml yaml[trailing-spaces] +tests/unit/plugins/action/fixtures/synchronize/delegate_remote_su/meta.yaml yaml[truthy] +tests/unit/plugins/action/fixtures/synchronize/delegate_remote_with_private_key/meta.yaml yaml[trailing-spaces] +tests/unit/requirements.yml yaml[indentation] diff --git a/.github/workflows/ansible-lint.yml b/.github/workflows/ansible-lint.yml new file mode 100644 index 0000000..98df8dd --- /dev/null +++ b/.github/workflows/ansible-lint.yml @@ -0,0 +1,12 @@ +# .github/workflows/ansible-lint.yml +name: ansible-lint +"on": + pull_request: + branches: ["main", "stable", "release/v*"] +jobs: + build: + name: Ansible Lint # Naming the build is important to use it as a status check + runs-on: ubuntu-latest + steps: + - name: Run ansible-lint + uses: ansible/ansible-lint@main