summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Szuba <marecki@gentoo.org>2021-06-14 13:22:14 +0100
committerMarek Szuba <marecki@gentoo.org>2021-06-14 13:38:46 +0100
commit2ae540420bf2a539eafce511e3542ec86ae6a6e4 (patch)
tree698a2406d65ec69e3ac023b650f29efcab2f5d4c /app-admin
parentdev-python/sphinx_ansible_theme: initial import (diff)
downloadgentoo-2ae540420bf2a539eafce511e3542ec86ae6a6e4.tar.gz
gentoo-2ae540420bf2a539eafce511e3542ec86ae6a6e4.tar.bz2
gentoo-2ae540420bf2a539eafce511e3542ec86ae6a6e4.zip
app-admin/ansible-molecule: initial import
No python3_10 support due to incomplete dependency chain. Signed-off-by: Marek Szuba <marecki@gentoo.org>
Diffstat (limited to 'app-admin')
-rw-r--r--app-admin/ansible-molecule/Manifest1
-rw-r--r--app-admin/ansible-molecule/ansible-molecule-3.3.4.ebuild84
-rw-r--r--app-admin/ansible-molecule/metadata.xml13
3 files changed, 98 insertions, 0 deletions
diff --git a/app-admin/ansible-molecule/Manifest b/app-admin/ansible-molecule/Manifest
new file mode 100644
index 000000000000..e44313be1e7e
--- /dev/null
+++ b/app-admin/ansible-molecule/Manifest
@@ -0,0 +1 @@
+DIST molecule-3.3.4.tar.gz 280980 BLAKE2B af704a8a8d709323441e6e6057bf7a62b0d89aa582eff4d9139b521ed0729c36836f324cd1741f441fae4ed4b9c148de76c2502a01ce5a7b142bfe32bc7fd391 SHA512 8ccc6e121d028bc9d477504a3e5067486d4a3e37f2c27a9686b068c9dac2185db7f965960affb4f9e958bb68d3c3a72786459ea3d221d781377d899b0d75d5a5
diff --git a/app-admin/ansible-molecule/ansible-molecule-3.3.4.ebuild b/app-admin/ansible-molecule/ansible-molecule-3.3.4.ebuild
new file mode 100644
index 000000000000..5655e622e75f
--- /dev/null
+++ b/app-admin/ansible-molecule/ansible-molecule-3.3.4.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..9} )
+DISTUTILS_SINGLE_IMPL=1
+DISTUTILS_USE_SETUPTOOLS="rdepend"
+
+inherit distutils-r1
+
+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 '
+ >=app-admin/ansible-lint-5.0.12[${PYTHON_USEDEP}]
+ <dev-python/cerberus-1.3.3[${PYTHON_USEDEP}]
+ >=dev-python/click-8.0[${PYTHON_USEDEP}]
+ dev-python/click-help-colors[${PYTHON_USEDEP}]
+ dev-python/enrich[${PYTHON_USEDEP}]
+ dev-python/jinja[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ <dev-python/paramiko-3[${PYTHON_USEDEP}]
+ <dev-python/pluggy-1.0[${PYTHON_USEDEP}]
+ <dev-python/pyyaml-6[${PYTHON_USEDEP}]
+ dev-python/rich[${PYTHON_USEDEP}]
+ dev-python/subprocess-tee[${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[${PYTHON_USEDEP}]
+ dev-python/setuptools_scm_git_archive[${PYTHON_USEDEP}]
+ doc? (
+ dev-python/simplejson[${PYTHON_USEDEP}]
+ )
+ test? (
+ dev-python/ansi2html[${PYTHON_USEDEP}]
+ <dev-python/pexpect-5[${PYTHON_USEDEP}]
+ dev-python/pytest-helpers-namespace[${PYTHON_USEDEP}]
+ >=dev-python/pytest-html-3.0.0[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/pytest-plus[${PYTHON_USEDEP}]
+ dev-python/pytest-testinfra[${PYTHON_USEDEP}]
+ dev-python/pytest-verbose-parametrize[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ )
+')"
+
+S="${WORKDIR}"/${MY_P}
+
+distutils_enable_sphinx docs '>=dev-python/sphinx-notfound-page-0.7.1' 'dev-python/sphinx_ansible_theme'
+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
+}
diff --git a/app-admin/ansible-molecule/metadata.xml b/app-admin/ansible-molecule/metadata.xml
new file mode 100644
index 000000000000..4c6fab1b1f57
--- /dev/null
+++ b/app-admin/ansible-molecule/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>marecki@gentoo.org</email>
+ <name>Marek Szuba</name>
+ </maintainer>
+ <stabilize-allarches/>
+ <upstream>
+ <remote-id type="pypi">molecule</remote-id>
+ <remote-id type="github">ansible-community/molecule</remote-id>
+ </upstream>
+</pkgmetadata>