On Thu, 2022-07-21 at 23:53 +0200, Peter Boy wrote:
We decided to further discuss section 1.2 (File System and Storage Organization) on the mailing list to prepare a final decision next meeting.
The text on hackmd is for an unknown reason broken. Instead to spend time to repair it I’ve transferred the text to our team page, a task we had to do anyway.
You find the text at:
https://docs.fedoraproject.org/en-US/server-working-group/docs/server-techni...
Because it has not yet been finalized, it is not linked anywhere.
I have made some modifications to section 1.2 and taken up suggestions from Chris.
Some comments on our discussion and the draft.
I am convinced that a technical specification has to include a description and explanation of the properties and also a rationale if they are not self-explanatory. And the storage organization is on the one hand not self-explanatory and on the other hand one of the distinguishing features of Fedora Server.
A serious and genuine specification involves setting out goals and intentions and deriving technical properties from them (and justifying the effort involved). Otherwise, it would be a superfluous legitimization effort and a waste of time, which I would not be willing to do.
The design for Fedora.next was, broadly speaking, that the "goals and intentions" go in the PRD and the technical details in the tech spec. So, possibly, 'goals and intentions'-type text might want to go in the PRD rather than the tech spec. Having said that, on the whole I do like how you wrote 1.2.
Some other notes on the draft:
* Maximum image sizes are canonically defined in the "release blocking" page - https://docs.fedoraproject.org/en-US/releases/f36/blocking/ . Our sizes are already there. They shouldn't be duplicated in the tech spec. I know the current tech spec lists one, but that was a different situation at the time.
* "Package selection will be supplementary. There will be no option in the installer to install less than the Fedora Server Edition standard installation." This text from the original hasn't aged well; it's no longer actually true and has not been for a while. We should probably revise it.
* "Special Case CoreOS VM
Fedora CoreOS KVM VM image must be installable in a KVM virtual machine." - I'm unclear on this. What does it mean? What image? Why is it in the Server tech spec?
"...installable and usable right out of the box" requirements: these three (podman, systemd-nspawn and libvirt lxc) don't really seem in line with the rest of the spec. They're not *phrased* like things in a tech spec - a tech spec is meant to say "the product will use system X to provide capability Y". These are written more like vague release criteria. The *capability* provided by each of these things isn't explained, nor are there any details on quite what is meant by "usable right out of the box".
The entire Server Roles section seems awkward as it's a bit hard to write a faux-'tech spec' for something we haven't designed or developed yet. We did sort of do this with the original too, but at that time the plans for the original 'role' implementation were quite detailed and, if you look at the original tech spec, the specifications were quite precise and 'useful'. This new version doesn't really provide much precise, usable meat. If we want to revise the tech spec before we really have any concrete idea what Roles 2.0 is really going to look like, I would suggest just leaving the section out entirely for now.
Thanks for the work on this!