commit:     03f1f332d971ab14ecc8f80ed7faf1c2f79b5581
Author:     Patrick McLean <chutzpah <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 29 19:11:34 2016 +0000
Commit:     Patrick McLean <chutzpah <AT> gentoo <DOT> org>
CommitDate: Fri Jul 29 19:11:58 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=03f1f332

app-admin/salt: Version bump to 2016.3.2

Package-Manager: portage-2.3.0

 app-admin/salt/Manifest                            |   1 +
 .../salt/files/salt-2016.3.2-broken-tests.patch    | 109 ++++++++++++++++
 app-admin/salt/salt-2016.3.2.ebuild                | 142 +++++++++++++++++++++
 3 files changed, 252 insertions(+)

diff --git a/app-admin/salt/Manifest b/app-admin/salt/Manifest
index 1d0a0a5..ac7250a 100644
--- a/app-admin/salt/Manifest
+++ b/app-admin/salt/Manifest
@@ -3,3 +3,4 @@ DIST salt-2015.8.10.tar.gz 6972776 SHA256 
4a81273ab4b01e0f1d29b28ab99a16eb94e5c4
 DIST salt-2015.8.11.tar.gz 7083841 SHA256 
7b38ab7433e67785ff231cfd604bc36652f4088f8b93e64d627e74242f4099d7 SHA512 
0af029b30525a5be4ffa64ea33b4368b59a9ad64fe4f6cba3af1cf03b53e1c1e0e0fe50371c7e4762a0c3bcbefa7855b6f0b79702f3b146001a2b5484f1731f9
 WHIRLPOOL 
23af490fa47b84843cb36367aa76698f989e767c044477d0cfad22222f24a9b11c76de0617f4c4859b41094e2bedc4f6b2be331055c95bcd8327ca36e9878d6c
 DIST salt-2015.8.8.tar.gz 6982904 SHA256 
b2ecce7bf562cfcd6586d66ade278f268bb89023f0fa0accaa55f90b8a668ef5 SHA512 
add65951694bc9e3aaa6db69bf9ac7ed32a5c42822ae34281ca3ea1e7f393235cd6baa1905362d177c62505a514e1c4599751e1a8a913cc334f9ebe1d4ab7ed3
 WHIRLPOOL 
9d81b6153019ff0862c6ee0e3fa949810e8066798aabcc94f2b87893f51906e0e19e37aa26023ea578eb10ebb9816d30d12104fdc5018c7ce91790bd617b2bba
 DIST salt-2016.3.1.tar.gz 7932479 SHA256 
e6bdba4693116430c2af57497eb63399e3a139ac0a7016fa0870b49fbe987f75 SHA512 
74122020a83df79171b9aa3bc311d1b16930140ec6b063c888d41e10fb8e696f69188b62cf925045b40d8b8fe713759de08978b08bc3b8e1f12722de3a8ddb7b
 WHIRLPOOL 
f76afb4d9c6678edf48b608f6dbd27201656fd371b0df78a8a8db306a2cbf5b08fa2fd916e9fb5409b67cd05ab007a3684d91c1e0158416b12f014001de1506a
+DIST salt-2016.3.2.tar.gz 8014793 SHA256 
6a84b724d02b0dba438dea57650724064675d82620e66749bd2fe8f21da71be0 SHA512 
608e2a43bc8c55eeb8c9e0f9207306e591151940ad1ffb869ada12963c0790f37653936e539c0b70439c13180909de2c763db6c30e7f9e2087068985d1b3ff91
 WHIRLPOOL 
5e6f6dc9980ab6cd6e8c897d140241ce9e6dec8afd08274749a20260c6b871d6e52cd674ed8e838a4aa285bf45c49586d77bc2156f94ee26f4f776d9025040eb

diff --git a/app-admin/salt/files/salt-2016.3.2-broken-tests.patch 
b/app-admin/salt/files/salt-2016.3.2-broken-tests.patch
new file mode 100644
index 0000000..3f10611
--- /dev/null
+++ b/app-admin/salt/files/salt-2016.3.2-broken-tests.patch
@@ -0,0 +1,109 @@
+diff --git a/tests/unit/modules/linux_sysctl_test.py 
b/tests/unit/modules/linux_sysctl_test.py
+index 89bea83..49851cb 100644
+--- a/tests/unit/modules/linux_sysctl_test.py
++++ b/tests/unit/modules/linux_sysctl_test.py
+@@ -85,18 +85,6 @@ class LinuxSysctlTestCase(TestCase):
+                 'net.ipv4.ip_forward', 1), ret)
+ 
+     @patch('os.path.isfile', MagicMock(return_value=False))
+-    def test_persist_no_conf_failure(self):
+-        '''
+-        Tests adding of config file failure
+-        '''
+-        with patch('salt.utils.fopen', mock_open()) as m_open:
+-            helper_open = m_open()
+-            helper_open.write.assertRaises(CommandExecutionError,
+-                                           linux_sysctl.persist,
+-                                           'net.ipv4.ip_forward',
+-                                           1, config=None)
+-
+-    @patch('os.path.isfile', MagicMock(return_value=False))
+     @patch('os.path.exists', MagicMock(return_value=True))
+     def test_persist_no_conf_success(self):
+         '''
+diff --git a/tests/unit/modules/mac_sysctl_test.py 
b/tests/unit/modules/mac_sysctl_test.py
+index e90ec64..b2ea691 100644
+--- a/tests/unit/modules/mac_sysctl_test.py
++++ b/tests/unit/modules/mac_sysctl_test.py
+@@ -67,18 +67,6 @@ class DarwinSysctlTestCase(TestCase):
+                 'net.inet.icmp.icmplim', 50), ret)
+ 
+     @patch('os.path.isfile', MagicMock(return_value=False))
+-    def test_persist_no_conf_failure(self):
+-        '''
+-        Tests adding of config file failure
+-        '''
+-        with patch('salt.utils.fopen', mock_open()) as m_open:
+-            helper_open = m_open()
+-            helper_open.write.assertRaises(CommandExecutionError,
+-                                           mac_sysctl.persist,
+-                                           'net.inet.icmp.icmplim',
+-                                           50, config=None)
+-
+-    @patch('os.path.isfile', MagicMock(return_value=False))
+     def test_persist_no_conf_success(self):
+         '''
+         Tests successful add of config file when previously not one
+diff --git a/tests/unit/modules/mount_test.py 
b/tests/unit/modules/mount_test.py
+index 290c368..16918d8 100644
+--- a/tests/unit/modules/mount_test.py
++++ b/tests/unit/modules/mount_test.py
+@@ -137,15 +137,6 @@ class MountTestCase(TestCase):
+                 with patch('salt.utils.fopen', mock_open()):
+                     self.assertTrue(mount.rm_fstab('name', 'device'))
+ 
+-        mock_fstab = MagicMock(return_value={'name': 'name'})
+-        with patch.dict(mount.__grains__, {'kernel': ''}):
+-            with patch.object(mount, 'fstab', mock_fstab):
+-                with patch('salt.utils.fopen', mock_open()) as m_open:
+-                    helper_open = m_open()
+-                    helper_open.write.assertRaises(CommandExecutionError,
+-                                                   mount.rm_fstab,
+-                                                   config=None)
+-
+     def test_set_fstab(self):
+         '''
+         Tests to verify that this mount is represented in the fstab,
+@@ -178,14 +169,6 @@ class MountTestCase(TestCase):
+         with patch.object(mount, 'automaster', mock):
+             self.assertTrue(mount.rm_automaster('name', 'device'))
+ 
+-        mock = MagicMock(return_value={'name': 'name'})
+-        with patch.object(mount, 'fstab', mock):
+-            with patch('salt.utils.fopen', mock_open()) as m_open:
+-                helper_open = m_open()
+-                helper_open.write.assertRaises(CommandExecutionError,
+-                                               mount.rm_automaster,
+-                                               'name', 'device')
+-
+     def test_set_automaster(self):
+         '''
+         Verify that this mount is represented in the auto_salt, change the 
mount
+diff --git a/tests/unit/modules/puppet_test.py 
b/tests/unit/modules/puppet_test.py
+index 02bc2e1..1fd915b 100644
+--- a/tests/unit/modules/puppet_test.py
++++ b/tests/unit/modules/puppet_test.py
+@@ -85,11 +85,6 @@ class PuppetTestCase(TestCase):
+                 with patch('salt.utils.fopen', mock_open()):
+                     self.assertTrue(puppet.disable())
+ 
+-                with patch('salt.utils.fopen', mock_open()) as m_open:
+-                    helper_open = m_open()
+-                    helper_open.write.assertRaises(CommandExecutionError,
+-                                                    puppet.disable)
+-
+     def test_status(self):
+         '''
+             Test to display puppet agent status
+@@ -144,11 +139,6 @@ class PuppetTestCase(TestCase):
+                         mock_open(read_data="resources: 1")):
+                 self.assertDictEqual(puppet.summary(), {'resources': 1})
+ 
+-            with patch('salt.utils.fopen', mock_open()) as m_open:
+-                helper_open = m_open()
+-                helper_open.write.assertRaises(CommandExecutionError,
+-                                                puppet.summary)
+-
+     def test_plugin_sync(self):
+         '''
+             Test to runs a plugin synch between the puppet master and agent

diff --git a/app-admin/salt/salt-2016.3.2.ebuild 
b/app-admin/salt/salt-2016.3.2.ebuild
new file mode 100644
index 0000000..3528998
--- /dev/null
+++ b/app-admin/salt/salt-2016.3.2.ebuild
@@ -0,0 +1,142 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+PYTHON_COMPAT=(python2_7)
+
+inherit eutils systemd distutils-r1
+
+DESCRIPTION="Salt is a remote execution and configuration manager"
+HOMEPAGE="http://saltstack.org/";
+
+if [[ ${PV} == 9999* ]]; then
+       inherit git-r3
+       EGIT_REPO_URI="git://github.com/${PN}stack/${PN}.git"
+       EGIT_BRANCH="develop"
+       SRC_URI=""
+       KEYWORDS=""
+else
+       SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+       KEYWORDS="~x86 ~amd64"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="cherrypy ldap libcloud libvirt gnupg keyring mako mongodb mysql neutron 
nova"
+IUSE+=" openssl portage profile redis selinux test timelib raet +zeromq 
vim-syntax"
+
+RDEPEND="sys-apps/pciutils
+       dev-python/jinja[${PYTHON_USEDEP}]
+       >=dev-python/msgpack-0.3[${PYTHON_USEDEP}]
+       dev-python/pyyaml[${PYTHON_USEDEP}]
+       dev-python/markupsafe[${PYTHON_USEDEP}]
+       >=dev-python/requests-1.0.0[${PYTHON_USEDEP}]
+       dev-python/setuptools[${PYTHON_USEDEP}]
+       >=www-servers/tornado-4.2.1[${PYTHON_USEDEP}]
+       virtual/python-futures[${PYTHON_USEDEP}]
+       libcloud? ( >=dev-python/libcloud-0.14.0[${PYTHON_USEDEP}] )
+       mako? ( dev-python/mako[${PYTHON_USEDEP}] )
+       ldap? ( dev-python/python-ldap[${PYTHON_USEDEP}] )
+       libvirt? ( dev-python/libvirt-python[${PYTHON_USEDEP}] )
+       openssl? (
+               dev-libs/openssl:*[-bindist]
+               dev-python/pyopenssl[${PYTHON_USEDEP}]
+       )
+       raet? (
+               >=dev-python/libnacl-1.0.0[${PYTHON_USEDEP}]
+               >=dev-python/ioflo-1.1.7[${PYTHON_USEDEP}]
+               >=dev-python/raet-0.6.0[${PYTHON_USEDEP}]
+       )
+       zeromq? (
+               >=dev-python/pyzmq-2.2.0[${PYTHON_USEDEP}]
+               >=dev-python/pycrypto-2.6.1[${PYTHON_USEDEP}]
+       )
+       cherrypy? ( >=dev-python/cherrypy-3.2.2[${PYTHON_USEDEP}] )
+       mongodb? ( dev-python/pymongo[${PYTHON_USEDEP}] )
+       portage? ( sys-apps/portage[${PYTHON_USEDEP}] )
+       keyring? ( dev-python/keyring[${PYTHON_USEDEP}] )
+       mysql? ( dev-python/mysql-python[${PYTHON_USEDEP}] )
+       redis? ( dev-python/redis-py[${PYTHON_USEDEP}] )
+       selinux? ( sec-policy/selinux-salt )
+       timelib? ( dev-python/timelib[${PYTHON_USEDEP}] )
+       nova? ( >=dev-python/python-novaclient-2.17.0[${PYTHON_USEDEP}] )
+       neutron? ( >=dev-python/python-neutronclient-2.3.6[${PYTHON_USEDEP}] )
+       gnupg? ( dev-python/python-gnupg[${PYTHON_USEDEP}] )
+       profile? ( dev-python/yappi[${PYTHON_USEDEP}] )
+       vim-syntax? ( app-vim/salt-vim )"
+DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
+       test? (
+               dev-python/psutil[${PYTHON_USEDEP}]
+               dev-python/pip[${PYTHON_USEDEP}]
+               dev-python/virtualenv[${PYTHON_USEDEP}]
+               dev-python/mock[${PYTHON_USEDEP}]
+               dev-python/timelib[${PYTHON_USEDEP}]
+               >=dev-python/boto-2.32.1[${PYTHON_USEDEP}]
+               !x86? ( dev-python/boto3[${PYTHON_USEDEP}] )
+               >=dev-python/moto-0.3.6[${PYTHON_USEDEP}]
+               >=dev-python/SaltTesting-2016.5.11[${PYTHON_USEDEP}]
+               >=dev-python/libcloud-0.14.0[${PYTHON_USEDEP}]
+               ${RDEPEND}
+       )"
+
+DOCS=(README.rst AUTHORS)
+
+REQUIRED_USE="|| ( raet zeromq )"
+RESTRICT="x86? ( test )"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-2015.8.2-tmpdir.patch"
+       "${FILESDIR}/${PN}-2016.3.1-dont-realpath-tmpdir.patch"
+       "${FILESDIR}/${PN}-2016.3.2-broken-tests.patch"
+)
+
+python_prepare() {
+       # this test fails because it trys to "pip install distribute"
+       rm tests/unit/{modules,states}/zcbuildout_test.py \
+               tests/unit/modules/{rh_ip,win_network,random_org}_test.py
+
+       # apparently libcloud does not know about this?
+       rm tests/unit/cloud/clouds/dimensiondata_test.py
+
+       # seriously? "ValueError: Missing (or not readable) key file: 
'/home/dany/PRIVKEY.pem'"
+       rm tests/unit/cloud/clouds/gce_test.py
+}
+
+python_install_all() {
+       local svc
+       USE_SETUPTOOLS=1 distutils-r1_python_install_all
+
+       for svc in minion master syndic api; do
+               newinitd "${FILESDIR}"/${svc}-initd-4 salt-${svc}
+               newconfd "${FILESDIR}"/${svc}-confd-1 salt-${svc}
+               systemd_dounit "${FILESDIR}"/salt-${svc}.service
+       done
+
+       insinto /etc/${PN}
+       doins -r conf/*
+}
+
+python_test() {
+       local tempdir
+       # testsuite likes lots of files
+       ulimit -n 3072
+
+       # ${T} is too long a path for the tests to work
+       tempdir="$(mktemp -dup /tmp salt-XXX)"
+       mkdir "${T}/$(basename "${tempdir}")"
+
+       (
+               cleanup() { rm -f "${tempdir}"; }
+               trap cleanup EXIT
+
+               addwrite "${tempdir}"
+               ln -s "$(realpath --relative-to=/tmp "${T}/$(basename 
"${tempdir}")")" "${tempdir}"
+
+               USE_SETUPTOOLS=1 SHELL="/bin/bash" \
+                       TMPDIR="${tempdir}" \
+                       ${EPYTHON} tests/runtests.py \
+                       --unit-tests --no-report --verbose
+
+       ) || die "testing failed"
+}

Reply via email to