[ovs-dev] OVN/OVS code split: POC
Mark Michelson
mmichels at redhat.com
Fri Feb 22 21:15:27 UTC 2019
On 2/22/19 4:01 PM, Ben Pfaff wrote:
> On Mon, Feb 18, 2019 at 09:50:56AM -0500, Mark Michelson wrote:
>> Hi everyone,
>>
>> I have completed a *rough* POC of an OVN/OVS code split. You can find it at
>> https://github.com/putnopvut/ovn.git
>>
>> Please take a look at the README file since that highlights how the split
>> was done, as well as some known issues.
>>
>> My attitude towards this repo is that it is a throwaway prototype. It
>> essentially proves the concept that OVN can include OVS as a git subtree,
>> while not really attempting to do a production-ready job of
>> doing so. There is a lot of unfinished work.
>
> It looks like the sort of thing I'd expect to see.
>
> One thing I don't expect to see for a first cut or an nth cut is
> perfection. Stuff in corner cases is going to be broken. That's the
> nature of big changes. We'll fix them as we notice them.
>
> The manpages.mk errors are from the rule in the Makefile that tries to
> rebuild manpages.mk. That's why touching it helps, since it keeps the
> Makefile from trying to rebuild it.
>
> What do you think is your next step?
>
Hi Ben,
Thanks for the reply. My current step is to get buy-in for this
approach. If people have suggestions for improvement or outright
disapproval (with logical reasoning of course), then I'll iterate and
try to take those suggestions into consideration.
If people are 100% cool with the approach I've taken, then the next step
will be to come up with a plan to officially split the OVN code out from
OVS. It'll need a plan for a few reasons:
1) We'll need to get an official OVN repo to perform the work in.
2) We'll essentially need to have a "freeze" on OVN development during
the split. Otherwise, changes that occur between the start of the split
and the completion of the split could get lost. Or it will require some
porting of the changes between repos. Either way, not a fun task.
3) We'll want to have testing plans in place. Tests will need to be
focused on ensuring that OVN works with compatible versions of OVS.
Compatibility is something that we've avoided trying to make official
stances on, but that could be a sub-item to perform here as well.
4) We'll want to be sure we're all on the same page regarding when the
OVN split occurs. Will we do it at the same point that OVS 2.12 is being
released, or will we do it as soon as possible and have OVN start its
own versioning independent of OVS immediately?
Once all of the above are determined, then I think it's a matter of
essentially re-doing what I've done already, but in a more official
capacity (i.e. using an official repo, making more coherent commits,
ensuring builds work across platforms). Once there is a functioning repo
in which work can be done, we can work on the finer details (i.e.
removing additional irrelevant files, reworking documentation). And once
all of that is done, then I think the administrative details can become
important (i.e. determining committers, updating websites, mailing
lists, etc.)
Mark Michelson
More information about the dev
mailing list