← Back to team overview

launchpad-dev team mailing list archive

Re: Releasing features when they are done

 

On Mon, Aug 2, 2010 at 5:51 AM, Robert Collins
<robert.collins@xxxxxxxxxxxxx> wrote:
> This was talked about at the epic, and has - as far as I know -
> entirely firmed up into a pretty clear picture of what we need to do.
>
> This is a LEP about how we do feature work and get it out to users,
> and it interacts with many core things we do:
>
>  - deployments
>
>  - getting code reviewed and landed
>
>  - making DB changes
>
> https://dev.launchpad.net/LEP/ReleaseFeaturesWhenTheyAreDone is the LEP itself.
>
> I wanted to draw everyone's attention to it, because we can start
> using some of the subsections of this during 10.09, and iterate
> towards full conversion hopefully during the 10.10 cycle.
>
> The LEP breaks into three sections:
>
>  - feature flags
>
>  - doing QA on edge
>
>  - deploying to all appservers
>
>  - deploying to all instances daily or more often still
>

This is a helpful breakdown. I'm going to have a stab at putting it
onto the LEP as kind of a rough progress indicator. Please correct my
errors.

Actually, I've just skimmed through your follow-up email. I'll wait
for your update to the wiki page :)

>
> Feature flags are ready for use. They aren't *done* - there is ongoing
> work to make the facility more developer friendly, provide better
> querying and introspection and so on. To use them *today*, you need a
> branch built on db-devel. You will be able to use them in devel from
> the start of 10.09. This part is good-to-go.
>

Is there an example of their use already in code? Has anyone
volunteered to guinea pig (& perhaps document) the new facility?

> We're going to start doing QA on the branch (stable) rolled out to
> edge, before it gets rolled out. This is the
> https://dev.launchpad.net/MergeWorkflow. In the first case, we can
> start doing this as soon as the QA environment is setup;

I gather this is RT #40482 – staging-with-production-schema environment?

> Lastly, deploying daily or more frequently requires both feature flags
> and QA of stable to be done - once both those are in place, and the
> various RT tickets and cronscript bug are fixed, we can deploy the
> QA'd code to all our servers, and eliminate the 2-week average latency
> for deployment of fixes in the rest of the system. This is sadly the
> longest part of the pipeline to making this a reality: there are sadly
> 3 RT tickets and a possibly non-trivial bug to fix before we can do
> this.

The non-trivial bug is
https://bugs.edge.launchpad.net/launchpad-foundations/+bug/607391 ?

> I'd love it if we can start doing the bits that we can today, so that
> we learn about any issues early and can correct them before completely
> migrating across.

What specifically can we start doing today?

jml



Follow ups

References