diff --git a/dev-python/celery/Manifest b/dev-python/celery/Manifest new file mode 100644 index 0000000000..7443b7b5df --- /dev/null +++ b/dev-python/celery/Manifest @@ -0,0 +1 @@ +DIST celery-5.1.0_beta2.tar.gz 1459863 BLAKE2B 1b5a49728fa97e00112cc31731998ac06b2bb77ed621321b119d44d8cf0e4ec347d92b0857f316bda48f61a0ce0bd5c9d55392a8e3053369577d503af7aafc35 SHA512 d430a33cbc34950d68cf228707e8e868834f80a7f6c40491d8a67b056af5395c03e27c2b2ba1e2b9a390598d7d8bb3609bd88b388dfb18a34d0441ed54245192 diff --git a/dev-python/celery/celery-5.1.0_beta2.ebuild b/dev-python/celery/celery-5.1.0_beta2.ebuild new file mode 100644 index 0000000000..3f2f4e684b --- /dev/null +++ b/dev-python/celery/celery-5.1.0_beta2.ebuild @@ -0,0 +1,102 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" +DISTUTILS_USE_SETUPTOOLS=rdepend +PYTHON_COMPAT=( python3_{7,8} ) + +inherit bash-completion-r1 distutils-r1 eutils optfeature + +MYPV="${PV/_beta/b}" +DESCRIPTION="Asynchronous task queue/job queue based on distributed message passing" +HOMEPAGE=" + http://celeryproject.org + https://pypi.org/project/celery + https://github.com/celery/celery +" +SRC_URI="https://github.com/celery/celery/archive/v${MYPV}.tar.gz -> ${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64" +# There are a number of other optional 'extras' +IUSE="examples" +#RESTRICT="!test? ( test )" +RESTRICT="test" #'celery' not found in `markers` configuration option +S="${WORKDIR}/${PN}-${MYPV}" + +RDEPEND=" + >=dev-python/billiard-3.6.4.0[${PYTHON_USEDEP}] + =dev-python/click-7[${PYTHON_USEDEP}] + =dev-python/click-didyoumean-0.0.3[${PYTHON_USEDEP}] + >=dev-python/click-plugins-1.1.1[${PYTHON_USEDEP}] + >=dev-python/click-repl-0.1.6[${PYTHON_USEDEP}] + =dev-python/kombu-5[${PYTHON_USEDEP}] + dev-python/pytz[${PYTHON_USEDEP}] + >=dev-python/vine-5[${PYTHON_USEDEP}] + /dev/null) + + while [ -n "${PID}" ] && [ "${timeout}" -ge 1 ]; do + kill -0 ${PID} 2>/dev/null || break + kill -TERM "${PID}" + timeout=$((${timeout} - 1)) + sleep 0.5 + done + + [ "${timeout}" -lt 1 ] && return 1 + [ -f ${pidfile} ] && rm -f ${pidfile} + return 0 +} + +# celeryd +start_workers() { + yesno "${CELERYD_ENABLED}" || return 0 + + ${CELERYD_MULTI} start ${CELERYD_NODES} ${DAEMON_OPTS} \ + --pidfile="${CELERYD_PID_FILE}" \ + --logfile="${CELERYD_LOG_FILE}" \ + --loglevel="${CELERYD_LOG_LEVEL}" \ + ${CELERYD_OPTS} +} + +stop_workers() { + yesno "${CELERYD_ENABLED}" || return 0 + + local timeout=${STOPTIMEOUT:-"10"} + + ${CELERYD_MULTI} stop ${CELERYD_NODES} --pidfile="${CELERYD_PID_FILE}" || return 1 + + # Wait for each node + for node in ${CELERYD_NODES}; do + local pidfile=${CELERYD_PID_FILE/\%n/${node}} + local PID=$(cat "${pidfile}" 2>/dev/null) + while [ -n "${PID}" ] && [ "${timeout}" -ge 1 ]; do + kill -0 ${PID} 2>/dev/null || break + timeout=$((${timeout} - 1)) + sleep 0.5 + done + done + + [ "${timeout}" -lt 1 ] && return 1 + return 0 +} + +restart_workers() { + yesno "${CELERYD_ENABLED}" || return 0 + + ${CELERYD_MULTI} restart ${CELERYD_NODES} ${DAEMON_OPTS} \ + --pidfile="${CELERYD_PID_FILE}" \ + --logfile="${CELERYD_LOG_FILE}" \ + --loglevel="${CELERYD_LOG_LEVEL}" \ + ${CELERYD_OPTS} +} + +# celerybeat +start_beat() { + yesno "${CELERYBEAT_ENABLED}" || return 0 + + ebegin "Starting celerybeat" + ${CELERYBEAT} ${CELERYBEAT_OPTS} ${DAEMON_OPTS} --detach \ + --pidfile="${CELERYBEAT_PID_FILE}" + eend ${?} +} + + +stop_beat() { + yesno "${CELERYBEAT_ENABLED}" || return 0 + + ebegin "Stopping celerybeat" + if [ -f "${CELERYBEAT_PID_FILE}" ]; then + wait_pid "${CELERYBEAT_PID_FILE}" + else + ewarn "not running" + fi + eend ${?} +} + + +start() { + local cr=0 + + checkconfig || return 1 + + ebegin "Starting ${SVCNAME}" + eindent + + celery_chdir && \ + start_workers && \ + start_beat || cr=1 + + eoutdent + eend ${cr} +} + +stop() { + local cr=0 + + checkconfig || return 1 + + ebegin "Stopping ${SVCNAME}" + eindent + + celery_chdir + stop_workers || cr=1 + stop_beat || cr=1 + + eoutdent + eend ${cr} +} + +reload() { + local cr=0 + + checkconfig || return 1 + + ebegin "Restarting ${SVCNAME}" + eindent + + celery_chdir + restart_workers || cr=1 + stop_beat && start_beat || cr=1 + + eoutdent + eend ${cr} +} + +status() { + checkconfig || return 1 + + celery_chdir && \ + ${CELERYCTL} status +} diff --git a/dev-python/celery/metadata.xml b/dev-python/celery/metadata.xml new file mode 100644 index 0000000000..5f66fdc1c1 --- /dev/null +++ b/dev-python/celery/metadata.xml @@ -0,0 +1,12 @@ + + + + + comaintainers welcome + lssndrbarbieri@gmail.com + Alessandro Barbieri + + + celery + +