[14:56] <meena> minimal: where even is get_partition_mbr_layout() called?
[14:58] <minimal> Hi. It, and get_partition_gpt_layout, are called when you specify partition(s) to be created
[15:00] <minimal> meena: https://github.com/canonical/cloud-init/blob/main/cloudinit/config/cc_disk_setup.py#L717
[16:01] <meena> what's get_dyn_
[16:01] <meena> get_dyn_func
[16:14] <minimal> https://github.com/canonical/cloud-init/blob/7368071568f444b576b49ffe9ef83e3928c9e8bb/cloudinit/config/cc_disk_setup.py#L434
[16:15] <minimal> so it calls either get_partition_mbr_layout() or get_partition_gpt_layout() depending on the value of table_typr
[16:26] <meena> minimal: ah, i thought it might be a python builtin
[16:39]  * meena sometimes feels like she doesn't know enough, and knows too much about Linux
[17:34] <minimal> meena: re disk_setup, does freebsd even have the various programs that this uses? 
[17:46] <meena> minimal: it's got equivalents in base, or you can install the others from ports
[17:50] <minimal> meena: ok, just wondering if it has ever been tested for FreeBSD, considering that the module is tagged as for all distros...
[17:51] <meena> https://man.freebsd.org/gpart(8) and the much much older https://man.freebsd.org/fdisk(8)
[17:52] <meena> minimal: i haven't, but i'd like to be able to provision VMs with extra storage
[17:52] <minimal> meena: but the module doesn't use gpart of fdisk, only sfdisk or sgdisk...
[17:52] <minimal> s/of /or /
[17:53] <minimal> so I guess the answer is it doesn't (currently) work for BSDs and so the ALL_DISTROS line should be changed
[17:54] <meena> yeah, I think i have a bug open for that
[17:54] <meena> or, you know, for implementing FreeBSD compatibility, at least
[17:54] <minimal> oh? don't think I noticed that, I searched launchpad recently for disk_setup bugs
[17:55] <meena> don't know enough about OpenBSD and NetBSD to implement those as well,
[17:56] <minimal> meena: BTW, for cc_ca_certs I have some FreeBSD support implemented (as part of a general overhaul of that module)
[17:56] <minimal> I hope to raise a draft PR maybe in the next week once I finish some local testing at which point I'd ask if you could test it for FreeBSD
[17:57] <meena> Nice
[17:57] <meena> !
[17:57] <minimal> there was a lot wrong with that module so I've been fixing it up
[17:57] <meena> I can imagine
[17:58] <minimal> the FreeBSD stuff is for FreeBSD 12 (12.2?) where the certctl tool was added
[17:58] <meena> I looked into fixing up the Puppet module back in the day, and gave up, mostly.
[17:59] <meena> yeah, but that's all supported FreeBSDs then? isn't it?
[17:59] <minimal> you tell me, you're the FreeBSD expert ;-)
[18:03] <meena> OpenBSD: https://man.openbsd.org/disklabel.8 i can only find interactive uses of this thing tho
[18:04] <meena> https://www.freebsd.org/where/ yupp, 11 is EOL
[18:09] <minimal> looks like gpart is the tool to use on FreeBSD
[18:11] <minimal> think I'm going to write a PR to add ALL_LINUX_DISTROS and ALL_BSD_DISTROS definitions in addition to the existing ALL_DISTROS
[18:27] <meena> I think i talked about this with blackboxsw? and he disagreed that it would be very useful, given how, once something doesn't work on one Linux distro, the implementations vary so widely
[18:29] <minimal> well I'm thinking of it in the context of changing cc_disk_setup from ALL_DISTROS now to ALL_LINUX_DISTROS as it (currently) obviously doesn't support BSD yet
[18:30] <meena> yeah, but, like, you could split that almost infinitely
[18:31] <meena> like, all debian distros, and then more specifically, all Ubuntu distros and so forth
[18:31] <minimal> yes, there are "family" definitions already in c-i
[18:31] <meena> I lost track of how rhel splits these days, with CentOS gone
[18:32] <meena> ah,
[18:32] <minimal> if you look in cloudinit/distros/__init__.py you'll see these
[18:32] <minimal> OSFAMILIES
[18:32] <minimal> including freebsd defined as freebsd and dragonfly