*/*: Clean PYTHON_COMPAT of obsolete impls
[gentoo.git] / app-admin / ansible / ansible-2.8.7.ebuild
1 # Copyright 1999-2020 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
3
4 EAPI=7
5
6 PYTHON_COMPAT=( python2_7 python3_{6,7} )
7
8 inherit distutils-r1 eutils
9
10 DESCRIPTION="Model-driven deployment, config management, and command execution framework"
11 HOMEPAGE="https://ansible.com/"
12 SRC_URI="https://releases.ansible.com/${PN}/${P}.tar.gz"
13
14 LICENSE="GPL-3"
15 SLOT="0"
16 KEYWORDS="amd64 ~arm ~arm64 x86 ~x64-macos"
17 IUSE="doc test"
18 RESTRICT="test"
19
20 RDEPEND="
21         dev-python/paramiko[${PYTHON_USEDEP}]
22         dev-python/jinja[${PYTHON_USEDEP}]
23         dev-python/pyyaml[${PYTHON_USEDEP}]
24         dev-python/setuptools[${PYTHON_USEDEP}]
25         dev-python/cryptography[${PYTHON_USEDEP}]
26         dev-python/httplib2[${PYTHON_USEDEP}]
27         dev-python/six[${PYTHON_USEDEP}]
28         dev-python/netaddr[${PYTHON_USEDEP}]
29         dev-python/pexpect[${PYTHON_USEDEP}]
30         net-misc/sshpass
31         virtual/ssh
32 "
33 DEPEND="
34         dev-python/setuptools[${PYTHON_USEDEP}]
35         >=dev-python/packaging-16.6[${PYTHON_USEDEP}]
36         doc? (
37                 dev-python/sphinx[${PYTHON_USEDEP}]
38                 dev-python/sphinx-notfound-page[${PYTHON_USEDEP}]
39         )
40         test? (
41                 ${RDEPEND}
42                 dev-python/nose[${PYTHON_USEDEP}]
43                 >=dev-python/mock-1.0.1[${PYTHON_USEDEP}]
44                 dev-python/passlib[${PYTHON_USEDEP}]
45                 dev-python/coverage[${PYTHON_USEDEP}]
46                 dev-python/unittest2[${PYTHON_USEDEP}]
47                 dev-vcs/git
48         )"
49
50 python_compile_all() {
51         if use doc; then
52                 cd docs/docsite || die
53                 export CPUS=4
54                 emake -f Makefile.sphinx html
55         fi
56 }
57
58 python_prepare_all() {
59         rm -fv MANIFEST.in || die
60         distutils-r1_python_prepare_all
61 }
62
63 python_test() {
64         nosetests -d -w test/units -v --with-coverage --cover-package=ansible --cover-branches || die
65 }
66
67 python_install_all() {
68         use doc && local HTML_DOCS=( docs/docsite/_build/html/. )
69         distutils-r1_python_install_all
70
71         dodoc -r examples
72 }