QA/Browser Technologies/Services/Releases/BrowserID 07062012

From MozillaWiki
Jump to navigation Jump to search

Areas for QA Focus

[QA] Suggested additional areas of focus for QA:

  • primary flows - late landing fixes related to issue #1502 add risk
  • english language review - extensive copy updates occured, please verify
  • 123done and new watch api

Additional areas of focus

  • Verify clear, concise language across the entire UI
  • Verify the removal of the requiredEmail feature: http://beta.myfavoriteshow.org
    • Verify the removal in Dev as well: http://dev.myfavoriteshow.org
    • We should be able to deprecate these sites after this train moves through the environments and out into Production.
  • Verify changes to About, Terms of Service, Privacy pages
  • Verify fixes/updates to load_gen: local install and on Stage
  • Verify good usage/behavior on Windows Metro, XP/IE8, Win7/IE9, older Android devices, and iOS 5.x.

Information

  • Train 31: 07-06-2012

Links


  • New URL list/redirect for Stage:
    • diresworb.org should redirect to login.anosrep.org
      • for everything except verification requests
    • login.anosrep.org should replace diresworb.org
    • static.login.anosrep.org should be the location all resources are served from
    • verifier.login.anosrep.org should be the new verifier entry point
http://anosrep.org should HTTP redirect to https://login.anosrep.org
https://anosrep.org should HTTP redirect to https://login.anosrep.org
http://diresworb.org/verify SHOULD NOT REDIRECT
https://diresworb.org/verify SHOULD NOT REDIRECT
For all other urls on diresworb:
http://diresworb.org should HTTP redirect to https://login.anosrep.org
https://diresworb.org should HTTP redirect to https://login.anosrep.org
And, all static resources should serve from https://static.login.anosrep.org


  • Current URL list/redirect for Dev:
    • dev.diresworb.org will redirect to login.dev.anosrep.org
      • for everything but verification redirects
    • login.dev.anosrep.org will replace dev.diresworb.org
    • dev.anosrep.org will redirect to login.dev.anosrep.org
    • static.dev.anosrep.org will be where all resources are served from
    • verifier.dev.anosrep.org will be the new verifier entry point


  • Production URL list/redirect after this train goes out:
    • browserid.org should redirect to login.persona.org
      • for everything but verification requests
    • login.persona.org should replace browserid.org
    • static.login.persona.org should be the location all resources are served from
    • verifier.login.persona.org should be the new verifier entry point
http://persona.org should HTTP redirect to https://login.persona.org
https://persona.org should HTTP redirect to https://login.persona.org
http://browserid.org/verify SHOULD NOT REDIRECT
https://browserid.org/verify SHOULD NOT REDIRECT
For all other urls on browserid:
http://browserid.org should HTTP redirect to https://login.persona.org
https://browserid.org should HTTP redirect to https://login.persona.org
And, all static resources should serve from https://static.login.persona.org

REF for new URLs: https://github.com/mozilla/browserid/issues/1741

Deployment Ticket

  • Bug 771759 - QA and deploy BrowserID train-2012.07.06 to production

OPs Ticket and ChangeWindow

  • Services Maintenance/Change Window
    • TBD

Hot Fixes and Other Deployments

  • TBD

ChangeLog

train-2012.07.06:
* refinement of all user facing language: #1889, #1905, #1675, #1923, #1925
* requiredEmail feature removed: #1760
* A new /about page #1768
* watch() parameter - loggedInEmail renamed to loggedInUser #1805
* persona ToS / PP now displayed in dialog: #1240
* fix cases where redirection to website after verification would fail: #1860
* clean up console messages: #1518
* load_gen cleanup: #1278
* user interface improvements: #1777, #1661, #1433, #1548, #1774, #1721, #1826, #868, #1517, #1093, #1892, #1928
* updates to "key performance indicator": #1667, #1730
* test improvments: #1794, #1875, #1883
* code cleanup: #1778, #1756, #1748, #1849, #1852
* font licenses added to source tree: #1820
* load time performance improvements: #1793, #1851, #1861
* improvments to email provider API ("primary"): #1502
* security improvments - better random numbers: #1788
* Fix Persona on Windows Metro: #1867
* Fix dialog layout when rendered in a native webview on iOS: #1517

Travis/CI

  • Tests pass: run locally, so no link for this train

BID Automation

See the following site: https://wiki.mozilla.org/Identity/QA#BrowserID_Automation

Versions

Processes

  • webheads
    • /usr/bin/node bin/browserid
    • /usr/bin/node bin/verifier
    • /usr/bin/node /opt/browserid/lib/verifier/verifier-compute.js
    • /usr/bin/node /opt/browserid/lib/bcrypt-compute.js
    • /usr/bin/node bin/router
  • secure webheads
    • /usr/bin/node bin/dbwriter
    • /usr/bin/node /opt/browserid/lib/bcrypt-compute.js
  • keysigners
    • /usr/bin/node bin/keysigner
    • /usr/bin/node /opt/browserid/lib/keysigner/keysigner-compute.js
  • databases: various mysql processes
  • zeus: various zeus processes

Logs

  • webheads: /var/log/browserid/
    • browserid.log
    • browserid-metrics.json
    • verifier.log
    • verifier-metrics.json
    • verifier-compute.log
    • router.log
  • secure webheads: /var/log/browserid/
    • dbwriter.log
  • keysigners have /var/log/browserid/
    • keysigner.log
    • keysigner-compute.log
  • databases: n/a
  • zeus: various logs

Local Install - Unit Tests

  • Front-End Unit Tests: TBD
  • Back-End/Headless Unit Tests: TBD

Local Install - Load Test

  • Set 1 - TBD
    • Term1: CREATE_TEST_USERS=2000 BROWSERID_FAKE_VERIFICATION=1 NODE_ENV=test_mysql nohup npm start
    • Term2: nohup bin/load_gen -u 1/70 -m 70000 -o -s http://127.0.0.1:10002

Stage: Load Tests

  • Set 1: TBD

Sample Bug and Issue

New/Updated OPs Tickets and Issues

Bugzilla: https://bugzilla.mozilla.org/

  • Bug 771719 - Update registrar whois and upstream DNS to point to dynect instead of ns[1-3]mozilla.org
  • Bug 755795 - New DNS & SSL certs for the BrowserID rebrand
  • Bug 757705 - EV SSL cert for login.persona.org & related domains
  • Bug 710338 - Upgrade browserid.org SSL cert to EV or crazypants good level
  • Bug 772686 - New DNS and SSL certs are ready for BigTent
  • Bug 754926 - BigTent tracking - ProxyIdP for Persona
  • Bug 772281 - Re-issue the EV SSL Certificate for persona.org and add login.persona.org as a SAN
  • Bug 773094 - Deploy BigTent to stage with latest code
  • Bug 773103 - new redirects needed for persona.org urls
  • Bug 773483 - Update pencil to reflect browserid persona change

https://github.com/mozilla/browserid/issues

  • TBD

New/Updated APPs Tickets and Issues

Bugzilla: https://bugzilla.mozilla.org/

  • Bug 770418 - logging output is grody in identity/LogUtils.jsm
  • Bug 759452 - Persona passwords are not remembered
  • Bug 773023 - Email verification sent for existing BrowserID account

New/Updated Labs Tickets and Issues

Bugzilla: https://bugzilla.mozilla.org/

  • TBD

New/Updated Localization Tickets and Issues

Bugzilla: https://bugzilla.mozilla.org/

  • TBD

GitHub: https://github.com/mozilla/browserid/issues

  • 1960: L10n bugs in train-2012.07.06
  • 1961: Fix improper strings reported by our awesome l10n dudes.
  • 1962: don't use node-gettext
  • 1963: debug local doesn't properly translate our strings
  • 1969: Improved testing of l10n pipeline
  • 1970: enable debug 'locale' in our dev env
  • 1991: Localizing login.persona.org
  • 2006: it-ch/db-LB not working on ephemeral deployments when defined in aws.json
  • 2011: dev: if string is not localized, no string is displayed.

Resolved/Closed Bugs and Issues

Bugzilla: https:/bugzilla.mozilla.org/

  • TBD

GitHub: https://github.com/mozilla/browserid/issues

  • 135: Seems possible to temporarily hijack/piggyback on an account if its left open in browser

GitHub: https://github.com/mozilla/123done/issues

  • TBD

Reopened or Updated

Bugzilla: https://bugzilla.mozilla.org/

  • TBD

GitHub: https://github.com/mozilla/browserid/issues

  • 72: Mozilla Security Review of browserid
  • 796: Sign-in failure using Google Chrome Frame
  • 855: Mozillians: first time sign-in dialog provides confusing copy/labels with sign-in vs. new password
  • 1167: The new "requires cookies" message needs improvement.
  • 1667: Orphaned dialog KPI
  • 1702: Password change doesn't require password confirmation
  • 1755: Improve email inboxing
  • 1844: Opera 12 Freezes on Signin
  • 1870: identification fails on chrome for iOS (iPad/iPhone)
  • 1954: setting a timeout for provisioning of 20s

GitHub: https://github.com/mozilla/123done/issues

  • TBD

Opened Bugs/Issues For This Week

Bugzilla: https://bugzilla.mozilla.org/

  • TBD

GitHub: https://github.com/mozilla/browserid/issues

  • 1973: cross-origin issues with fonts redux
  • 1977: update browserid version in package.json
  • 1978: javascript error when checking address_info for unknown secondary
  • 2005: Sign In button becomes unresponsive after openig and closing a sign in dialog
  • 2008: Persona sign in page zoomed in when signing in from bugzilla.mozilla.org
  • 2010: Slow response when typing in the email field on FF mobile
  • 2023: Confusing UI on personas.org password reset
  • 2028: Email address is displayed as hint text in 'create password' field
  • 2038: redirect www.persona.org to login.persona.org
  • 2040: browserid metrics - referer not passed through
  • 2041: load_gen: certificates must be a non-empty array exception thrown

GitHub: https://github.com/mozilla/123done/issues

  • TBD

Other Open Bugs and Issues

Bugzilla: https://bugzilla.mozilla.org/

  • TBD

GitHub: https://github.com/mozilla/browserid/issues

  • 1964: IE8: Persona logo at bottom of /about page has border
  • 1965: Remove the border from the persona logo at the bottom of the /about page
  • 1966: Fix up controllers/rp_info front end tests in IE8. Only the assertion timeout check fails now.
  • 1967: mobile/main site: "Take the tour or sign up" looks ugly
  • 1968: Center the "take the tour or sign up" text so that it matches the text above it.
  • 1971: include.js should be generated
  • 1972: updating winchan to send a close command if w.close() fails
  • 1974: Add Persona sign in buttons to repo
  • 1975: state machine refactor
  • 1976: Implement age-neutral verification
  • 1979: perform rigorous validation on all API parameters, cleanup redundancy in sanitize.js and validate.js - issue #1526
  • 1980: Fix exception being thrown if KPI data is disabled.
  • 1981: improve validation of origin params to API calls
  • 1982: IE8 does not support max-age in cookies, making the cookie check cookie a session cookie.
  • 1983: eliminate redundancy in unit tests
  • 1984: Emphermeral deployments include a broken myfavoritebeer
  • 1985: add IdP protocol support for account provisioning flow and constrained RPs
  • 1986: unit test module names need updated to match directory structure
  • 1987: proposal: Confirm link should come first in verification emails
  • 1988: Fix list styling on Identity Blog
  • 1989: helpers.extend is dupe of _.extend
  • 1990: deprecate getVerifiedEmail
  • 1992: Password length is limited to 80 characters
  • 1993: Internal userid should not be exposed
  • 1994: Refactor domainFromEmail code
  • 1995: Define what a BrowserID email is and use our own regexp to enforce them
  • 1996: Fix cookie check cookie made into a session cookie in IE8
  • 1997: Update the cookies disabled copy
  • 1998: dev/staging: /cookies_disabled content collapsed on mobile
  • 1999: dev/staging: /unsupported_dialog not showing the firefox logo
  • 2000: Add the correct URL to the firefox logo.
  • 2001: wsapi fails with extra parameters are not allowed: email
  • 2002: [API] Need logo on IdP
  • 2003: Font issue on Chrome/Windows
  • 2004: Remove the extra "email" parameter sent to auth_with_assertion.
  • 2007: redirect timeout is sometimes first displayed with < 5 seconds.
  • 2009: Failure on Windows Phone 7: "Action: Establishing Relay Relay frame could not be found"
  • 2012: remove helpers.extend
  • 2013: Can't get past 'Checking with your email provider' on iOS
  • 2014: list_emails loop after BigTent auth
  • 2015: new regex for matching origins - issue #1981
  • 2016: log bad verifier assertions
  • 2017: add different callback and discourage onready()
  • 2018: Consistent "this request is taking a looooong time" message when signing in using a Google Apps email address
  • 2019: Minimalist implementation of support in core for Proxy IDP (a.k.a. "BigTent")
  • 2020: reset password links in email expire after one click
  • 2021: log reason for bad verifier assertion and increment statsd failure counter
  • 2022: Use npm-seal to verify dependencies in production
  • 2024: Make redirect countdown and redirect in sync

GitHub: https://github.com/mozilla/123done/issues

  • TBD

GitHub: https://github.com/mozilla/browserid-bigtent/issues

  • 52: Are BigTent sessions insecure?

Notes

  • Note 1 (lloyd)
    • We had set a target of July 4th for deployment of our Persona rebrand and a *pile* of new features. This date has been pushed to July 9th. Come monday afternoon (US pacific time) we hope to be live with new urls, new branding, and a pile of features which I'll recap on-list and we'll blog about in more detail the coming weeks.
    • Next up, beta date! We have moved our target date for the beta version of Persona to August 15th. This extra couple weeks will be used to give us a fighting chance at landing a couple extremely high priority features, as well as more time for final polish, translations, and to make this thing shine.
  • Note 2 (lloyd)
    • We've just cut train-2012.07.06 with a target production deployment date of july 18th.
    • This train, unlike its predecessor, is focused on UI refinement and stability fixes, rather than new features. We've reviewed every user facing phrase, we've fixed a mountain of UI problems and annoyances, and we continue to optimize the load performance of the service. For a full list of changes, refer to the changelog:
    • Matjaz: Let's extract some strings and let the translation party commence! NOTE: there are a LOT of changes this time around, and we expect about the same quantity of changes for the next train. We'll look to you for guidance on how to get these language changes in production without loosing locales.
    • Devs: Merge it up, merge it in, let the git pullin' begin - dev is open for business.