Closed Bug 1450463 Opened 2 years ago Closed Last year

Funnelcake 135 - Facebook container

Categories

(Release Engineering :: Custom Release Requests, enhancement)

enhancement
Not set

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: groovecoder, Unassigned)

References

Details

Attachments

(1 file)

User Story:
As a non-Firefox user that is interested in the Facebook Container extension that only works with Firefox, I want an easy understandable way to download and install both.

Notes: 
The current process for a non-Firefox user that is interested in the Facebook Container extension is disjointed. We would like to streamline this user journey with a marketing landing page that offers a funnelcake that creates a unique firstrun experience on how to get the Facebook Container extension as soon as the Firefox installation is complete. We can do this by creating a funnelcake with a unique firstrun tab experience.

Acceptance criteria:
- Custom funnelcake build that directs Welcome URL to:
https://www.mozilla.org/en-US/firefox/59.0/whatsnew/?xv=facebook-container
- Leave Additional URL as it, for privacy notification.

The new Welcome URL will explain Facebook Container and have a button prompt to download the extension.

Plan:
- Deliver custom build by March 4, 2018
- Marketing Campaign launches March 4, 2018
If all we're doing is changing the welcome page, then this is just a standard funnelcake and there isn't really any installer work.
Component: Installer → Releases: Custom Builds
Depends on: 1450106
Product: Firefox → Release Engineering
QA Contact: jlund
That's correct, we just need the funnelcake to change the Welcome URL to the URL noted above.
(In reply to Luke Crouch [:groovecoder] from comment #0)
> Plan:
> - Deliver custom build by March 4, 2018
> - Marketing Campaign launches March 4, 2018

:groovecoder, I assume you mean April 4?

Who should create the funnelcake configs? :mkaply, is that you?
Flags: needinfo?(mozilla)
Flags: needinfo?(lcrouch)
Taking a stab at the configs.
Attachment #8964383 - Flags: review?(nthomas)
Yes, sorry - April 4.
Flags: needinfo?(lcrouch)
yep, that's pretty much it, although the numbers need some changes.

Do you know about this spreadsheet?

https://docs.google.com/spreadsheets/d/1gZ-GFyubAAlIxh-u-5SR52rqKKfBRLRuwrjSq97QkWA/edit#gid=0

Is this an actual test that needs a control?

Or just a special build?
Flags: needinfo?(mozilla)
No need for a control, just a special build.
> The new Welcome URL will explain Facebook Container and have a button prompt to download the extension.

I think the user will have to do an extra step to install because the install isn't from testpilot or addons.mozilla.org...
OK, dumb question. If we are going to do a custom marketing URL for the build anyway, why not just bundle the Facebook container extension directly?
(In reply to Mike Kaply [:mkaply] from comment #8)
> > The new Welcome URL will explain Facebook Container and have a button prompt to download the extension.
> 
> I think the user will have to do an extra step to install because the
> install isn't from testpilot or addons.mozilla.org...

Yeah, you're right - this is a known issue that we're trying to see if we can bypass with Moz.org via an iframe or other tbd clever solution, otherwise, there will indeed be an extra step.
(In reply to Mike Kaply [:mkaply] from comment #9)
> OK, dumb question. If we are going to do a custom marketing URL for the
> build anyway, why not just bundle the Facebook container extension directly?

That was what we wanted at first but then....

1. Clarification that the extension is and add-on, not part of Firefox's code, second chance to opt-in
2. Permissions have to be shown before installation of a extension and we can't do that if its bundled directly.
3. Step by step user journey so that someone understands when Firefox is installed and when the extension is (based on UR we know that some people aren't clear when even Firefox is installed)
> 
> Acceptance criteria:
> - Custom funnelcake build that directs Welcome URL to:
> https://www.mozilla.org/en-US/firefox/59.0/whatsnew/?xv=facebook-container
> - Leave Additional URL as it, for privacy notification.

Luke - 

Is the welcome page intended for /firstrun or /whatsnew? Our understanding is /firstrun 

Please confirm this is correct URL:

https://www.mozilla.org/en-US/firefox/59.0/firstrun/?xv=facebook-container
Flags: needinfo?(lcrouch)
(In reply to Eric Renaud [:erenaud] from comment #12)
> > 
> > Acceptance criteria:
> > - Custom funnelcake build that directs Welcome URL to:
> > https://www.mozilla.org/en-US/firefox/59.0/whatsnew/?xv=facebook-container
> > - Leave Additional URL as it, for privacy notification.
> 
> Luke - 
> 
> Is the welcome page intended for /firstrun or /whatsnew? Our understanding
> is /firstrun 
> 
> Please confirm this is correct URL:
> 
> https://www.mozilla.org/en-US/firefox/59.0/firstrun/?xv=facebook-container



/firstrun

Yes that the correct URL
Aki - based on Cherry's confirmation that the intended URL is /firstrun could you please update your PR?
Flags: needinfo?(aki)
Also the ID will need to be 135. 133 and 134 are already taken.
Updated.
Flags: needinfo?(aki)
Comment on attachment 8964383 [details] [review]
attempt at funnelcake configs

mkaply reviewed and merged the PR. 

Just want to check why we're targeting win32 only, not win64, mac, or linux. IIRC we're pushing win64 as the default download when www.m.o is loaded from a windows browser (via the stub installer, and appropriate hardware available). Has anyone talked to pmac et al about how they are going to handle downloads in Bedrock ?

en-US only makes sense in order to get this out ASAP.
Attachment #8964383 - Flags: review?(nthomas)
Do we have an answer to comment 17?
Flags: needinfo?(cpark)
We would like to have win64, mac and linux if it can be done in time.
Flags: needinfo?(cpark)
> We would like to have win64, mac and linux if it can be done in time.

That's just a build flag. No problem.
On mozilla.org, we currently only have the ability to serve funnelcakes for platforms with stub installers - win and win64. AFAIK, the only reason for this limitation is because we only know how to construct funnelcake URLs for stub installer links [1]. We could build support for funnelcakes for other platforms, but we'd need a download URL pattern similar to what we have for win/win64.

I'm unsure if we could add this functionality in time for this funnelcake - would depend on complexity.


[1] https://github.com/mozilla/bedrock/blob/master/bedrock/firefox/firefox_details.py#L281-L285
I created bouncer links for all platforms with the bouncer alias firefox-latest-f135 . This means links like

    https://download.mozilla.org/?product=firefox-latest-f135&os=win64&lang=en-US

for platforms linux, win32, win64, and osx.

We don't have stub installers here; not yet, at least.
Oh, ok. Previous funnelcakes have followed the stub-f{id} pattern. Is there a plan to create stub installer funnelcakes for this round or no?
Flags: needinfo?(aki)
Pretty sure we have previously used stub products in bouncer which actually pointed them at full installers.
To follow-up, switching to full installers for funnelcakes would be a non-negligible amount of work on the mozilla.org side. (Not a *huge* undertaking, but would be changing our default assumptions on/handling of funnelcakes.)

This can likely be done, but if it's a fairly easy thing to create funnelcake download links following the old stub-f* pattern, that would be preferable.

(In reply to Nick Thomas [:nthomas] (UTC+13) from comment #26)
> Pretty sure we have previously used stub products in bouncer which actually
> pointed them at full installers.

It doesn't really matter on the mozilla.org side what is actually downloaded - it's more about how we handle changing the links to bouncer.
Renamed to Firefox-stub-f135.
Flags: needinfo?(aki)
Cherry provided the info for https://bugzilla.mozilla.org/show_bug.cgi?id=1450463#c12.
Flags: needinfo?(lcrouch)
:aki - Thanks!

The entire process is up on a demo:

https://bedrock-demo-jpetto.oregon-b.moz.works/en-US/firefox/facebookcontainer/

Hitting that URL on Windows should download the funnelcake (directing you to /firefox/new/?f=135). I verified that installing/running the funnelcake opens the correct URL:

https://www.mozilla.org/en-US/firefox/59.0.2/firstrun/?xv=facebook-container

(This URL doesn't show the custom firstrun template, as it's not yet in production.) You can view the new /firstrun template here:

https://bedrock-demo-jpetto.oregon-b.moz.works/en-US/firefox/59.0.2/firstrun/?xv=facebook-container
Who's in charge of testing and deciding if/when to push live? Afaict everything is ready from both the web and releng sides.
Assignee: nobody → aki
We went live Friday afternoon to be ready for potential traffic coming in over the weekend.
I've re-generated funnelcake135 based on 59.0.3 build1, it's in 
 https://archive.mozilla.org/pub/firefox/candidates/59.0.3-candidates/build1/partner-repacks/funnelcake135/v1/

We missed the automated builds because of a config issue, fixed in https://github.com/mozilla-partners/funnelcake/commit/9bf1c695bbe4d524f6844779006b7f2ccadd0977

We can update bouncer to point at 59.0.3 once we ship the main build. I'll update our release checklist for that.
Do we have any idea how long we want to preserve the landing page for the Facebook container ? Ideally we do the right thing and serve the most recent version of Firefox from there.
Flags: needinfo?(lcrouch)
bumped the f135 bouncer entries for 59.0.3.
redirecting my needinfo to cherry ... how long do we want to preserve the landing page for Facebook container?
Flags: needinfo?(lcrouch) → needinfo?(cpark)
We'd like to keep it up as it is out in the wild. 

Can we update it for 60 in preparation for next week?
Flags: needinfo?(cpark)
In terms of user flow - what is at risk if we continue to keep the landing page live with the current funnelcake and do not update it with 60? 

Does the unique firstrun experience get overridden during installation with 60 GA's firstrun, or does the user get updated to 60 later after they get the funnelcake's unique firstrun?
I think the firstrun page would still be loaded for a 59.0.3-based funnelcake, and Firefox would start downloading an update to the newest release in the background (modulo update throttling, special cases and so on). In the past we have avoided serving older Firefox installs because of the inevitable security fixes in newer releases, and it can be jarring if there is a big UI update soon after the initial install.

It's probably not hard for us to automate rebuilding the funnelcake and updating the bouncer product (Firefox-stub-f135), and we can do some manual work for 60.0 in the meantime. Really just looking for some sort of estimate for how long we might support the container install flow, so that we can scope the amount of work needed.
Note to myself - https://www.mozilla.org/en-US/firefox/facebookcontainer/ is the entry point for this. If you're on !Firefox you get a Firefox download button that points eventually yields
  https://download.mozilla.org/?product=firefox-stub-f135&os=win64&lang=en-US
or just os=win for 32bit windows. Mac and Linux get vanilla Firefox (see comment #27).
I don't know who would make this call (probably by quorum), but we can update mozilla.org to be able to serve funnelcakes to other platforms. A bit of research would need to be done to determine level of effort, but I don't think it would be prohibitive.

If this funnelcake is going to be around for a while, and if maintaining funnecakes for multiple platforms is feasible, we can scope and schedule the work on the mozilla.org side.

Not trying to make more work for everyone, but it seems this container is a hit and might not be bad to get to more folks. :)
Hey Nick to follow-up maintenance wise, we will change the landing page prior to 61 in a way where a funnelcake will not be needed - so we will only need to scope for supporting through 60.
Flags: needinfo?(nthomas)
LMK when the build with 60 is ready and we'll update the download point on the landing page.
I updated the bouncer locations so they're pointing at Fx60.
Assignee: aki → nobody
ahh thank Aki, does that mean we're all set and do not need to do anything further on the landing page? https://www.mozilla.org/en-US/firefox/facebookcontainer/
Flags: needinfo?(nthomas) → needinfo?(aki)
I believe so.
Flags: needinfo?(aki)
Summary: Create custom funnelcake build that Deploys a new Welcome URL → Funnelcake 135 - Facebook container
60.0.1 shipped. I updated the funnelcake 135 locations for win32, win64, mac, and linux
Updated for 61.0.1.
Are we seeing many /firstrun impressions ? If I'm querying telemetry properly at https://sql.telemetry.mozilla.org/queries/57194 there aren't many users of this funnelcake, so something may be broken in the funnel.
Flags: needinfo?(cpark)
Marketing to this funnelcake has ended and we've found it to be a very expensive cost-per-download, we can stop maintenance and deprecate as the team tests other opportunities. Thanks all!
Flags: needinfo?(cpark)
Commits pushed to master at https://github.com/mozmeao/www-config

https://github.com/mozmeao/www-config/commit/54cdad55c62d9bad6563ee25649d07948fd3688a
[fix bug 1450463] Disable FB container funnelcake.

https://github.com/mozmeao/www-config/commit/747e1398057a2dd968eb3271c8531b26bb8c9ca5
Merge pull request #125 from jpetto/bug-1450463-disable-fbcontainer-funnelcake

[fix bug 1450463] Disable FB container funnelcake.
Status: NEW → RESOLVED
Closed: Last year
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.