public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Joonas Niilola" <juippis@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/elasticsearch-py/
Date: Tue,  5 Oct 2021 13:37:43 +0000 (UTC)	[thread overview]
Message-ID: <1633441057.73a0af305bb3e3b75f50d5b10d087c48848e1e77.juippis@gentoo> (raw)

commit:     73a0af305bb3e3b75f50d5b10d087c48848e1e77
Author:     Alfred Wingate <parona <AT> protonmail <DOT> com>
AuthorDate: Wed Sep  8 21:51:59 2021 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Tue Oct  5 13:37:37 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=73a0af30

dev-python/elasticsearch-py: add 7.14.1

Package-Manager: Portage-3.0.22, Repoman-3.0.3
Signed-off-by: Alfred Wingate <parona <AT> protonmail.com>
Closes: https://github.com/gentoo/gentoo/pull/22248
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 dev-python/elasticsearch-py/Manifest               |   2 +
 .../elasticsearch-py-7.14.1.ebuild                 | 185 +++++++++++++++++++++
 dev-python/elasticsearch-py/metadata.xml           |  12 +-
 3 files changed, 198 insertions(+), 1 deletion(-)

diff --git a/dev-python/elasticsearch-py/Manifest b/dev-python/elasticsearch-py/Manifest
index 29efd733d19..8692b365967 100644
--- a/dev-python/elasticsearch-py/Manifest
+++ b/dev-python/elasticsearch-py/Manifest
@@ -1,2 +1,4 @@
+DIST elasticsearch-7.14.1-no-jdk-linux-x86_64.tar.gz 191559419 BLAKE2B c4099d2e7a121b47549b44c081f60cd966a371a01827aa19380d171619cb6ef6f30fd411f75de00d41c6a93df2c899ac9dbc5cf2bf2264d7885ace6a61cf55c3 SHA512 77dca78ba865ae74863b3b2a3cd61e8a8e4478cd02eb020184dbf89fa32cf145a6bbd1d11a1cb88c2236a3b8cdb8b0047e3c0f1a40f609f31b898c905b2c211d
 DIST elasticsearch-oss-7.7.0-no-jdk-linux-x86_64.tar.gz 73216528 BLAKE2B f0f1a3d3347ea37703e90bd896b24f6e3c58406d9fb20f3607a4d08eee325b5ae293db48d1afdc208468ee775b9085a28f39f2e175b67e4881bfb61d5cb85a9a SHA512 f9b323cff078a0dc856f99efd164775a9cd0718bb0ddb6c4d4817fa53cae71748f1aec5158afa45d4b29076043cbada9743a996e685439436e93d94a9eff2768
+DIST elasticsearch-py-7.14.1.tar.gz 302277 BLAKE2B a4502edbaf1dbca9c687a32f012305fee7520555dd23f05888fcb8b82e2a9ffa3f9c5208320eca4ea8033498cd0a951003b94662b6847da664f302b8c2763004 SHA512 49b4e0cddc210e0d73cb7cb28f38dae4fd0595e22733cf017c41f50731479a1a3672307a119b067a0b5c1de3a138908e337145effd2b66bf930c2d439cd2ce0b
 DIST elasticsearch-py-7.7.0.tar.gz 128862 BLAKE2B 461b7ac3bc6d96bacdc1e8595c05b4dfd3e6bad2d2d11eecaedcb3b7e96c7390fe26c47b7095b3b1e8500872cfef689a749bd7103bef352680a2cf3ef7dad350 SHA512 6da382c5056f61dde2bf509c902a4ca33548ee937d037dc977e8c8864ebc09385f630b5c99ab8b24b69390773a241786495d1c01a5684ea3892d834e7a1550b1

diff --git a/dev-python/elasticsearch-py/elasticsearch-py-7.14.1.ebuild b/dev-python/elasticsearch-py/elasticsearch-py-7.14.1.ebuild
new file mode 100644
index 00000000000..9bbee0cf097
--- /dev/null
+++ b/dev-python/elasticsearch-py/elasticsearch-py-7.14.1.ebuild
@@ -0,0 +1,185 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Official Python low-level client for Elasticsearch"
+HOMEPAGE="https://github.com/elastic/elasticsearch-py"
+SRC_URI="
+	https://github.com/elastic/elasticsearch-py/archive/v${PV}.tar.gz -> ${P}.tar.gz
+	test? (
+		https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-${PV}-no-jdk-linux-x86_64.tar.gz
+	)"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="async doc test"
+
+PROPERTIES="test_network"
+RESTRICT="test"
+
+RDEPEND="
+	dev-python/certifi[${PYTHON_USEDEP}]
+	>=dev-python/urllib3-1.26.0[${PYTHON_USEDEP}]
+	<dev-python/urllib3-2.0.0[${PYTHON_USEDEP}]
+	async? (
+		>=dev-python/aiohttp-3[${PYTHON_USEDEP}]
+		<dev-python/aiohttp-4[${PYTHON_USEDEP}]
+	)"
+DEPEND="
+	test? (
+		${RDEPEND}
+		>=dev-python/requests-2.0.0[${PYTHON_USEDEP}]
+		<dev-python/requests-3.0.0[${PYTHON_USEDEP}]
+		dev-python/mock[${PYTHON_USEDEP}]
+		dev-python/numpy[${PYTHON_USEDEP}]
+		dev-python/pandas[${PYTHON_USEDEP}]
+		dev-python/python-dateutil[${PYTHON_USEDEP}]
+		>=dev-python/pyyaml-5.4[${PYTHON_USEDEP}]
+		virtual/jre:*
+		async? (
+			dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+			dev-python/unasync[${PYTHON_USEDEP}]
+		)
+	)"
+
+distutils_enable_sphinx docs/sphinx dev-python/sphinx_rtd_theme
+distutils_enable_tests pytest
+
+src_prepare() {
+	default_src_prepare
+
+	if use test; then
+		local es_port="25124"
+
+		export ES_DIR="${WORKDIR}/elasticsearch-${PV}"
+		export ES_INSTANCE="gentoo-es-py-test"
+		export ES_JAVA_HOME=$(java-config -g JAVA_HOME || die)
+		export ELASTIC_PASSWORD="changeme"
+		export ELASTICSEARCH_URL="https://elastic:${ELASTIC_PASSWORD}@localhost:${es_port}"
+
+		cp -r "${S}/.ci/certs" "${ES_DIR}/config" || die
+
+		cat <<EOF > "${ES_DIR}/config/elasticsearch.yml" || die
+# Run elasticsearch on custom port
+http.port: ${es_port}
+cluster.routing.allocation.disk.threshold_enabled: false
+bootstrap.memory_lock: true
+node.attr.testattr: test
+repositories.url.allowed_urls: http://snapshot.test*
+action.destructive_requires_name: false
+ingest.geoip.downloader.enabled: false
+
+xpack.license.self_generated.type: basic
+xpack.security.enabled: true
+xpack.security.http.ssl.enabled: true
+xpack.security.http.ssl.verification_mode: certificate
+xpack.security.http.ssl.key: certs/testnode.key
+xpack.security.http.ssl.certificate: certs/testnode.crt
+xpack.security.http.ssl.certificate_authorities: certs/ca.crt
+xpack.security.transport.ssl.enabled: true
+xpack.security.transport.ssl.verification_mode: certificate
+xpack.security.transport.ssl.key: certs/testnode.key
+xpack.security.transport.ssl.certificate: certs/testnode.crt
+xpack.security.transport.ssl.certificate_authorities: certs/ca.crt
+EOF
+
+		# Set password in keystore
+		printf "y\n${ELASTIC_PASSWORD}\n" | ${ES_DIR}/bin/elasticsearch-keystore add "bootstrap.password" || die
+
+		# Deselect tests which require a non-free license in the server to succeed
+		EPYTEST_DESELECT+=(
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[token/11_invalidation[{0,1}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[token/10_basic[{1..4}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/jobs_get_result_record[{1..6}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/jobs_get_result_influencer[{1..8}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/datafeed_cat_apis[0]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/filter_crud[10]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/preview_data_frame_analytics[{3..5}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/custom_all_field[{0,1}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/data_frame_analytics_crud[{1,5,6,13,29,38,39,40,42,62,76,77,78,80,81,82,83}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/start_data_frame_analytics[{0,1,2,3,4,6,7,8}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/jobs_get_result_categories[{0,1,2,3,4,5,6,7}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/forecast[{1,2,3,4,5,6}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/explain_data_frame_analytics[{3,5,6,7,8}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/delete_expired_data[{0,1,2,3}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/upgrade_job_snapshot[{0,1}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/inference_processor[{0,1}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/jobs_get_result_buckets[{0,1,2,3,4,5,6,7,8,9,10,11}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/trained_model_cat_apis[0]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/revert_model_snapshot[{0,1}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/calendar_crud[{0,7,8,12,13,17,18}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/stop_data_frame_analytics[{0,1,2,3,4,5}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/jobs_get[{0,1,2,3,4}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/preview_datafeed[{0,1,2,3,7,8,9}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/data_frame_analytics_cat_apis[{0,1,2,3}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/reset_job[{0,1}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/ml_anomalies_default_mappings[{0,1}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/get_model_snapshots[{0,1,2,3,4,5,6,7}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/get_datafeeds[{0,1,2,3}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/job_cat_apis[0]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[change_password/11_token[0]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[searchable_snapshots/10_usage[0]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[graph/10_basic[0]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[data_stream/10_data_stream_resolvability[4]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[xpack/20_info[0]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[authenticate/10_field_level_security[0]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[set_security_user/10_small_users_one_index[0]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[terms_enum/10_basic[{0..9}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[security/hidden-index/14_security-tokens-7_read[{0,1,2}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[security/hidden-index/13_security-tokens_read[{0,1,2}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/jobs_get_result_records[{0..6}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[ml/jobs_get_result_influencers[{0..8}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[license/20_put_license[{5,7,8}]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[license/30_enterprise_license[0]
+			test_elasticsearch/test_server/test_rest_api_spec.py::test_rest_api_spec[token/10_basic[0]
+		)
+
+		use async || EPYTEST_DESELECT+=( test_elasticsearch/test_async test_elasticsearch/test_types/async_types.py )
+		export EPYTEST_DESELECT
+	fi
+}
+
+python_test() {
+	local es_instance="gentoo-py-test"
+	local es_log="${ES_DIR}/logs/${es_instance}-${EPYTHON}.log"
+	local es_temp="${T}/es_temp-${EPYTHON}"
+	local pid="${ES_DIR}/elasticsearch.pid"
+
+	mkdir ${es_temp} || die
+
+	# start local instance of elasticsearch
+	"${ES_DIR}"/bin/elasticsearch -d -p "${pid}" -Ecluster.name=${es_instance}-${EPYTHON} -Epath.repo=${es_temp}|| die
+
+	local i
+	local es_started=0
+	for i in {1..20}; do
+		grep -q "started" ${es_log} 2> /dev/null
+		if [[ $? -eq 0 ]]; then
+			einfo "Elasticsearch started"
+			es_started=1
+			eend 0
+			break
+		elif grep -q 'BindException\[Address already in use\]' "${es_log}" 2>/dev/null; then
+			eend 1
+			eerror "Elasticsearch already running"
+			die "Cannot start Elasticsearch for tests"
+		else
+			einfo "Waiting for Elasticsearch"
+			eend 1
+			sleep 2
+			continue
+		fi
+	done
+
+	[[ $es_started -eq 0 ]] && die "Elasticsearch failed to start"
+
+	epytest
+
+	pkill -F ${pid} || die
+}

diff --git a/dev-python/elasticsearch-py/metadata.xml b/dev-python/elasticsearch-py/metadata.xml
index dd13b4cb486..94ef681d4bf 100644
--- a/dev-python/elasticsearch-py/metadata.xml
+++ b/dev-python/elasticsearch-py/metadata.xml
@@ -1,9 +1,19 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
-	<!-- maintainer-needed -->
+	<maintainer type="person" proxied="yes">
+		<email>parona@protonmail.com</email>
+		<name>Alfred Wingate</name>
+	</maintainer>
+	<maintainer type="project" proxied="proxy">
+		<email>proxy-maint@gentoo.org</email>
+		<name>Proxy Maintainers</name>
+	</maintainer>
 	<upstream>
 		<remote-id type="github">elastic/elasticsearch-py</remote-id>
 		<remote-id type="pypi">elasticsearch7</remote-id>
 	</upstream>
+	<use>
+		<flag name="async">Add async support</flag>
+	</use>
 </pkgmetadata>


             reply	other threads:[~2021-10-05 13:37 UTC|newest]

Thread overview: 106+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-05 13:37 Joonas Niilola [this message]
  -- strict thread matches above, loose matches on Subject: below --
2023-07-24 18:48 [gentoo-commits] repo/gentoo:master commit in: dev-python/elasticsearch-py/ Michał Górny
2023-07-24 18:48 Michał Górny
2023-07-24 18:48 Michał Górny
2023-07-09  4:35 Sam James
2023-07-09  4:35 Sam James
2023-06-20 12:02 Jakov Smolić
2023-06-11  8:49 Joonas Niilola
2023-06-11  8:49 Joonas Niilola
2023-05-02 17:07 Joonas Niilola
2023-05-02 17:07 Joonas Niilola
2023-05-02 17:07 Joonas Niilola
2023-04-05 15:58 Michał Górny
2023-04-05 14:27 Arthur Zamarin
2023-04-05 14:27 Arthur Zamarin
2023-02-18  7:16 Sam James
2023-02-18  7:16 Sam James
2022-09-26  6:15 Michał Górny
2022-09-25 23:58 Sam James
2022-09-25 23:58 Sam James
2022-08-25 19:25 Arthur Zamarin
2021-11-05 19:16 Michał Górny
2021-11-05 17:33 Sam James
2021-11-05 14:57 Jakov Smolić
2021-10-10 23:45 Sam James
2021-10-05 13:37 Joonas Niilola
2021-10-02 12:46 Joonas Niilola
2021-04-11 11:23 Michał Górny
2021-04-11 11:11 Sam James
2021-04-11 11:06 Sam James
2021-03-09  9:44 Sam James
2021-02-21 13:20 David Seifert
2020-12-11 14:51 Michał Górny
2020-12-10 19:31 Thomas Deutschmann
2020-06-28 20:44 Agostino Sarubbo
2020-06-28 20:27 Agostino Sarubbo
2020-06-06  2:08 Aaron Bauman
2020-04-01 14:38 Joonas Niilola
2020-03-27  8:58 Michał Górny
2020-02-05 13:00 Michał Górny
2020-01-24  6:54 Joonas Niilola
2020-01-24  6:54 Joonas Niilola
2020-01-24  6:54 Joonas Niilola
2020-01-24  6:54 Joonas Niilola
2019-10-28 14:43 Joonas Niilola
2019-10-28 14:43 Joonas Niilola
2019-08-19 17:06 Joonas Niilola
2019-08-19 17:06 Joonas Niilola
2019-08-16 13:50 Michał Górny
2018-11-17 14:27 Mikle Kolyada
2018-11-15 15:48 Thomas Deutschmann
2018-09-28 10:45 Michał Górny
2018-09-28 10:45 Michał Górny
2018-09-13 15:34 Thomas Deutschmann
2018-09-13 15:34 Thomas Deutschmann
2018-07-11 10:32 Tony Vroon
2018-07-11 10:32 Tony Vroon
2018-05-11 21:56 Patrice Clement
2018-04-11 22:47 Patrice Clement
2018-02-14 21:55 Michał Górny
2018-02-14 21:55 Michał Górny
2018-02-14 21:55 Michał Górny
2018-01-03 19:02 Michał Górny
2017-11-30 14:47 Patrice Clement
2017-11-30 14:47 Patrice Clement
2017-11-30 14:47 Patrice Clement
2017-11-06 11:41 Manuel Rüger
2017-10-29 21:08 Thomas Deutschmann
2017-05-25 10:44 Agostino Sarubbo
2017-05-24 13:27 Michał Górny
2017-05-24 13:27 Michał Górny
2017-05-19 10:52 Michał Górny
2017-05-19  9:46 Manuel Rüger
2017-05-18 22:25 Michał Górny
2017-05-17 16:37 Patrick Lauer
2017-05-15 13:49 Manuel Rüger
2017-03-16 21:57 Göktürk Yüksek
2017-03-16 21:57 Göktürk Yüksek
2017-02-10 20:25 Göktürk Yüksek
2017-02-10 20:25 Göktürk Yüksek
2016-12-27 17:38 Göktürk Yüksek
2016-12-26 11:23 Aaron Bauman
2016-11-28 11:10 Patrick Lauer
2016-10-28 19:45 Patrick Lauer
2016-10-02 12:59 Göktürk Yüksek
2016-09-02  5:26 Patrick Lauer
2016-08-30 19:07 David Seifert
2016-08-23 19:00 David Seifert
2016-08-23 19:00 David Seifert
2016-08-23 19:00 David Seifert
2016-08-23 19:00 David Seifert
2016-04-18 16:16 Ian Delaney
2016-03-18 11:08 Patrick Lauer
2016-03-17 14:27 Patrick Lauer
2016-01-13 14:10 Patrice Clement
2015-11-23  7:53 Ian Delaney
2015-11-14 16:54 Markus Meier
2015-11-11 17:10 Ian Delaney
2015-11-10 16:08 Ian Delaney
2015-11-09  9:50 Ian Delaney
2015-10-26 19:36 Justin Lecher
2015-10-26 17:43 Richard Farina
2015-10-26 14:18 Ian Delaney
2015-10-26  3:47 Ian Delaney
2015-10-19 13:32 Ian Delaney
2015-08-20  4:45 Zac Medico

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1633441057.73a0af305bb3e3b75f50d5b10d087c48848e1e77.juippis@gentoo \
    --to=juippis@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox