summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-admin')
-rw-r--r--app-admin/ansible-molecule/Manifest1
-rw-r--r--app-admin/ansible-molecule/ansible-molecule-3.5.2.ebuild87
2 files changed, 88 insertions, 0 deletions
diff --git a/app-admin/ansible-molecule/Manifest b/app-admin/ansible-molecule/Manifest
index e44313be1e7..bf31ff02b74 100644
--- a/app-admin/ansible-molecule/Manifest
+++ b/app-admin/ansible-molecule/Manifest
@@ -1 +1,2 @@
DIST molecule-3.3.4.tar.gz 280980 BLAKE2B af704a8a8d709323441e6e6057bf7a62b0d89aa582eff4d9139b521ed0729c36836f324cd1741f441fae4ed4b9c148de76c2502a01ce5a7b142bfe32bc7fd391 SHA512 8ccc6e121d028bc9d477504a3e5067486d4a3e37f2c27a9686b068c9dac2185db7f965960affb4f9e958bb68d3c3a72786459ea3d221d781377d899b0d75d5a5
+DIST molecule-3.5.2.tar.gz 290964 BLAKE2B b6c6bb8ecdb4230d23161e25fa003c8979f48fc1705bfba7d14204fbaa3e9c235a71db0c4ccbab5c4328ddb8a0725d3c2ba7cb4b624afda21c6453c8be824f3e SHA512 04a7d1f7e7e098c0ada71d8dc9a3e3a94320033942d8ee03f2c51ec185405d2ee13fcb44000a4942ec66923f0426717ab7e2c3a785ddda7a23515096474dc3c3
diff --git a/app-admin/ansible-molecule/ansible-molecule-3.5.2.ebuild b/app-admin/ansible-molecule/ansible-molecule-3.5.2.ebuild
new file mode 100644
index 00000000000..f55cd367c9a
--- /dev/null
+++ b/app-admin/ansible-molecule/ansible-molecule-3.5.2.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# TODO: does support py3.10 upstream so add it here as soon as all the dependencies are ready.
+PYTHON_COMPAT=( python3_{8..9} )
+DISTUTILS_SINGLE_IMPL=1
+
+inherit distutils-r1 optfeature
+
+MY_PN="${PN#ansible-}"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="A toolkit designed to aid in the development and testing of Ansible roles"
+HOMEPAGE="https://pypi.org/project/molecule/ https://github.com/ansible-community/molecule/"
+SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="selinux"
+
+RDEPEND="$(python_gen_cond_dep '
+ >=dev-python/ansible-compat-0.5.0[${PYTHON_USEDEP}]
+ <dev-python/cerberus-1.3.3[${PYTHON_USEDEP}]
+ >=dev-python/click-8.0[${PYTHON_USEDEP}]
+ >=dev-python/click-help-colors-0.9[${PYTHON_USEDEP}]
+ >=dev-python/enrich-1.2.5[${PYTHON_USEDEP}]
+ >=dev-python/jinja-2.11.3[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ <dev-python/paramiko-3[${PYTHON_USEDEP}]
+ <dev-python/pluggy-2.0[${PYTHON_USEDEP}]
+ <dev-python/pyyaml-6[${PYTHON_USEDEP}]
+ >=dev-python/rich-9.5.1[${PYTHON_USEDEP}]
+ >=dev-python/subprocess-tee-0.3.5[${PYTHON_USEDEP}]
+ >=dev-util/cookiecutter-1.7.3[${PYTHON_USEDEP}]
+ selinux? ( sys-libs/libselinux[python,${PYTHON_USEDEP}] )
+')"
+BDEPEND="$(python_gen_cond_dep '
+ >=dev-python/setuptools_scm-3.5.0[${PYTHON_USEDEP}]
+ >=dev-python/setuptools_scm_git_archive-1.1[${PYTHON_USEDEP}]
+ doc? (
+ >=dev-python/simplejson-3.17.2[${PYTHON_USEDEP}]
+ )
+ test? (
+ >=dev-python/ansi2html-1.6.0[${PYTHON_USEDEP}]
+ <dev-python/pexpect-5[${PYTHON_USEDEP}]
+ >=dev-python/pytest-html-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pytest-mock-3.3.1[${PYTHON_USEDEP}]
+ >=dev-python/pytest-plus-0.2[${PYTHON_USEDEP}]
+ >=dev-python/pytest-testinfra-6.1.0[${PYTHON_USEDEP}]
+ >=dev-python/pytest-xdist-2.1.0[${PYTHON_USEDEP}]
+ )
+')"
+
+S="${WORKDIR}"/${MY_P}
+
+distutils_enable_sphinx docs '>=dev-python/sphinx-notfound-page-0.7.1' '<dev-python/sphinx_ansible_theme-0.9.0'
+distutils_enable_tests --install pytest
+
+src_prepare() {
+ default
+
+ if ! use selinux; then
+ sed -i "/^\s\+selinux/d" setup.cfg || die "Failed to remove dependency on SELinux"
+ fi
+
+ # Several issues with tests from this file:
+ # - quite a few of these use the network;
+ # - test_command_dependency[shell] only works if Molecule has previously been installed;
+ # - tests involving creation of a new scenario fail on ansible-lint errors, even though
+ # a config file is deployed which should skip expected issues.
+ rm -f src/molecule/test/functional/test_command.py
+ # Uses unpackaged yamllint
+ rm -f src/molecule/test/unit/cookiecutter/test_molecule.py
+}
+
+python_test() {
+ distutils_install_for_testing --via-venv
+ distutils-r1_python_test
+}
+
+pkg_postinst() {
+ optfeature_header "Some optional packages commonly used in Molecule scenarios:"
+ optfeature "checking playbooks for practices and behaviour that can be improved" app-admin/ansible-lint
+}