https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=285253
--- Comment #17 from Martin Birgmeier <d8zne...@aon.at> --- I have now tried poudriere, here are some observations. They are surely limited by my short trials and resulting experience (I spent about 8 hours on the setup for building my list of ports). My build machines are VMs running under Linux/KVM because this server is not yet well supported by FreeBSD. They run stable/14 with a few minor local patches and are updated mostly when security fixes are announced. I ran release/release.sh to build the necessary tarballs for poudriere. The storage is on a separate server and uses ZFS extensively, with a setup geared towards efficient replication (for backup purposes). It is made available to the build machines using iSCSI (for the VM base disks) and NFS (for all other stuff, e.g., /usr/src, /usr/obj, /usr/ports, a download mirror, etc.). As far as I could find out, this setup does not fit well with what poudriere requires, which is basically a single machine with lots of cores and lots of ZFS disk space. However, this impression may be wrong due to me not knowing poudriere well enough. I circumvented this by giving my VMs an additional, RAM-based disk (Linux brd), on which I created the zpool for poudriere. This disk had 48 GB space. This worked quite well until it got to building node22 and rust. All other dependencies already having been built, this was now using 2 CPUs out of 16 available on the VM, one for each of these ports, and therefore taking very long. I killed the build and set ALLOW_MAKE_JOBS_PACKAGES="firefox llvm* node* rust thunderbird" in poudriere.conf. This now had the opposite effect, causing the VMs to start swapping. I think it would be good to have another option in poudriere to force a single build jail for certain ports, and this I would then set to exactly the same list, so that such ports are built using their full inherent parallel build options while not interfering with other concurrently running port builds. Ultimately and unsurprisingly, my 48 GB RAM disk ran full, at which point I stopped the experiment. One minor issue: It would be nice for 'poudriere config' to have an option to take the defaults from /var/db/ports. This would make it easier for me to use exactly the same options I am using with portmaster. I circumvented this by first finding out where poudriere stores the port configurations, then removing that, replacing it by a copy of /var/db/ports, and just to be on the safe side running 'poudriere config' again. I would appreciate getting some hints on how I could use poudriere in an optimal fashion with a split CPU/storage setup like mine. I assume this would also be useful when using docker images with the big three CSPs. My impression is that poudriere is an amazing piece of software which could benefit of being updated to be more cloud-compatible. Corrections and ideas are welcome. -- Martin -- You are receiving this mail because: You are the assignee for the bug.