Frank, +1 on your suggestions.
David, I applaud your effort to reduce the overhead for the community.

TL;DR Today I spend > 80% of my time getting OPNFV to run and I’d prefer to 
spend > 80% of my time running VNFs on OPNFV.

As a frequent user, use case 1 that Frank defined aligns with my primary goal 
for OPNFV.  “(1) User/consumer of a readily integrated NFV stack.”  The need 
for a working platform currently outweigh the need for additional features.  I 
suspect that as the platform and our use cases mature, some of the incremental 
features will become a higher priority.

With the one release every 6 months, I fear that I would have to carry a large 
patch set or something to have a functioning platform.

To add a little context to my reservations about the reduced number of 
releases, I’d like to share my experience below as an example of how the 
release cycle can impact users.  Please don’t read this as a complaint or 
detracting from the project’s progress and achievement.  The fact that we can 
run a 100% open source VIM and NFVI with a very limited staff is a minor 
miracle.  There may some other clever solutions.  Fatih and Jack have mentions 
some options that could help.

With the Arno, Brahmaputra and Colorado releases we would start downloading 
release candidates and kick the tires.  We try and look at multiple installers, 
but most of our time has been spent on Apex.

The RC installs almost never work.  About 1/3rd of these failures are due to 
hardware or user error that are not easy to debug.  For instance, a bad NIC on 
a compute node can cause the controller install to fail.  The rest are defects 
or documentation issues.

The1.0 release goes better. I can usually get a few patches into the first 
release to resolve critical issue and the community is working day and night to 
get the release out the door.

By the 2.0 release, most of the defects are fixed.  There are inevitably a few 
issues that take more than a month to root cause.  Some of these more 
challenging defects, which are often related to platform stability, cannot be 
fixed until the next release.  Resources are already focused on adding new 
features and do not have the time nor desire to backport these fixes.

The longest that I have kept an OPNFV Colorado instance running was 32 days.  
That required the Colorado 3.0 release, manually applying a few patches that 
will be in Danube and limiting the type activities.

Now we are preparing to kick the tires on Danube continue with difficulties 
keeping our lab running long enough to deploy an interesting use case.  In the 
meantime, we will continue to reinstall at least once a month and look forward 
to the Danube release.


Randy Levensalor | r.levensa...@cablelabs.com
CableLabs® | o 303.661.3455 | c 970.214.1316


From: <opnfv-tech-discuss-boun...@lists.opnfv.org> on behalf of "Frank 
Brockners (fbrockne)" <fbroc...@cisco.com>
Date: Thursday, February 16, 2017 at 1:36 AM
To: David McBride <dmcbr...@linuxfoundation.org>, OPNFV Tech Discussion 
<opnfv-tech-discuss@lists.opnfv.org>, "opnfv-project-le...@lists.opnfv.org" 
<opnfv-project-le...@lists.opnfv.org>
Subject: Re: [opnfv-tech-discuss] [release] E-release schedule

David,

thanks for the summary. Let’s remind ourselves, that in OPNFV we’re really 
trying to meet the needs of two different audiences: (1) User/consumer of a 
readily integrated NFV stack – as well as marketing operations (2) 
Developer/tester of an NFV stack. Audience #1 is mostly interested in 
stability, even if that means that things are released a little later (i.e. you 
build on long released components). Audience #2 is pushing the envelope and 
requires the ability to evolve/develop and integrate the latest set of 
components; once working they desire to release things to allow others to build 
on top; and move on/start over.

The current 1.0/2.0/3.0 was an effort to meet the needs of both audiences, i.e.

·         Have a “major” release.

·         Allow developers to release scenarios when they are ready and evolve, 
without too much of a maintenance burden.
This is also why we typically did not fix component versions for a release, but 
said: Based or ODL Boron or later.

I agree that releases are not free – especially the “major” release, because it 
comes with significant documentation and coordination needs. That said, it is 
mostly the “major” release with a lot of central coordination which creates 
efforts. Labeling and pushing an updated version of test results and 
documentation is relatively low effort – and can even be done by a scenario 
team. It does not even require central coordination. And our pipeline is now 
mature enough to do these things with low/moderate overhead.

So rather than move back in history and go back to a single release every 6 
months, which will make OPNFV a very inflexible organization for developers, I 
would strongly suggest that we rather consider evolving the current release 
process. IMHO we should be ready to have monthly micro-releases (scenario 
owners publish those scenarios which are “ready”, i.e. have docs ready and pass 
testing), and every 6 months we do a macro-release (with marketing/press 
announcement) which includes the set of scenarios which are “ready” by then. 
Macro-releases can be coupled to certain upstream component versions (as 
selection criteria for what is in/out of a macro release) – whereas 
micro-release would enjoy complete freedom.

Thoughts?

Thanks, Frank



From: David McBride [mailto:dmcbr...@linuxfoundation.org]
Sent: Mittwoch, 15. Februar 2017 20:26
To: TECH-DISCUSS OPNFV <opnfv-tech-discuss@lists.opnfv.org>; 
opnfv-project-le...@lists.opnfv.org
Cc: Frank Brockners (fbrockne) <fbroc...@cisco.com>; Tapio Tallgren 
<tapio.tallg...@nokia.com>
Subject: [release] E-release schedule

Greetings,

During the TSC call, yesterday, I took an action to start an email discussion 
about the schedule for the 
E-release<https://wiki.opnfv.org/display/SWREL/E-River>.

Specifically, I suggested that we just plan for a single release, rather than 
three releases, as we've done in the past.  Then, when the release date 
approaches, we evaluate whether we need a point release, then schedule it at 
that time.

Why?

  *   Scheduling three releases has created a lot of confusion with the project 
teams  The purpose of the three releases is to give project teams time to debug 
and fix scenarios that are not ready for 1.0.  They are not separate 
development timelines with separate release milestones.  However, many believe 
that it isn't necessary to meet release milestones, because they will simply 
shift to the 2.0 or 3.0 release.
  *   In the past two releases, the new content released in 2.0 has been 
minimal.  For example, for Colorado 2.0, just two new scenarios were released.  
Human nature is such that, given the opportunity for a later deadline, many 
will take it.
  *   Releases are not free.  In addition to the overhead required for 
labeling, creating ISOs, and updating documentation, projects that released in 
previous releases, are required to update their code for subsequent releases to 
resolve any issues, even if they weren't intending to do any additional work on 
that major release.  For example, let's say that a project releases in Danube 
1.0, they're satisfied with their effort, so they shift their focus to the 
E-release.  However, changes after 1.0 break their scenario.  So, suddenly, 
they find themselves working on Danube 2.0, even though they aren't releasing 
any new scenarios. This process repeats for Danube 3.0.
During the TSC call, it was suggested that a 2.0 or 3.0 release provides an 
opportunity to integrate a late release of a major upstream component (e.g. 
ODL).  However, this is counter to our previous agreement not to change major 
upstream components after the 1.0 release.  Unfortunately, this happened in 
Colorado and created significant disruption, including a slip in the 2.0 
release.

Per our discussion on Tuesday, I've created a wiki 
page<https://wiki.opnfv.org/display/SWREL/E-Release+Schedule+discussion> to 
capture pros and cons of various schedule options.  Feel free to edit it and 
add your thoughts.

David

--
David McBride
Release Manager, OPNFV
Mobile: +1.805.276.8018<tel:%2B1.805.276.8018>
Email/Google Talk: 
dmcbr...@linuxfoundation.org<mailto:dmcbr...@linuxfoundation.org>
Skype: davidjmcbride1
IRC: dmcbride
_______________________________________________
opnfv-tech-discuss mailing list
opnfv-tech-discuss@lists.opnfv.org
https://lists.opnfv.org/mailman/listinfo/opnfv-tech-discuss

Reply via email to