diff --git a/devel/py-buildbot/Makefile b/devel/py-buildbot/Makefile index 82d27ac9be31..4c3d5c1fcd61 100644 --- a/devel/py-buildbot/Makefile +++ b/devel/py-buildbot/Makefile @@ -1,61 +1,65 @@ PORTNAME= buildbot -PORTVERSION= 3.5.0 +PORTVERSION= 3.7.0 CATEGORIES= devel python MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MAINTAINER= bofh@FreeBSD.org COMMENT= Continuous Integration Framework WWW= https://buildbot.net LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}alembic>=1.6.0:databases/py-alembic@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}autobahn>=0.16.0:www/py-autobahn@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}buildbot-www>0:devel/py-buildbot-www@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}dateutil>=1.5:devel/py-dateutil@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}Jinja2>=2.1:devel/py-Jinja2@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pyjwt>=0:www/py-pyjwt@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}sqlalchemy14>=1.3.0<1.5:databases/py-sqlalchemy14@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}twisted>=17.9.0:devel/py-twisted@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}txaio>=2.2.2:devel/py-txaio@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}yaml>0:devel/py-yaml@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}zope.interface>=4.1.1:devel/py-zope.interface@${PY_FLAVOR} TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}boto3>0:www/py-boto3@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}buildbot-pkg>0:devel/py-buildbot-pkg@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}lz4>=0:archivers/py-lz4@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}mock>=2.0.0:devel/py-mock@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}moto>0:devel/py-moto@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}parameterized>0:devel/py-parameterized@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pyjade>0:textproc/py-pyjade@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}treq>0:www/py-treq@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}txrequests>0:www/py-txrequests@${PY_FLAVOR} USES= cpe python:3.5+ USE_PYTHON= autoplist concurrent distutils USE_RC_SUBR= buildbot +USERS= ${PORTNAME} +GROUPS= ${PORTNAME} + NO_ARCH= yes SUB_LIST= PYTHON_CMD=${PYTHON_CMD} \ PYTHON_VER=${PYTHON_VER} # the directory was removed, but MANIFEST.in still references it # https://github.com/buildbot/buildbot/commit/9251a994e7ba5f8ab9e678b49920bdc38cd52b3d BUILDBOT_REMOVE_ME= ${PYTHONPREFIX_SITELIBDIR:S;${PREFIX}/;;}/buildbot/reporters/templates POST_PLIST+= fix-plist fix-plist: ${REINPLACE_CMD} -e 's|^${BUILDBOT_REMOVE_ME}$$||' ${TMPPLIST} post-install: ${RM} -r ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/buildbot/reporters/templates do-test: @cd ${WRKSRC} && PYTHONPATH=${WRKSRC} TZ=UTC ${LOCALBASE}/bin/trial-${PYTHON_VER} buildbot # Old invocation that we will probably need later # ${MKDIR} ${WRKDIR}/tmp # cd ${WRKDIR}/tmp && TZ=UTC LANG=C PYTHONPATH=${WRKSRC} ${PYTHON_CMD} -m twisted.trial buildbot.test .include diff --git a/devel/py-buildbot/distinfo b/devel/py-buildbot/distinfo index ba27d1e3e8f5..505573d92226 100644 --- a/devel/py-buildbot/distinfo +++ b/devel/py-buildbot/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1646763989 -SHA256 (buildbot-3.5.0.tar.gz) = c281877426a7e6a4e9d34b6836459af36d4481540cacf2be3965e8a857202034 -SIZE (buildbot-3.5.0.tar.gz) = 2450653 +TIMESTAMP = 1670858091 +SHA256 (buildbot-3.7.0.tar.gz) = 60c2d3d523fa35e9c9214553bebe7c195aed3571f0f9b85f80ca59bb7adebc6e +SIZE (buildbot-3.7.0.tar.gz) = 2459736 diff --git a/devel/py-buildbot/files/buildbot.in b/devel/py-buildbot/files/buildbot.in index c8b45f213cf3..74c4ebc47cba 100644 --- a/devel/py-buildbot/files/buildbot.in +++ b/devel/py-buildbot/files/buildbot.in @@ -1,56 +1,64 @@ #!/bin/sh # PROVIDE: buildbot # REQUIRE: DAEMON # KEYWORD: shutdown # # Add the following lines to /etc/rc.conf to enable buildbot: # buildbot_enable (bool): Set to "NO" by default -# buildbot_basedir (path): Must be set to the path of the buildbot directory -# file, e.g. /var/www/buildbot -# buildbot_user (str): Set to "root" by default. Change it to run -# buildbot as a different user. +# buildbot_basedir (path): Set to "/var/www/buildbot" by default +# buildbot_user (str): Set to "buildbot" by default. . /etc/rc.subr export PATH=${PATH}:%%PREFIX%%/bin name="buildbot" +desc="Buildbot Master" rcvar=buildbot_enable command="%%PREFIX%%/bin/buildbot-%%PYTHON_VER%%" load_rc_config $name +: ${buildbot_user:="buildbot"} +: ${buildbot_basedir:="/var/db/buildbot"} + check_cmd="${name}_check" extra_commands="check reload" reload_cmd="${name}_reload" start_precmd="${name}_prestart" stop_precmd="${name}_prestop" pidfile="${buildbot_basedir}/twistd.pid" procname="%%PYTHON_CMD%%" buildbot_check() { echo "Checking BuildBot config" rc_flags="${buildbot_basedir} ${rc_flags}" ${command} checkconfig ${rc_flags} } buildbot_prestart() { + if [ ! -f "${buildbot_basedir}/${name}.tac" ]; then + su -m ${buildbot_user} -c "exec ${command} create-master ${buildbot_basedir}" + fi + if [ ! -f "${buildbot_basedir}/master.cfg" ]; then + install -o ${buildbot_user} -g ${buildbot_user} -m 750 ${buildbot_basedir}/master.cfg.sample ${buildbot_basedir}/master.cfg + fi rc_flags="start ${buildbot_basedir} ${rc_flags}" } buildbot_prestop() { rc_flags="stop ${buildbot_basedir} ${rc_flags}" } buildbot_reload() { rc_flags="${buildbot_basedir} ${rc_flags}" ${command} sighup ${rc_flags} } run_rc_command "$1"