Most iocage functionality is broken on 14.0-CURRENT. For example: somers@methionine /u/h/s/s/r/bfffs (aio2) [1]> iocage list Run as root to automatically activate the first zpool! somers@methionine /u/h/s/s/r/bfffs (aio2) [1]> sudo iocage list Setting up zpool [zroot] for iocage usage If you wish to change please use "iocage activate" ******************************************************************************** fdescfs(5) is not mounted, performance may suffer. Please run: mount -t fdescfs null /dev/fd You can also permanently mount it in /etc/fstab with the following entry: fdescfs /dev/fd fdescfs rw 0 0 ******************************************************************************** Setting up zpool [zroot] for iocage usage If you wish to change please use "iocage activate" Setting up zpool [zroot] for iocage usage If you wish to change please use "iocage activate" Setting up zpool [zroot] for iocage usage If you wish to change please use "iocage activate" Setting up zpool [zroot] for iocage usage If you wish to change please use "iocage activate" Setting up zpool [zroot] for iocage usage If you wish to change please use "iocage activate" Setting up zpool [zroot] for iocage usage If you wish to change please use "iocage activate" +-----+-------+-------+--------------+--------------+ | JID | NAME | STATE | RELEASE | IP4 | +=====+=======+=======+==============+==============+ | 391 | j13_0 | up | 13.0-RELEASE | 192.168.0.44 | +-----+-------+-------+--------------+--------------+ Note the excessive "Setting up zpool ..." messages. The problem is a bug in ioc_json.py. It runs a zfs command with illegal syntax that is still accepted by ZFS as of FreeBSD 13.1, but not by 14.0-CURRENT: zfs get -pHo 'property, value' all zroot Not the space in between "property" and "value". The offending code has been removed from iocage's main repository, so simply updating the port will probably suffice to fix the problem.
@Alan: Well, simply updating is easier said than done, as the latest release upstream tagged is actually 1.2 (same version as the port). So first we would have to decide which commit to target (or ask upstream to tag a release) and then do extensive testing, as the target platform seems to be an iXsystems product and not vanilla FreeBSD (at least in the past it could break in various ways on update). So maybe patching the existing 1.2 port is the more realistic short-term solution. Do you have the time/resources to test devel/iocage-devel and see if that works for you/is stable?
Yes, sysutils/iocage-devel seems to work fine.
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=4424f1369175cbeae6e71a830cb0742290384c51 commit 4424f1369175cbeae6e71a830cb0742290384c51 Author: Michael Gmelin <grembo@FreeBSD.org> AuthorDate: 2022-05-09 15:31:55 +0000 Commit: Michael Gmelin <grembo@FreeBSD.org> CommitDate: 2022-05-09 15:34:16 +0000 sysutils/iocage: Fix on 14.0-CURRENT Fix deprecated zfs syntax that became illegal. PR: 263823 Reported by: asomers sysutils/iocage/Makefile | 2 +- sysutils/iocage/files/patch-iocage__lib_ioc__json.py (new) | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-)
(In reply to Alan Somers from comment #2) Hi Alan, I fixed the problem you've reported (thanks!) with a local patch for the time being, as I'm not sure how far your testing of iocage-devel went (like, upgrading existing/more complex setups, or if it was just limited to seeing if this specific problem persists). I'm a bit unclear what's the best way forward with sysutils/iocage, given that there is no publicly perceivable release process and we already have iocage-devel, which is based on "random" commits. Until I have a sound solution, I'll try to keep 1.2 stable (as in: users shouldn't be afraid that `pkg upgrade` will damage their setup).
Hi, I created https://github.com/iocage/iocage/issues/1279 16 days ago. No feedback so far from the iocage side. Good catch Alan, I overlooked the space when I had a look at this. Bye, Alexander.
Closing, as fixed in ports