Hi, all:
Here is a patch for sysutils/fabric:
i) Update to 2.6.0
ii) Update DEPENDS
iii) Add do-test
It build well and run well and pass all tests on amd64-current system.
No other ports depends on it.
Comments ?
wen
Index: Makefile
===================================================================
RCS file: /cvs/ports/sysutils/fabric/Makefile,v
retrieving revision 1.10
diff -u -p -r1.10 Makefile
--- Makefile 1 Sep 2021 22:32:25 -0000 1.10
+++ Makefile 10 Sep 2021 13:00:02 -0000
@@ -1,14 +1,10 @@
# $OpenBSD: Makefile,v 1.10 2021/09/01 22:32:25 sthen Exp $
-BROKEN = requires update to fabric 2.x for python 3
-# N.B. commented-out in ../Makefile to avoid breaking dpb; if
updating/unbreaking, that must be reenabled.
-
COMMENT = simple, pythonic tool for remote execution and
deployment
-MODPY_EGG_VERSION = 1.14.0
-DISTNAME = Fabric-${MODPY_EGG_VERSION}
+MODPY_EGG_VERSION = 2.6.0
+DISTNAME = fabric-${MODPY_EGG_VERSION}
PKGNAME = ${DISTNAME:L}
-REVISION = 0
CATEGORIES = sysutils
@@ -20,15 +16,22 @@ MAINTAINER = Pablo Mendez Hernandez <pa
PERMIT_PACKAGE = Yes
MODULES = lang/python
-MODPY_VERSION = ${MODPY_DEFAULT_VERSION_2}
+MODPY_VERSION = ${MODPY_DEFAULT_VERSION_3}
MODPY_PI = Yes
MODPY_SETUPTOOLS = Yes
+MODPY_PYTEST = Yes
+
+RUN_DEPENDS = security/py-paramiko \
+ devel/py-invoke${MODPY_FLAVOR}
+TEST_DEPENDS = www/py-jinja2${MODPY_FLAVOR} \
+ devel/py-test-relaxed${MODPY_FLAVOR} \
+ devel/py-mock${MODPY_FLAVOR}
-RUN_DEPENDS = security/py-paramiko
-TEST_DEPENDS = devel/py-nose \
- security/sudo \
- www/py-jinja2
PORTHOME = ${WRKSRC}
+
+do-test:
+ @cd ${WRKSRC} && ${MODPY_BIN} -m pytest -v -rs \
+ -k 'not python_dash_m_acts_like_fab'
.include <bsd.port.mk>
Index: distinfo
===================================================================
RCS file: /cvs/ports/sysutils/fabric/distinfo,v
retrieving revision 1.5
diff -u -p -r1.5 distinfo
--- distinfo 28 Apr 2018 18:18:14 -0000 1.5
+++ distinfo 10 Sep 2021 13:00:02 -0000
@@ -1,2 +1,2 @@
-SHA256 (Fabric-1.14.0.tar.gz) = gVcgAqVism32V8oQ0Gtbz8b9VrUzdANzksg9SiFYII8=
-SIZE (Fabric-1.14.0.tar.gz) = 219294
+SHA256 (fabric-2.6.0.tar.gz) = R/GEsHAnJ5b9L58ENnmeGPLMuk7o7lh3lvyhkqzUbNI=
+SIZE (fabric-2.6.0.tar.gz) = 163880
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/sysutils/fabric/pkg/PLIST,v
retrieving revision 1.4
diff -u -p -r1.4 PLIST
--- pkg/PLIST 7 Jan 2017 12:55:14 -0000 1.4
+++ pkg/PLIST 10 Sep 2021 13:00:02 -0000
@@ -2,64 +2,48 @@
@conflict py-fabric-*
@pkgpath sysutils/py-fabric
bin/fab
-lib/python${MODPY_VERSION}/site-packages/Fabric-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/
-lib/python${MODPY_VERSION}/site-packages/Fabric-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/PKG-INFO
-lib/python${MODPY_VERSION}/site-packages/Fabric-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/SOURCES.txt
-lib/python${MODPY_VERSION}/site-packages/Fabric-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/dependency_links.txt
-lib/python${MODPY_VERSION}/site-packages/Fabric-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/entry_points.txt
-lib/python${MODPY_VERSION}/site-packages/Fabric-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/requires.txt
-lib/python${MODPY_VERSION}/site-packages/Fabric-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/top_level.txt
lib/python${MODPY_VERSION}/site-packages/fabric/
+lib/python${MODPY_VERSION}/site-packages/fabric-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/
+lib/python${MODPY_VERSION}/site-packages/fabric-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/PKG-INFO
+lib/python${MODPY_VERSION}/site-packages/fabric-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/SOURCES.txt
+lib/python${MODPY_VERSION}/site-packages/fabric-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/dependency_links.txt
+lib/python${MODPY_VERSION}/site-packages/fabric-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/entry_points.txt
+lib/python${MODPY_VERSION}/site-packages/fabric-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/requires.txt
+lib/python${MODPY_VERSION}/site-packages/fabric-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/top_level.txt
lib/python${MODPY_VERSION}/site-packages/fabric/__init__.py
-lib/python${MODPY_VERSION}/site-packages/fabric/__init__.pyc
lib/python${MODPY_VERSION}/site-packages/fabric/__main__.py
-lib/python${MODPY_VERSION}/site-packages/fabric/__main__.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/api.py
-lib/python${MODPY_VERSION}/site-packages/fabric/api.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/auth.py
-lib/python${MODPY_VERSION}/site-packages/fabric/auth.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/colors.py
-lib/python${MODPY_VERSION}/site-packages/fabric/colors.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/context_managers.py
-lib/python${MODPY_VERSION}/site-packages/fabric/context_managers.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/contrib/
-lib/python${MODPY_VERSION}/site-packages/fabric/contrib/__init__.py
-lib/python${MODPY_VERSION}/site-packages/fabric/contrib/__init__.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/contrib/console.py
-lib/python${MODPY_VERSION}/site-packages/fabric/contrib/console.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/contrib/django.py
-lib/python${MODPY_VERSION}/site-packages/fabric/contrib/django.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/contrib/files.py
-lib/python${MODPY_VERSION}/site-packages/fabric/contrib/files.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/contrib/project.py
-lib/python${MODPY_VERSION}/site-packages/fabric/contrib/project.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/decorators.py
-lib/python${MODPY_VERSION}/site-packages/fabric/decorators.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/docs.py
-lib/python${MODPY_VERSION}/site-packages/fabric/docs.pyc
+${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/fabric/${MODPY_PYCACHE}/
+lib/python${MODPY_VERSION}/site-packages/fabric/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/fabric/${MODPY_PYCACHE}__main__.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/fabric/${MODPY_PYCACHE}_version.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/fabric/${MODPY_PYCACHE}config.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/fabric/${MODPY_PYCACHE}connection.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/fabric/${MODPY_PYCACHE}exceptions.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/fabric/${MODPY_PYCACHE}executor.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/fabric/${MODPY_PYCACHE}group.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/fabric/${MODPY_PYCACHE}main.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/fabric/${MODPY_PYCACHE}runners.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/fabric/${MODPY_PYCACHE}tasks.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/fabric/${MODPY_PYCACHE}transfer.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/fabric/${MODPY_PYCACHE}tunnels.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/fabric/${MODPY_PYCACHE}util.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/fabric/_version.py
+lib/python${MODPY_VERSION}/site-packages/fabric/config.py
+lib/python${MODPY_VERSION}/site-packages/fabric/connection.py
lib/python${MODPY_VERSION}/site-packages/fabric/exceptions.py
-lib/python${MODPY_VERSION}/site-packages/fabric/exceptions.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/io.py
-lib/python${MODPY_VERSION}/site-packages/fabric/io.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/job_queue.py
-lib/python${MODPY_VERSION}/site-packages/fabric/job_queue.pyc
+lib/python${MODPY_VERSION}/site-packages/fabric/executor.py
+lib/python${MODPY_VERSION}/site-packages/fabric/group.py
lib/python${MODPY_VERSION}/site-packages/fabric/main.py
-lib/python${MODPY_VERSION}/site-packages/fabric/main.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/network.py
-lib/python${MODPY_VERSION}/site-packages/fabric/network.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/operations.py
-lib/python${MODPY_VERSION}/site-packages/fabric/operations.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/sftp.py
-lib/python${MODPY_VERSION}/site-packages/fabric/sftp.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/state.py
-lib/python${MODPY_VERSION}/site-packages/fabric/state.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/task_utils.py
-lib/python${MODPY_VERSION}/site-packages/fabric/task_utils.pyc
+lib/python${MODPY_VERSION}/site-packages/fabric/runners.py
lib/python${MODPY_VERSION}/site-packages/fabric/tasks.py
-lib/python${MODPY_VERSION}/site-packages/fabric/tasks.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/thread_handling.py
-lib/python${MODPY_VERSION}/site-packages/fabric/thread_handling.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/utils.py
-lib/python${MODPY_VERSION}/site-packages/fabric/utils.pyc
-lib/python${MODPY_VERSION}/site-packages/fabric/version.py
-lib/python${MODPY_VERSION}/site-packages/fabric/version.pyc
+lib/python${MODPY_VERSION}/site-packages/fabric/testing/
+lib/python${MODPY_VERSION}/site-packages/fabric/testing/__init__.py
+${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/fabric/testing/${MODPY_PYCACHE}/
+lib/python${MODPY_VERSION}/site-packages/fabric/testing/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/fabric/testing/${MODPY_PYCACHE}base.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/fabric/testing/${MODPY_PYCACHE}fixtures.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/fabric/testing/base.py
+lib/python${MODPY_VERSION}/site-packages/fabric/testing/fixtures.py
+lib/python${MODPY_VERSION}/site-packages/fabric/transfer.py
+lib/python${MODPY_VERSION}/site-packages/fabric/tunnels.py
+lib/python${MODPY_VERSION}/site-packages/fabric/util.py