diff options
author | V3n3RiX <venerix@koprulu.sector> | 2022-10-13 13:42:21 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2022-10-13 13:42:21 +0100 |
commit | 22b51dcc430fb550fd692463a56cdcd5b18efd61 (patch) | |
tree | 1155e9ace7a82aac7ede90d7d5c2e79b0ec83918 /app-admin/ansible-lint | |
parent | 4b91667ebe695e6fdfbef3962d099f17484b8806 (diff) |
gentoo auto-resync : 13:10:2022 - 13:42:21
Diffstat (limited to 'app-admin/ansible-lint')
-rw-r--r-- | app-admin/ansible-lint/Manifest | 3 | ||||
-rw-r--r-- | app-admin/ansible-lint/ansible-lint-6.8.1.ebuild | 80 | ||||
-rw-r--r-- | app-admin/ansible-lint/files/ansible-lint-6.8.1_test-module-check.patch | 43 |
3 files changed, 126 insertions, 0 deletions
diff --git a/app-admin/ansible-lint/Manifest b/app-admin/ansible-lint/Manifest index 51226990ec93..c35771829264 100644 --- a/app-admin/ansible-lint/Manifest +++ b/app-admin/ansible-lint/Manifest @@ -1,7 +1,10 @@ AUX ansible-lint-6.5.2_test-module-check.patch 1090 BLAKE2B 1fa06ac57a978c75744224f20e5dad1917a96c7716273daff72b025bd8696cb8ed960c1c7ef464278da0f8b2e99146d99e0194fdba3fdde8fff62b6bd86ff2f3 SHA512 8f6cc1a3b9522a1584fd7ae5b1f2d7b1d1295f4cd0fa286d3d917bdada355f06b5eb46cf3f7fb5f6e7410c489e1de56ac4b2f10553734a2e592bcc2594b60336 AUX ansible-lint-6.6.1_test-module-check.patch 1169 BLAKE2B e1dc222e82063ed1ade954d3557106d06a9bcba6642d102441b2a07e14a841f80709e0b50ce60e4e60dfda5ac31f1c5a2bf352b86d0cfbc14911c17051fc1ecd SHA512 227d225d2c444c1c6fae8529e44ba63692e94f019c2264c8b1b28af76f276214baa44390840ee326fec3bd5f644aa166c77ad0fdd1a7ed00005e12b5d36e08e8 +AUX ansible-lint-6.8.1_test-module-check.patch 1576 BLAKE2B 4a5959f8528e7a9679a1fee76573a0e1bab602900efcd8c785473b9fa048cb0b771e58e3286b2353b800db42f78e05b2ee38b9ddf9b3b1dfb8af670a7770a754 SHA512 c8616dfdaec597ac914cd21598cb2e77af4422bae4ffb3d019715f9d825a13c4d7f2e5ec173b1f8bed025ac69b264cede8dd9362326390998dfc2d54ae287f24 DIST ansible-lint-6.5.2.gh.tar.gz 248425 BLAKE2B 02fe3f0cb410831ee7913c5f5ae434678ff183f9c60f0355988d69b516324513fd417439f9ceee4a38192c1e593d7bc00c8fd1aafdff6ba904cdb4ba56257657 SHA512 36a8d7b746bbb0c0f4d85a63180432b9165b1e59ff9da07f6b9477aa02d8998c5c682a317a04c4971a08f0691a10f420d9fd0e7d396d7d1b7f49979c7faf41f5 DIST ansible-lint-6.7.0.gh.tar.gz 275573 BLAKE2B 56788efbd44f6c2d8f1dd946d26f4c784c5c9e077355823d143a7b95196a3b5ce672a987639da6f051832320585fe7106d92c293a0707c9886142eebdaa812f5 SHA512 39d5292c5d262a6ee6fe60b41d531d362c95b466fe28524d314c0f2554e50906db050df93c7dc6374b99e6ef283754844e08484d24570bbbaf637d08e0af4ae2 +DIST ansible-lint-6.8.1.gh.tar.gz 287839 BLAKE2B 21421d7254a63b1460ce3f36529967a988c2835761f7ff1973b62c3210fffabc0eb95ede09fc5e582586782f7e258bd0b7534cf786671bc628631bf8d815644c SHA512 cd368d568f33a9711299b8a563f99f3d5eb6bed8334cb63e60fa43239716013a7d47e42e059c521a687d2e7cfc4c6d60621f1123050428f9ede0865c60d3ace0 EBUILD ansible-lint-6.5.2.ebuild 2749 BLAKE2B eb63cfb774f451e410ad1c5ae5fa3be86f5d63a59fc7524262816150bfadd7378aa901a65d91b63cfc1f20f87acc9c1b537cb8bcbf4c7568541a4034d400c192 SHA512 2d33e1edb4d6c7bf69724689fb3787edcfe4d117a420dda3bdb187e91df3f0d32e522854b59f4ce3a5ef632b7d711ae0e13d8f1557d54c400455728536954364 EBUILD ansible-lint-6.7.0.ebuild 2749 BLAKE2B 1376aa9a508034f257287c6395eb956290293ca3e0959ee36c3be6ff02568e90136dc6ffedcd2e645e3cbec7c9d343f05cfe3ef74edcbc84cd352287473c5882 SHA512 ad8d34d1afa854ec2cef5f00665babefbc8a3d92a2dbbb022f9b1575c2fb35112731e840ef6827d047b414d83cd091c4f20171510669f50655735333d8ab2dc9 +EBUILD ansible-lint-6.8.1.ebuild 2917 BLAKE2B 09272587c91cc17ffb56a53105ddc695ace1dff261dc53341172f965b475282c4b091f1926c8aeea9c27dd8297b70596ba6c29691e06175e739d033a3ff02dc1 SHA512 2d2823d6c73ae8115fd857c013acafd1de5acf68ba5b1c59068bf7c6475191bbf3e1e0dd445a1cd0208fba025b06fc1172ab7503f243c97fea896070c271ae8a MISC metadata.xml 561 BLAKE2B 0f55fc4da270c495c445e5afff0a8f7aaedd01abf3640f848cd9dc21e01fa7324c78846ee4bf917e4869b6c377fef61254a2288fa3d572c1bb77279571fb6631 SHA512 bd6bf6b916a0b736a0bfdd633f6569ce3124458169d77ef1cd86d6dda4099774088871560ce0106e11f139a2b48f13445e7a844e03a8669160c7e3fa44be5f36 diff --git a/app-admin/ansible-lint/ansible-lint-6.8.1.ebuild b/app-admin/ansible-lint/ansible-lint-6.8.1.ebuild new file mode 100644 index 000000000000..1632b2104f54 --- /dev/null +++ b/app-admin/ansible-lint/ansible-lint-6.8.1.ebuild @@ -0,0 +1,80 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{8..10} ) +DISTUTILS_USE_PEP517=setuptools + +inherit distutils-r1 + +DESCRIPTION="Checks ansible playbooks for practices and behaviour that can be improved" +HOMEPAGE="https://github.com/ansible/ansible-lint" +# PyPI tarballs do not contain all the data files needed by the tests +SRC_URI="https://github.com/ansible/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~riscv" + +RDEPEND=" + >=app-admin/ansible-core-2.12.0[${PYTHON_USEDEP}] + >=dev-python/ansible-compat-2.2.0[${PYTHON_USEDEP}] + dev-python/black[${PYTHON_USEDEP}] + >=dev-python/enrich-1.2.6[${PYTHON_USEDEP}] + dev-python/filelock[${PYTHON_USEDEP}] + >=dev-python/jsonschema-4.9.0[${PYTHON_USEDEP}] + dev-python/packaging[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + >=dev-python/rich-9.5.1[${PYTHON_USEDEP}] + >=dev-python/ruamel-yaml-0.15.37[${PYTHON_USEDEP}] + >=dev-python/wcmatch-7.0[${PYTHON_USEDEP}] + >=dev-util/yamllint-1.25.0[${PYTHON_USEDEP}]" +BDEPEND=" + >=dev-python/setuptools_scm-3.5.0[${PYTHON_USEDEP}] + >=dev-python/setuptools_scm_git_archive-1.0[${PYTHON_USEDEP}] + test? ( + >=dev-python/flaky-3.7.0[${PYTHON_USEDEP}] + >=dev-python/pytest-plus-0.2[${PYTHON_USEDEP}] + >=dev-python/pytest-xdist-2.5.0[${PYTHON_USEDEP}] + )" + +PATCHES=( + "${FILESDIR}"/${PN}-6.8.1_test-module-check.patch +) + +# Skip problematic tests: +# - test_rules_id_format has been giving an internal error since 6.5.4 or so (TODO: follow this up with upstream) +# - test_call_from_outside_venv doesn't play nicely with the sandbox +# - all the others require Internet access, mostly in order to access Ansible Galaxy +EPYTEST_DESELECT=( + test/test_cli_role_paths.py::test_run_playbook_github + test/test_eco.py + test/test_examples.py::test_custom_kinds + test/test_import_playbook.py::test_task_hook_import_playbook + test/test_list_rules.py::test_list_rules_includes_opt_in_rules + test/test_list_rules.py::test_list_rules_with_format_option + test/test_list_rules.py::test_list_tags_includes_opt_in_rules + test/test_main.py::test_call_from_outside_venv + test/test_prerun.py::test_install_collection + test/test_prerun.py::test_prerun_reqs_v1 + test/test_prerun.py::test_prerun_reqs_v2 + test/test_prerun.py::test_require_collection_wrong_version + test/test_profiles.py::test_profile_listing + test/test_rules_collection.py::test_rich_rule_listing + test/test_rules_collection.py::test_rules_id_format + test/test_skip_inside_yaml.py::test_role_meta + test/test_utils.py::test_cli_auto_detect + test/test_utils.py::test_template_lookup + test/test_verbosity.py::test_default_verbosity +) + +distutils_enable_tests pytest + +python_test() { + # Since 6.2.1, without this the test suite still gets confused by the presence of ansible-lint modules + # in both ${ED} and ${S}. + cd "${S}" || die + + epytest test +} diff --git a/app-admin/ansible-lint/files/ansible-lint-6.8.1_test-module-check.patch b/app-admin/ansible-lint/files/ansible-lint-6.8.1_test-module-check.patch new file mode 100644 index 000000000000..8c2ca1a96503 --- /dev/null +++ b/app-admin/ansible-lint/files/ansible-lint-6.8.1_test-module-check.patch @@ -0,0 +1,43 @@ +--- a/conftest.py ++++ b/conftest.py +@@ -8,40 +8,6 @@ + import pytest + from ansible.module_utils.common.yaml import HAS_LIBYAML + +-# checking if user is running pytest without installing test dependencies: +-missing = [] +-for module in ["ansible", "black", "flake8", "flaky", "mypy", "pylint"]: +- if not importlib.util.find_spec(module): +- missing.append(module) +-if missing: +- print( +- f"FATAL: Missing modules: {', '.join(missing)} -- probably you missed installing test requirements with: pip install -e '.[test]'", +- file=sys.stderr, +- ) +- sys.exit(1) +-# we need to be sure that we have the requirements installed as some tests +-# might depend on these. +-try: +- subprocess.check_output( +- ["ansible-galaxy", "collection", "install", "-r", "requirements.yml"], +- stderr=subprocess.PIPE, +- text=True, +- ) +-except subprocess.CalledProcessError as exc: +- print(f"{exc}\n{exc.stderr}\n{exc.stdout}", file=sys.stderr) +- sys.exit(1) +- +-if not HAS_LIBYAML and sys.version_info >= (3, 9, 0): +- # While presence of libyaml is not required for runtime, we keep this error +- # fatal here in order to be sure that we spot libyaml errors during testing. +- # +- # For 3.8.x we do not do this check, as libyaml does not have an arm64 build for py38. +- print( +- "FATAL: For testing, we require pyyaml to be installed with its native extension, missing it would make testing 3x slower and risk missing essential bugs.", +- file=sys.stderr, +- ) +- sys.exit(1) +- + + os.environ["NO_COLOR"] = "1" + |