Solved Poudriere packaging failed at step "patch"

Hi All,

I'm trying to package via poudriere a soft to be able to install it from my repository.:
Unfortunately, the packaging not going well :/

after several try and some modifications, the process stuck at the "patch step".

Code:
[00:00:57] Built ports: net/py-netifaces
[00:00:57] Failed ports: net-mgmt/watcher:patch
[freebsd_11-1x64] [2019-06-09_17h02m54s] [committing:] Queued: 2  Built: 1  Failed: 1  Skipped: 0  Ignored: 0  Tobuild: 0   Time: 00:00:48
[00:00:57] Logs: /usr/local/poudriere/data/logs/bulk/freebsd_11-1x64/2019-06-09_17h02m54s
[00:00:57] WWW: http://fbsd-build.group.net/build.html?mastername=freebsd_11-1x64&build=2019-06-09_17h02m54s
[00:00:57] Cleaning up
[00:00:57] Unmounting file systems
ERROR: Job failed: exit status 1

Code:
===========================================================================
=======================<phase: extract-depends>============================
===========================================================================
=======================<phase: extract        >============================
===>  License BSD accepted by the user
===> Fetching all distfiles required by watcher-0.0.1u1 for building
===>  Extracting for netbox_watcher-0.0.1u1
=> SHA256 Checksum OK for watcher-0.0.1u1.tar.gz.
===========================================================================
=======================<phase: patch-depends  >============================
===========================================================================
=======================<phase: patch          >============================
Variable WRKSRC is recursive.

make: stopped in /usr/ports/net-mgmt/watcher
=>> Cleaning up wrkdir
===>  Cleaning for watcher-0.0.1u1
build of net-mgmt/watcher | watcher-0.0.1u1 ended at Sun Jun  9 17:03:46 UTC 2019
build time: 00:00:02
!!! build failure encountered !!!

I know the patch step applies any patches in the port to the extracted source code, so i dont know why this step failed...

Do you know where i can get more information about this kind of issue or how to debug poudriere ?

Best regards,
N.
 
Hi SirDice,

Yes correct, this is the new software I want to package.

Here's the Makefile:

Code:
PORTNAME =     watcher
PORTVERSION =     %%TAG%%
CATEGORIES =     net-mgmt
MASTER_SITES=    http://fbsd-build/group-tar/

MAINTAINER=    nuts.bastogne@gmail.com
COMMENT=    tool to check information from server

LICENSE=    BSD
LICENSE_FILE=    ${WRKSRC}/LICENSE

WRKSRC=        ${WRKSRC}/watcher

NO_ARCH=    yes
USES=        python:2.7

USE_PYTHON=     autoplist distutils

RUN_DEPENDS=    ${PYTHON_PKGNAMEPREFIX}yaml>0:devel/py-yaml \
        ${PYTHON_PKGNAMEPREFIX}requests>0:www/py-requests \
        ${PYTHON_PKGNAMEPREFIX}netifaces>0:net/py-netifaces \
        ${PYTHON_PKGNAMEPREFIX}idna>0:dns/py-idna \
        ${PYTHON_PKGNAMEPREFIX}certifi>0:security/py-certifi \
        ${PYTHON_PKGNAMEPREFIX}cchardet>0:textproc/py-cchardet \
        ${PYTHON_PKGNAMEPREFIX}click>0:devel/py-click \
        ${PYTHON_PKGNAMEPREFIX}urllib3>0:net/py-urllib3

.include <bsd.port.mk>

Zirias hi !
Yes I did it, it's where the second output comes from.
I also check directly on my poudriere-server at: /usr/local/poudriere/data/logs/bulk/freebsd_11-1x64/latest
But i didn't get a lot of information..
 
Sorry, didn't read up to the end.. well, compare

Variable WRKSRC is recursive.

to

WRKSRC= ${WRKSRC}/watcher

and the problem should be obvious.

In case it isn't, remember = in a Makefile is evaluated lazily, so this line would enter an infinite evaluation loop if make didn't catch the error in advance.

Btw, if the distribution file follows common conventions, you don't need to set WRKSRC at all, but it seems in your case, it doesn't use a version number, so you probably just meant ${WRKDIR}/watcher for the value. Oh and with a well-known license, it should be unnecessary to set LICENSE_FILE.

Final thought: I prefer to test a port directly with make fetch / extract / patch / ... commands and only try a poudriere build once this works.
 
Final thought: I prefer to test a port directly with make fetch / extract / patch / ... commands and only try a poudriere build once this works.
Yep, that's what I do to. I fiddle with it with the regular port commands and once I'm satisfied it works as it should I push it to Poudriere to run a couple of testports on it. Once that's worked out (usually pkg-plist issues) I'll do a package build run.
 
Thanks both of you for your answer and advices, i'll follow them and retry to package the new software !
 
Back
Top