Date: Wed, 12 Aug 2020 12:38:06 +0000 (UTC) From: Dan Langille <dvl@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r544744 - in head/sysutils/py-mqttwarn: . files Message-ID: <202008121238.07CCc6D5048424@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: dvl Date: Wed Aug 12 12:38:06 2020 New Revision: 544744 URL: https://svnweb.freebsd.org/changeset/ports/544744 Log: Update t0 0.16.2 Now with Python 3 https://github.com/jpmens/mqttwarn/releases/tag/0.16.2 Differential Revision: https://reviews.freebsd.org/D24654 Added: head/sysutils/py-mqttwarn/files/mqttwarn.in (contents, props changed) head/sysutils/py-mqttwarn/files/patch-mqttwarn_examples_basic_mqttwarn.ini (contents, props changed) head/sysutils/py-mqttwarn/files/patch-setup.py (contents, props changed) Deleted: head/sysutils/py-mqttwarn/files/patch-mqttwarn.ini.sample head/sysutils/py-mqttwarn/files/patch-mqttwarn.py head/sysutils/py-mqttwarn/pkg-plist Modified: head/sysutils/py-mqttwarn/Makefile head/sysutils/py-mqttwarn/distinfo head/sysutils/py-mqttwarn/files/pkg-message.in Modified: head/sysutils/py-mqttwarn/Makefile ============================================================================== --- head/sysutils/py-mqttwarn/Makefile Wed Aug 12 10:58:12 2020 (r544743) +++ head/sysutils/py-mqttwarn/Makefile Wed Aug 12 12:38:06 2020 (r544744) @@ -1,57 +1,95 @@ # $FreeBSD$ PORTNAME= mqttwarn -DISTVERSION= 0.10.4 -PORTREVISION= 1 +DISTVERSION= 0.16.2 CATEGORIES= sysutils python +MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MAINTAINER= dvl@FreeBSD.org COMMENT= Subscribe to MQTT topics and notify pluggable services LICENSE= EPL -LICENSE_FILE= ${WRKSRC}/LICENSE -DEPRECATED= Uses deprecated version of python -EXPIRATION_DATE= 2020-08-15 +RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}six>=1.13.0:devel/py-six@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}paho-mqtt>=1.4.0:net/py-paho-mqtt@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}Jinja2>=2.10.1:devel/py-Jinja2@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}attrs>=19.3.0:devel/py-attrs@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}docopt>=0.6.2:devel/py-docopt@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}requests>=2.22.0:www/py-requests@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}future>=0.18.2:devel/py-future@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}configparser>=3.5.3:devel/py-configparser@${PY_FLAVOR} -RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}paho-mqtt>=0:net/py-paho-mqtt@${PY_FLAVOR} -RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}supervisor>=0:sysutils/py-supervisor@${PY_FLAVOR} +# based on setup.py : tests_require=extras['test'], +TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest>0:devel/py-pytest@${PY_FLAVOR} -USES= python:2.7 shebangfix -USE_PYTHON= flavors +USES= python shebangfix +USE_PYTHON= autoplist concurrent distutils SHEBANG_REGEX= '.*\.py$$' -USE_GITHUB= yes -GH_ACCOUNT= jpmens NO_ARCH= yes -OPTIONS_DEFINE= DOCS EXAMPLES +# Most of what is in setup.py under extras is supported. +# The following were omitted because their dependencies are not found in the +# FreeBSD port tree: AMQP APPRISE ASTERISK FBCHAT IOHUB NMA NSCA OSXNOTIFY PASTEBINPUB PROWL PUSHBULLET +# SLACK TOOTPASTE XIVELY XMPP +OPTIONS_DEFINE= DOCS EXAMPLES \ + APNS CELERY DNSUPDATE GSS GSS2 MYSQL POSTGRES REISPUB RRDTOOL \ + SERIAL SSH TWILIO TWITTER WEBSOCKET USERS= mqttwarn GROUPS= mqttwarn -SUB_FILES= pkg-message +SUB_FILES= pkg-message mqttwarn -post-patch: - @${REINPLACE_CMD} -e 's|MQTTWARN_LIBDIR|${PYTHON_SITELIBDIR}/${PORTNAME}/lib/|g' ${WRKSRC}/mqttwarn.ini.sample +APNS_DESC= Apple Push Notifications +CELERY_DESC= Asynchronous task queue/job queue +DNSUPDATE_DESC= DNS updates +GSS_DESC= Google Docs Spreadsheet +GSS2_DESC= Google Docs Spreadsheet 2 +MYSQL_DESC= MySQL plugin +POSTGRES_DESC= PostgreSQL Plugin +REISPUB_DESC= Publishes to a Redis channel +RRDTOOL_DESC= Updates a round robin database created by rrdtool +SERIAL_DESC= Serial port +SSH_DESC= ssh plugin +TWILIO_DESC= Use Twilio API to send messages +TWITTER_DESC= Notifications to Twitter accounts +WEBSOCKET_DESC= Websocket -do-build: - (cd ${WRKSRC} && ${PYTHON_CMD} -m compileall .) +APNS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}apns2>=2.0.1:devel/py-apns2@${PY_FLAVOR} +CELERY_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}celery>0:devel/py-celery@${PY_FLAVOR} +DNSUPDATE_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dnspython>=1.15.0:dns/py-dnspython@${PY_FLAVOR} +GSS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gdata>=2.0.18:devel/py-gdata@${PY_FLAVOR} +GSS2_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gspread>=2.1.10:net/py-gspread@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}oauth2client>=4.1.2:security/py-oauth2client@${PY_FLAVOR} +MYSQL_USES= mysql +POSTGRES_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}psycopg2>=2.7.4:databases/py-psycopg2@${PY_FLAVOR} +REISPUB_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}redis>=2.10.6:databases/py-redis@${PY_FLAVOR} +RRDTOOL_LIB_DEPENDS= librrd.so:databases/rrdtool +RRDTOOL_RUN_DEPENDS= rrdtool>0.1.12:databases/rrdtool +SERIAL_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pyserial>3.40:comms/py-pyserial@${PY_FLAVOR} +SSH_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}paramiko>2.4.1:security/py-paramiko@${PY_FLAVOR} +TWILIO_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}twilio>6.11.0:devel/py-twilio@${PY_FLAVOR} +TWITTER_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}python-twitter>=3.4.1:net/py-python-twitter@${PY_FLAVOR} +WEBSOCKET_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}websocket-client>=0.47.0:www/py-websocket-client@${PY_FLAVOR} -do-install: - ${MKDIR} ${STAGEDIR}/var/log/${PORTNAME} - ${INSTALL_SCRIPT} ${WRKSRC}/mqttwarn.py ${STAGEDIR}${PREFIX}/sbin/mqttwarn - (cd ${WRKSRC}/etc && ${COPYTREE_SHARE} . ${STAGEDIR}${ETCDIR}) - (cd ${WRKSRC}/services && ${COPYTREE_SHARE} . ${STAGEDIR}${PYTHON_SITELIBDIR}/${PORTNAME}/lib/services) - ${CP} ${WRKSRC}/mqttwarn.ini.sample ${STAGEDIR}${ETCDIR} +do-test: + @cd ${WRKSRC} && ${PYTHON_CMD} -m pytest -v -rs -o addopts= -do-install-DOCS-on: - @${MKDIR} ${STAGEDIR}${DOCSDIR} - ${INSTALL_DATA} ${WRKSRC}/README.md ${STAGEDIR}${DOCSDIR} +post-install: + ${INSTALL_SCRIPT} ${WRKDIR}/mqttwarn ${STAGEDIR}${PREFIX}/etc/rc.d + @${ECHO_CMD} "etc/rc.d/mqttwarn" >> ${TMPPLIST} -do-install-EXAMPLES-on: - @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} - (cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR}) + ${MKDIR} ${STAGEDIR}${ETCDIR} + ${INSTALL_SCRIPT} ${WRKSRC}/mqttwarn/examples/basic/mqttwarn.ini ${STAGEDIR}${ETCDIR}/mqttwarn.ini.sample + @${ECHO_CMD} "@dir ${ETCDIR}" >> ${TMPPLIST} + @${ECHO_CMD} "@sample(mqttwarn,mqttwarn,0640) ${ETCDIR}/mqttwarn.ini.sample" >> ${TMPPLIST} + + ${MKDIR} ${STAGEDIR}/var/run/mqttwarn + @${ECHO_CMD} "@dir /var/run/mqttwarn" >> ${TMPPLIST} + + ${MKDIR} ${STAGEDIR}/var/log/mqttwarn + @${ECHO_CMD} "@dir(mqttwarn,mqttwarn,) /var/log/mqttwarn" >> ${TMPPLIST} .include <bsd.port.mk> Modified: head/sysutils/py-mqttwarn/distinfo ============================================================================== --- head/sysutils/py-mqttwarn/distinfo Wed Aug 12 10:58:12 2020 (r544743) +++ head/sysutils/py-mqttwarn/distinfo Wed Aug 12 12:38:06 2020 (r544744) @@ -1,3 +1,3 @@ -TIMESTAMP = 1540990308 -SHA256 (jpmens-mqttwarn-0.10.4_GH0.tar.gz) = a93cd520e622f57f416e01909f807754c485511dbbb2970c85cd479a971fbf73 -SIZE (jpmens-mqttwarn-0.10.4_GH0.tar.gz) = 790670 +TIMESTAMP = 1596829490 +SHA256 (mqttwarn-0.16.2.tar.gz) = d20914858f2f5d2363debf9fc229dda78f9191f42982cdc960de2e4f20bd8950 +SIZE (mqttwarn-0.16.2.tar.gz) = 106511 Added: head/sysutils/py-mqttwarn/files/mqttwarn.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/py-mqttwarn/files/mqttwarn.in Wed Aug 12 12:38:06 2020 (r544744) @@ -0,0 +1,48 @@ +#!/bin/sh +# $FreeBSD$ + +# PROVIDE: mqttwarn +# REQUIRE: LOGIN cleanvar +# KEYWORD: shutdown + +# +# Add the following lines to /etc/rc.conf to enable mqttwarn: +# mqttwarn_enable (bool): Set to "NO" by default. +# Set it to "YES" to enable mqttwarn +# + +. /etc/rc.subr + +name="mqttwarn" +rcvar=${name}_enable + +pidfile="/var/run/${name}/${name}.pid" +mqttwarn_user="mqttwarn" +mqttwarn_command="%%PREFIX%%/bin/mqttwarn" +command="/usr/sbin/daemon" + +load_rc_config $name + +: ${mqttwarn_enable:=NO} +: ${mqttwarn_user:=mqttwarn} +: ${mqttwarn_group:=mqttwarn} +: ${mqttwarn_syslog_facility:=local3} + +start_precmd=mqttwarn_prestart + +# these environment varialbes need to be set or the app will fail to start. +mqttwarn_env="MQTTWARNINI='/usr/local/etc/mqttwarn/mqttwarn.ini' MQTTWARNLOG='/var/log/mqttwarn/mqttwarn.log'" + +mqttwarn_prestart() +{ + # create the file pid, and directory, with correct permissions + if [ ! -e ${pidfile} ]; then + install -o ${mqttwarn_user} -g ${mqttwarn_group} /dev/null ${pidfile}; + else + chown ${mqttwarn_user}:${mqttwarn_group} ${pidfile}; + fi +} + +command_args="-P ${pidfile} -t ${name} -T ${name} -l ${mqttwarn_syslog_facility} ${mqttwarn_command}" + +run_rc_command "$1" Added: head/sysutils/py-mqttwarn/files/patch-mqttwarn_examples_basic_mqttwarn.ini ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/py-mqttwarn/files/patch-mqttwarn_examples_basic_mqttwarn.ini Wed Aug 12 12:38:06 2020 (r544744) @@ -0,0 +1,12 @@ +# If we don't comment this out, the daemon will fail to start +--- mqttwarn/examples/basic/mqttwarn.ini.orig 2019-12-27 00:39:16 UTC ++++ mqttwarn/examples/basic/mqttwarn.ini +@@ -50,7 +50,7 @@ loglevel = DEBUG + ; -------- + + ; path to file containing self-defined functions for formatmap and datamap +-functions = 'samplefuncs.py' ++#functions = 'samplefuncs.py' + + ; name the service providers you will be using. + launch = file, log Added: head/sysutils/py-mqttwarn/files/patch-setup.py ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/py-mqttwarn/files/patch-setup.py Wed Aug 12 12:38:06 2020 (r544744) @@ -0,0 +1,156 @@ +# Fix the versions according to what has been tested to work +# change == to >= +--- setup.py.orig 2020-08-11 14:49:15 UTC ++++ setup.py +@@ -7,112 +7,112 @@ here = os.path.abspath(os.path.dirname(__file__)) + README = open(os.path.join(here, 'README.rst')).read() + + requires = [ +- 'six==1.13.0', +- 'paho-mqtt==1.5.0', +- 'jinja2==2.10.3', +- 'attrs==19.3.0', +- 'docopt==0.6.2', +- 'requests==2.22.0', +- 'future==0.18.2', +- 'configparser==4.0.2', ++ 'six>=1.13.0', ++ 'paho-mqtt>=1.4.0', ++ 'jinja2>=2.10.1', ++ 'attrs>=19.3.0', ++ 'docopt>=0.6.2', ++ 'requests>=2.22.0', ++ 'future>=0.18.2', ++ 'configparser>=3.5.3', + ] + + extras = { + 'amqp': [ +- 'puka==0.0.7', ++ 'puka>=0.0.7', + ], + 'apns': [ +- 'apns==2.0.1', ++ 'apns>=2.0.1', + ], + 'apprise': [ +- 'apprise==0.8.5', ++ 'apprise>=0.8.5', + ], + 'asterisk': [ +- 'pyst2==0.5.0', ++ 'pyst2>=0.5.0', + ], + 'celery': [ + 'celery', + ], + 'dnsupdate': [ +- 'dnspython==1.15.0', ++ 'dnspython>=1.15.0', + ], + 'fbchat': [ +- 'fbchat==1.3.6', ++ 'fbchat>=1.3.6', + ], + 'gss': [ +- 'gdata==2.0.18', ++ 'gdata>=2.0.18', + ], + 'gss2': [ +- 'gspread==2.1.1', +- 'oauth2client==4.1.2', +- #'google-api-python-client==1.7.11', ++ 'gspread>=2.1.1', ++ 'oauth2client>=4.1.2', ++ #'google-api-python-client>=1.7.11', + ], + 'iothub': [ +- 'iothub-client==1.1.2.0', ++ 'iothub-client>=1.1.2.0', + ], + 'mysql': [ + 'mysql', + ], + 'nma': [ +- 'PyNMA==1.0', ++ 'PyNMA>=1.0', + ], + 'nsca': [ +- 'pynsca==1.6', ++ 'pynsca>=1.6', + ], + 'osxnotify': [ +- 'pync==1.6.1', ++ 'pync>=1.6.1', + ], + 'pastebinpub': [ +- 'Pastebin==1.1.2', ++ 'Pastebin>=1.1.2', + ], + 'postgres': [ +- 'psycopg2==2.7.4', ++ 'psycopg2>=2.7.4', + ], + 'prowl': [ + 'prowlpy>=0.52', + ], + 'pushbullet': [ +- 'PushbulletPythonLibrary==2.3', ++ 'PushbulletPythonLibrary>=2.3', + ], + 'redispub': [ +- 'redis==2.10.6', ++ 'redis>=2.10.6', + ], + 'rrdtool': [ +- 'rrdtool==0.1.12', ++ 'rrdtool>=0.1.12', + ], + 'serial': [ +- 'pyserial==3.4', ++ 'pyserial>=3.4', + ], + 'slack': [ +- 'slacker==0.9.65', ++ 'slacker>=0.9.65', + ], + 'ssh': [ +- 'paramiko==2.4.1', ++ 'paramiko>=2.4.1', + ], + 'tootpaste': [ +- 'Mastodon.py==1.2.2', ++ 'Mastodon.py>=1.2.2', + ], + 'twilio': [ +- 'twilio==6.11.0', ++ 'twilio>=6.11.0', + ], + 'twitter': [ +- 'python-twitter==3.4.1', ++ 'python-twitter>=3.4.1', + ], + 'websocket': [ +- 'websocket-client==0.47.0', ++ 'websocket-client>=0.47.0', + ], + 'xively': [ + 'xively-python', + ], + 'xmpp': [ +- 'xmpppy==0.6.1', +- 'dnspython==1.16.0', ++ 'xmpppy>=0.6.1', ++ 'dnspython>=1.16.0', + ], + 'test': [ +- 'pytest==4.6.7', +- 'pytest-cov==2.8.1', ++ 'pytest>=4.6.7', ++ 'pytest-cov>=2.8.1', + 'lovely.testlayers>=0.7.1', +- 'tox==3.14.2', ++ 'tox>=3.14.2', + ], + } + Modified: head/sysutils/py-mqttwarn/files/pkg-message.in ============================================================================== --- head/sysutils/py-mqttwarn/files/pkg-message.in Wed Aug 12 10:58:12 2020 (r544743) +++ head/sysutils/py-mqttwarn/files/pkg-message.in Wed Aug 12 12:38:06 2020 (r544744) @@ -1,34 +1,16 @@ [ { type: install message: <<EOM -After installing mqttwarn for the first time, we recommend making the -following change to supervisord configuration settings: +After installing mqttwarn for the first time, we recommend the following: 1 - Add to /etc/rc.conf: -supervisord_enable="YES" -supervisord_config="%%PREFIX%%/etc/supervisord/supervisord.conf" +mqttwarn_enable="YES" -2 - Create this directory: +2 - Edit your configuration file -mkdir %%PREFIX%%/etc/supervisord +%%PREFIX%%/etc/mqttwarn/mqttwarn.conf -3 - Move the configuration file: - -mv -i %%PREFIX%%/etc/supervisord.conf %%PREFIX%%/etc/supervisord/ - -4 - Create %%PREFIX%%/etc/supervisord/mqttwarn.conf with the following content: - -[program:mqttwarn] -command = %%PREFIX%%/sbin/mqttwarn -user = mqttwarn -environment=MQTTWARNINI="%%PREFIX%%/etc/mqttwarn/mqttwarn.ini",MQTTWARNLOG="/var/log/mqttwarn/mqttwarn.log" - - -5 - Add this to the end of %%PREFIX%%/etc/supervisord/supervisord.conf - -[include] -files = mqttwarn.conf EOM } ]
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202008121238.07CCc6D5048424>