public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/elasticsearch-curator/
Date: Tue,  9 Mar 2021 09:44:50 +0000 (UTC)	[thread overview]
Message-ID: <1615283070.9a71c61b3bc4a73d43c693f68808077bfcd675d3.sam@gentoo> (raw)

commit:     9a71c61b3bc4a73d43c693f68808077bfcd675d3
Author:     Peter Vielberth <code <AT> peter-vielberth <DOT> de>
AuthorDate: Fri Feb 19 09:26:24 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Mar  9 09:44:30 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9a71c61b

dev-python/elasticsearch-curator: Add missing dependencies

Add missing importlib_metadata and cx_Freeze dependencies

Closes: https://bugs.gentoo.org/761325
Signed-off-by: Peter Vielberth <code <AT> peter-vielberth.de>
Package-Manager: Portage-3.0.14, Repoman-3.0.2
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../elasticsearch-curator-5.8.1-r3.ebuild          | 165 +++++++++++++++++++++
 1 file changed, 165 insertions(+)

diff --git a/dev-python/elasticsearch-curator/elasticsearch-curator-5.8.1-r3.ebuild b/dev-python/elasticsearch-curator/elasticsearch-curator-5.8.1-r3.ebuild
new file mode 100644
index 00000000000..526bbb2aac4
--- /dev/null
+++ b/dev-python/elasticsearch-curator/elasticsearch-curator-5.8.1-r3.ebuild
@@ -0,0 +1,165 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_7 )
+
+MY_PN="curator"
+ES_VERSION="7.3.2"
+
+inherit distutils-r1
+
+DESCRIPTION="Tending time-series indices in Elasticsearch"
+HOMEPAGE="https://github.com/elastic/curator"
+SRC_URI="https://github.com/elastic/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
+	test? ( https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-${ES_VERSION}-linux-x86_64.tar.gz )"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# tests fail in chroot
+# https://github.com/elastic/elasticsearch/issues/12018
+RESTRICT="test"
+IUSE="doc test"
+
+# vulnerable pyyaml
+# https://github.com/elastic/curator/issues/1415
+RDEPEND="
+	>=dev-python/elasticsearch-py-7.0.4[${PYTHON_USEDEP}]
+	<dev-python/elasticsearch-py-8.0.0[${PYTHON_USEDEP}]
+	>=dev-python/click-6.7[${PYTHON_USEDEP}]
+	<dev-python/click-7.0[${PYTHON_USEDEP}]
+	>=dev-python/certifi-2019.9.11[${PYTHON_USEDEP}]
+	>=dev-python/requests-2.20.0[${PYTHON_USEDEP}]
+	>=dev-python/urllib3-1.24.2[${PYTHON_USEDEP}]
+	<dev-python/urllib3-1.26[${PYTHON_USEDEP}]
+	>=dev-python/voluptuous-0.9.3[${PYTHON_USEDEP}]"
+DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
+	>=dev-python/six-1.11.0[${PYTHON_USEDEP}]
+	dev-python/sphinx
+	dev-python/pyyaml[${PYTHON_USEDEP}]
+	dev-python/cx_Freeze[${PYTHON_USEDEP}]
+	dev-python/importlib_metadata[${PYTHON_USEDEP}]
+	test? ( ${RDEPEND}
+		virtual/jre
+		dev-python/mock[${PYTHON_USEDEP}]
+		dev-python/nose[${PYTHON_USEDEP}]
+		dev-python/six[${PYTHON_USEDEP}] )"
+
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+python_prepare_all() {
+	# avoid downloading from net
+	sed -e '/^intersphinx_mapping/,+3d' -i docs/conf.py || die
+
+	# requests_aws4auth not in portage
+	sed -e '/boto3/d' \
+		-e '/requests_aws4auth/d' \
+		-e 's/pyyaml==3.13/pyyaml/g' \
+		-e '/tests_require/s/, "coverage", "nosexcover"//g' \
+		-i setup.cfg setup.py || die
+
+	# Bug 713342
+	sed -i 's/yaml.load/yaml.unsafe_load/g' curator/utils.py test/unit/* || die
+
+	distutils-r1_python_prepare_all
+}
+
+python_compile_all() {
+	emake -C docs -j1 man $(usex doc html "")
+}
+
+# running tests in non-chroot environments:
+# FEATURES="test -usersandbox" emerge dev-python/elasticsearch-curator
+python_test_all() {
+	# starts two ES instances (local,remote) and runs the tests
+	# https://github.com/elastic/curator/blob/master/travis-run.sh
+	local ES_INSTANCES="local remote"
+	local ES_PATH="${WORKDIR}/elasticsearch-${ES_VERSION}"
+
+	declare -A ES_PORT
+	ES_PORT[local]=9200
+	ES_PORT[remote]=9201
+
+	local i transport
+	declare -A ES_CONFIG_DIR ES_CONFIG_PATH ES_INSTANCE ES_LOG ES_PID
+	for i in ${ES_INSTANCES}; do
+		ES_CONFIG_DIR[$i]="${ES_PATH}/$i"
+		ES_CONFIG_PATH[$i]="${ES_CONFIG_DIR[$i]}/elasticsearch.yml"
+		ES_PID[$i]="${ES_PATH}/$i.pid"
+		ES_LOG[$i]="${ES_PATH}/logs/$i.log"
+	done
+
+	# configure ES instances
+	for i in ${ES_INSTANCES}; do
+		mkdir -p "${ES_CONFIG_DIR[$i]}" || die
+		cp ${ES_PATH}/config/{jvm.options,log4j2.properties} "${ES_CONFIG_DIR[$i]}"/ || die
+		echo 'network.host: 127.0.0.1' > "${ES_CONFIG_PATH[$i]}" || die
+		echo "http.port: ${ES_PORT[$i]}" >> "${ES_CONFIG_PATH[$i]}" || die
+		echo "cluster.name: $i" >> "${ES_CONFIG_PATH[$i]}" || die
+		echo "node.name: $i" >> "${ES_CONFIG_PATH[$i]}" || die
+		echo 'node.max_local_storage_nodes: 2' >> "${ES_CONFIG_PATH[$i]}" || die
+		transport=$((${ES_PORT[$i]}+100))
+		echo "transport.port: ${transport}" >> "${ES_CONFIG_PATH[$i]}" || die
+		echo "discovery.seed_hosts: [\"localhost:${transport}\"]" >> "${ES_CONFIG_PATH[$i]}" || die
+		echo "discovery.type: single-node" >> "${ES_CONFIG_PATH[$i]}" || die
+	done
+
+	echo 'path.repo: /' >> "${ES_CONFIG_PATH[local]}" || die
+	echo "reindex.remote.whitelist: localhost:${ES_PORT[remote]}" >> "${ES_CONFIG_PATH[local]}" || die
+
+	# start ES instances
+	for i in ${ES_INSTANCES}; do
+		ES_PATH_CONF=${ES_CONFIG_DIR[$i]} "${ES_PATH}/bin/elasticsearch" -d -p "${ES_PID[$i]}" || die
+
+		local j
+		local es_started=0
+		for j in {1..30}; do
+			grep -q "started" "${ES_LOG[$i]}" 2> /dev/null
+			if [[ $? -eq 0 ]]; then
+				einfo "Elasticsearch $i started"
+				es_started=1
+				eend 0
+				break
+			elif grep -q 'BindException\[Address already in use\]' "${ES_LOG[$i]}" 2>/dev/null; then
+				eend 1
+				eerror "Elasticsearch $i already running"
+				die "Cannot start Elasticsearch $i for tests"
+			else
+				einfo "Waiting for Elasticsearch $i"
+				eend 1
+				sleep 2
+				continue
+			fi
+		done
+
+		[[ $es_started -eq 0 ]] && die "Elasticsearch failed to start"
+	done
+
+	export TEST_ES_SERVER="localhost:${ES_PORT[local]}"
+	export REMOTE_ES_SERVER="localhost:${ES_PORT[remote]}"
+
+	# run tests
+	nosetests -v || die
+
+	for i in ${ES_INSTANCES}; do
+		pkill -F ${ES_PID[$i]}
+	done
+}
+
+python_install_all() {
+	use doc && local HTML_DOCS=( docs/_build/html/. )
+	doman docs/_build/man/*
+	distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+	ewarn ""
+	ewarn "For Python 3 support information please read: http://click.pocoo.org/latest/python3/"
+	ewarn ""
+	ewarn "Example usage on Python 3:"
+	ewarn "export LC_ALL=en_US.UTF-8"
+	ewarn "export LANG=en_US.UTF-8"
+	ewarn "curator ..."
+}


             reply	other threads:[~2021-03-09  9:44 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-09  9:44 Sam James [this message]
  -- strict thread matches above, loose matches on Subject: below --
2021-03-09  9:44 [gentoo-commits] repo/gentoo:master commit in: dev-python/elasticsearch-curator/ Sam James
2020-12-23  1:17 Thomas Deutschmann
2020-12-11 14:51 Michał Górny
2020-12-10 19:31 Thomas Deutschmann
2020-06-30  6:34 Agostino Sarubbo
2020-05-25 12:18 Mikle Kolyada
2020-04-23 13:06 Michał Górny
2020-03-27  8:58 Michał Górny
2019-10-28 14:43 Joonas Niilola
2019-08-16 13:50 Michał Górny
2018-12-17  1:03 Thomas Deutschmann
2018-11-17 14:27 Mikle Kolyada
2018-11-15 15:48 Thomas Deutschmann
2018-10-12  0:57 Thomas Deutschmann
2018-10-12  0:57 Thomas Deutschmann
2018-07-11  8:13 Tony Vroon
2018-05-11  8:35 Michał Górny
2018-05-11  8:35 Michał Górny
2018-04-23 14:32 Aaron Bauman
2018-01-31 22:10 Michał Górny
2018-01-31 22:10 Michał Górny
2017-11-30 14:47 Patrice Clement
2017-11-30 14:47 Patrice Clement
2017-11-13 15:41 Manuel Rüger
2017-11-07 22:59 Patrice Clement
2017-10-29 21:08 Thomas Deutschmann
2017-09-10 21:24 Patrice Clement
2017-09-10 21:24 Patrice Clement
2017-09-10 21:24 Patrice Clement
2017-08-14 21:41 Patrice Clement
2017-08-14 21:41 Patrice Clement
2017-07-08 21:35 Patrice Clement
2017-06-20  5:17 Agostino Sarubbo
2017-06-19 17:03 Agostino Sarubbo
2017-05-24 13:27 Michał Górny
2017-05-19 10:52 Michał Górny
2017-05-18 22:25 Michał Górny
2017-05-17 16:37 Patrick Lauer
2017-02-06 21:14 Göktürk Yüksek
2017-01-26  8:31 Göktürk Yüksek
2017-01-26  8:31 Göktürk Yüksek
2016-12-27 18:44 Göktürk Yüksek
2016-10-28 19:45 Patrick Lauer
2016-10-02 12:59 Göktürk Yüksek
2016-09-29 20:42 Patrice Clement
2016-09-02  5:26 Patrick Lauer
2016-08-16 17:59 Patrice Clement
2016-08-09  9:44 Patrick Lauer
2016-07-08 19:05 Patrice Clement
2016-07-08 19:05 Patrice Clement
2016-03-23 14:59 Patrick Lauer
2016-03-18 13:43 Patrice Clement
2016-03-18 12:23 Ian Delaney
2016-03-17 14:27 Patrick Lauer
2016-02-15 13:16 Patrice Clement
2016-02-15 13:16 Patrice Clement
2016-02-15 13:16 Patrice Clement
2015-11-23 11:32 Ian Delaney
2015-11-12  8:18 Ian Delaney
2015-11-11 14:15 Ian Delaney
2015-09-11  7:53 Justin Lecher
2015-09-10  6:26 Ian Delaney

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=1615283070.9a71c61b3bc4a73d43c693f68808077bfcd675d3.sam@gentoo \
    --to=sam@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