diff --git a/sdk_container/src/third_party/coreos-overlay/dev-python/google-api-python-client/Manifest b/sdk_container/src/third_party/coreos-overlay/dev-python/google-api-python-client/Manifest new file mode 100644 index 0000000000..ae56238afe --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/dev-python/google-api-python-client/Manifest @@ -0,0 +1 @@ +DIST google-api-python-client-1.1.tar.gz 71178 SHA256 bc88cae1c40446f22d58923fc5a8dbac77da29d6efbe4ae2276cc2f30f724617 SHA512 750c482e90f83d0b2d53f7d655db9a476686158b5e380cab7a5e92af1b521b26871dcda08a2ee946cd09035f65ca50ad8dcffa8f766d3671fceae009fbdb831e WHIRLPOOL 62d2ebb7f51f58c76b45f748fe79b031cda5f11fd6088d8ea947e7ab9b9b754688e004773f99169cc65fdd2789002faa486bed7717fc07dea0b25994cbede0da diff --git a/sdk_container/src/third_party/coreos-overlay/dev-python/google-api-python-client/google-api-python-client-1.1.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-python/google-api-python-client/google-api-python-client-1.1.ebuild new file mode 100644 index 0000000000..06b26d36a5 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/dev-python/google-api-python-client/google-api-python-client-1.1.ebuild @@ -0,0 +1,25 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 +PYTHON_COMPAT=( python{2_5,2_6,2_7} ) + +inherit distutils-r1 + +DESCRIPTION="Google API Client Library for Python" +HOMEPAGE="http://code.google.com/p/google-api-python-client/" +SRC_URI="http://google-api-python-client.googlecode.com/files/${P}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="amd64" +IUSE="" + +RDEPEND="${PYTHON_DEPS} + >=dev-python/httplib2-0.8[${PYTHON_USEDEP}] + dev-python/python-gflags[${PYTHON_USEDEP}]" +DEPEND="${RDEPEND} + dev-python/setuptools[${PYTHON_USEDEP}]" + +DOCS=( CHANGELOG README ) diff --git a/sdk_container/src/third_party/coreos-overlay/dev-python/python-gflags/Manifest b/sdk_container/src/third_party/coreos-overlay/dev-python/python-gflags/Manifest new file mode 100644 index 0000000000..436669399e --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/dev-python/python-gflags/Manifest @@ -0,0 +1 @@ +DIST python-gflags-2.0.tar.gz 64929 SHA256 311066217acb8cd8519a4c872cb3fe64f02bcf105802bb761ab0de55c2386cd6 SHA512 28566acffd092f09105f3b9ad3be4ada11f024f940914e6efb103907f3779283c63bdfe13edad83aa470c5e887b49ad8b05031fc1895f3bad9b5d9c368bbfe18 WHIRLPOOL 61054cce9033ef26ee6d6296fc761c840f394de07f068a899b52a5d4212de4e4601f9a203fd8033db576e79369e4d53a0bb04bfca0e50cf828ff94105a2b453a diff --git a/sdk_container/src/third_party/coreos-overlay/dev-python/python-gflags/files/python-gflags-2.0-scripts-install.patch b/sdk_container/src/third_party/coreos-overlay/dev-python/python-gflags/files/python-gflags-2.0-scripts-install.patch new file mode 100644 index 0000000000..357121c61a --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/dev-python/python-gflags/files/python-gflags-2.0-scripts-install.patch @@ -0,0 +1,26 @@ +From d544cdad63faa5a53ba524e39f091f4a18e1eeb8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= +Date: Sun, 16 Dec 2012 16:27:13 +0100 +Subject: [PATCH] Install Python scripts using 'scripts' key. + +This is necessary to ensure that the shebangs are properly replaced when +installing for multiple Python implementations. +--- + setup.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/setup.py b/setup.py +index 573db2d..ddad318 100755 +--- a/setup.py ++++ b/setup.py +@@ -39,6 +39,6 @@ setup(name='python-gflags', + author_email='google-gflags@googlegroups.com', + url='http://code.google.com/p/python-gflags', + py_modules=["gflags", "gflags_validators"], +- data_files=[("bin", ["gflags2man.py"])], ++ scripts=["gflags2man.py"], + include_package_data=True, + ) +-- +1.8.0.2 + diff --git a/sdk_container/src/third_party/coreos-overlay/dev-python/python-gflags/files/python-gflags-2.0-skip-permission-test-as-root.patch b/sdk_container/src/third_party/coreos-overlay/dev-python/python-gflags/files/python-gflags-2.0-skip-permission-test-as-root.patch new file mode 100644 index 0000000000..8505534135 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/dev-python/python-gflags/files/python-gflags-2.0-skip-permission-test-as-root.patch @@ -0,0 +1,26 @@ +From 6e93aa28e1e116619a82e1b78ffbc15ce1133d51 Mon Sep 17 00:00:00 2001 +From: Michael Marineau +Date: Thu, 27 Jun 2013 19:26:23 -0400 +Subject: [PATCH 3/3] Skip a permissions check when running as root. + +--- + tests/gflags_unittest.py | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/tests/gflags_unittest.py b/tests/gflags_unittest.py +index 091ebd9..ddd3b5c 100755 +--- a/tests/gflags_unittest.py ++++ b/tests/gflags_unittest.py +@@ -1111,6 +1111,9 @@ class LoadFromFlagFileTest(googletest.TestCase): + + def testMethod_flagfiles_NoPermissions(self): + """Test that --flagfile raises except on file that is unreadable.""" ++ # This test doesn't work as root ++ if os.getuid() == 0: ++ return + tmp_files = self._SetupTestFiles() + # specify our temp file on the fake cmd line + fake_cmd_line = ('fooScript --SomeFlag some_arg --flagfile=%s' +-- +1.8.1.5 + diff --git a/sdk_container/src/third_party/coreos-overlay/dev-python/python-gflags/files/python-gflags-2.0-test-updates-for-python-2.7.patch b/sdk_container/src/third_party/coreos-overlay/dev-python/python-gflags/files/python-gflags-2.0-test-updates-for-python-2.7.patch new file mode 100644 index 0000000000..3f3fd6d11b --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/dev-python/python-gflags/files/python-gflags-2.0-test-updates-for-python-2.7.patch @@ -0,0 +1,74 @@ +From 8cd3b4270459124a25a96d7bc1b2924669f89fce Mon Sep 17 00:00:00 2001 +From: "jwilliams@endpoint.com" + +Date: Tue, 21 Feb 2012 22:17:32 +0000 +Subject: [PATCH 1/3] Unit test updates for Python 2.7 compatibility + +* Add "msg" parameter to our versions of the test functions +* Change regex to match the updated 2.7 float() ValueError response + + +git-svn-id: http://python-gflags.googlecode.com/svn/trunk@41 844fb29a-f99b-11de-8173-5df4dc7aba59 +--- + tests/gflags_googletest.py | 12 ++++++------ + tests/gflags_unittest.py | 4 ++-- + 2 files changed, 8 insertions(+), 8 deletions(-) + +diff --git a/tests/gflags_googletest.py b/tests/gflags_googletest.py +index 9ae614c..e725de6 100644 +--- a/tests/gflags_googletest.py ++++ b/tests/gflags_googletest.py +@@ -88,22 +88,22 @@ def MultiLineEqual(expected, actual): + + + class TestCase(unittest.TestCase): +- def assertListEqual(self, list1, list2): ++ def assertListEqual(self, list1, list2, msg=None): + """Asserts that, when sorted, list1 and list2 are identical.""" + # This exists in python 2.7, but not previous versions. Use the + # built-in version if possible. + if hasattr(unittest.TestCase, "assertListEqual"): +- unittest.TestCase.assertListEqual(self, Sorted(list1), Sorted(list2)) ++ unittest.TestCase.assertListEqual(self, Sorted(list1), Sorted(list2), msg) + else: +- self.assertEqual(Sorted(list1), Sorted(list2)) ++ self.assertEqual(Sorted(list1), Sorted(list2), msg) + +- def assertMultiLineEqual(self, expected, actual): ++ def assertMultiLineEqual(self, expected, actual, msg=None): + # This exists in python 2.7, but not previous versions. Use the + # built-in version if possible. + if hasattr(unittest.TestCase, "assertMultiLineEqual"): +- unittest.TestCase.assertMultiLineEqual(self, expected, actual) ++ unittest.TestCase.assertMultiLineEqual(self, expected, actual, msg) + else: +- self.assertTrue(MultiLineEqual(expected, actual)) ++ self.assertTrue(MultiLineEqual(expected, actual), msg) + + def assertRaisesWithRegexpMatch(self, exception, regexp, fn, *args, **kwargs): + try: +diff --git a/tests/gflags_unittest.py b/tests/gflags_unittest.py +index 8e948bf..091ebd9 100755 +--- a/tests/gflags_unittest.py ++++ b/tests/gflags_unittest.py +@@ -814,7 +814,7 @@ class MultiNumericalFlagsTest(googletest.TestCase): + + self.assertRaisesWithRegexpMatch( + gflags.IllegalFlagValue, +- 'flag --m_float2=abc: invalid literal for float\(\): abc', ++ 'flag --m_float2=abc: (invalid literal for float\(\)||could not convert string to float): abc', + gflags.DEFINE_multi_float, 'm_float2', ['abc'], 'desc') + + # Test non-parseable command line values. +@@ -831,7 +831,7 @@ class MultiNumericalFlagsTest(googletest.TestCase): + argv = ('./program', '--m_float2=def') + self.assertRaisesWithRegexpMatch( + gflags.IllegalFlagValue, +- 'flag --m_float2=def: invalid literal for float\(\): def', ++ 'flag --m_float2=def: (invalid literal for float\(\)||could not convert string to float): def', + FLAGS, argv) + + +-- +1.8.1.5 + diff --git a/sdk_container/src/third_party/coreos-overlay/dev-python/python-gflags/files/python-gflags-2.0-tests-respect-tmpdir.patch b/sdk_container/src/third_party/coreos-overlay/dev-python/python-gflags/files/python-gflags-2.0-tests-respect-tmpdir.patch new file mode 100644 index 0000000000..035b6b6be4 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/dev-python/python-gflags/files/python-gflags-2.0-tests-respect-tmpdir.patch @@ -0,0 +1,55 @@ +From 4a430830e75bfe2228e9d953b12f74a20ec2cb8f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= +Date: Sun, 16 Dec 2012 16:53:24 +0100 +Subject: [PATCH] Use tempfile.mkdtemp() to create temporary directory. + +This creates an unique directory, and respects TMPDIR. +--- + tests/gflags_unittest.py | 11 ++++++----- + 1 file changed, 6 insertions(+), 5 deletions(-) + +diff --git a/tests/gflags_unittest.py b/tests/gflags_unittest.py +index 8e948bf..fcddb7b 100755 +--- a/tests/gflags_unittest.py ++++ b/tests/gflags_unittest.py +@@ -38,6 +38,7 @@ import cStringIO + import sys + import os + import shutil ++import tempfile + + import gflags + from flags_modules_for_testing import module_foo +@@ -907,17 +908,16 @@ class LoadFromFlagFileTest(googletest.TestCase): + flag_values=self.flag_values) + self.files_to_delete = [] + ++ # Figure out where to create temporary files ++ self.tmp_path = tempfile.mkdtemp(prefix='gflags_unittest') ++ + def tearDown(self): + self._RemoveTestFiles() + + def _SetupTestFiles(self): + """ Creates and sets up some dummy flagfile files with bogus flags""" + +- # Figure out where to create temporary files +- tmp_path = '/tmp/flags_unittest' +- if os.path.exists(tmp_path): +- shutil.rmtree(tmp_path) +- os.makedirs(tmp_path) ++ tmp_path = self.tmp_path + + try: + tmp_flag_file_1 = open(tmp_path + '/UnitTestFile1.tst', 'w') +@@ -973,6 +973,7 @@ class LoadFromFlagFileTest(googletest.TestCase): + os.remove(file_name) + except OSError, e_msg: + print '%s\n, Problem deleting test file' % e_msg ++ shutil.rmtree(self.tmp_path) + #end RemoveTestFiles def + + def _ReadFlagsFromFiles(self, argv, force_gnu): +-- +1.8.0.2 + diff --git a/sdk_container/src/third_party/coreos-overlay/dev-python/python-gflags/python-gflags-2.0.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-python/python-gflags/python-gflags-2.0.ebuild new file mode 100644 index 0000000000..7f3e0d0d54 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/dev-python/python-gflags/python-gflags-2.0.ebuild @@ -0,0 +1,50 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-python/python-gflags/python-gflags-2.0.ebuild,v 1.5 2012/12/17 19:59:53 mgorny Exp $ + +EAPI="5" + +PYTHON_COMPAT=( python{2_5,2_6,2_7} pypy{1_8,1_9} ) + +inherit distutils-r1 + +DESCRIPTION="Google's Python argument parsing library" +HOMEPAGE="http://code.google.com/p/python-gflags/" +SRC_URI="http://python-gflags.googlecode.com/files/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="amd64 ~x86" +IUSE="" + +# Prior to 1.4 gflags provided python-gflags +RDEPEND="!=2.9.0-dev', + 'httplib2>=0.8', + 'python-gflags>=2.0', + 'google-api-python-client>=1.1', + 'pyOpenSSL>=0.13', + 'crcmod>=1.7', +- # Not using 1.02 because of: +- # https://code.google.com/p/socksipy-branch/issues/detail?id=3 +- 'SocksiPy-branch==1.01', ++ 'SocksiPy-branch>=1.01', + ] + + dependency_links = [ diff --git a/sdk_container/src/third_party/coreos-overlay/net-misc/gsutil/gsutil-3.31.ebuild b/sdk_container/src/third_party/coreos-overlay/net-misc/gsutil/gsutil-3.31.ebuild new file mode 100644 index 0000000000..5dc8446f2f --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/net-misc/gsutil/gsutil-3.31.ebuild @@ -0,0 +1,38 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI="5" +PYTHON_COMPAT=( python{2_6,2_7} ) + +inherit distutils-r1 + +DESCRIPTION="command line tool for interacting with cloud storage services" +HOMEPAGE="http://code.google.com/p/gsutil/" +SRC_URI="http://commondatastorage.googleapis.com/pub/${PN}_${PV}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="amd64" +IUSE="" + +DEPEND="${PYTHON_DEPS}" +RDEPEND="${DEPEND} + >=dev-python/boto-2.9.5[${PYTHON_USEDEP}] + >=dev-python/crcmod-1.7 + >=dev-python/httplib2-0.8[${PYTHON_USEDEP}] + >=dev-python/pyopenssl-0.13[${PYTHON_USEDEP}] + dev-python/google-api-python-client[${PYTHON_USEDEP}] + dev-python/python-gflags[${PYTHON_USEDEP}] + dev-python/setuptools[${PYTHON_USEDEP}] + dev-python/socksipy-branch[${PYTHON_USEDEP}] + " + +S=${WORKDIR}/${PN} +DOCS=( README.md ReleaseNotes.txt ) +PATCHES=( ${FILESDIR}/${P}-use-friendy-version-checks.patch ) + +python_test() { + export BOTO_CONFIG=${FILESDIR}/dummy.boto + ${PYTHON} gslib/__main__.py test -u +} diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/default/linux/package.accept_keywords b/sdk_container/src/third_party/coreos-overlay/profiles/default/linux/package.accept_keywords index f16dc17d79..30aa936cc4 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/default/linux/package.accept_keywords +++ b/sdk_container/src/third_party/coreos-overlay/profiles/default/linux/package.accept_keywords @@ -58,7 +58,6 @@ =dev-lang/closure-compiler-bin-20120305 ~amd64 =sys-devel/clang-3.2 ~amd64 =dev-util/shflags-1.0.3 ~amd64 -=net-misc/gsutil-3.21 ~amd64 =dev-util/perf-3.4 ~amd64 =dev-python/boto-2.7.0 ~amd64 =sys-libs/libnih-1.0.3 ~amd64 @@ -101,3 +100,8 @@ # Needed for docker =sys-fs/aufs-util-3.7.6 ~amd64 + +# Needed by gsutil-3.31 +=dev-python/httplib2-0.8 ~amd64 +=dev-python/crcmod-1.7-r1 ~amd64 +=dev-python/boto-2.9.6 ~amd64