Difference between revisions of "Mozilla.com"

From MozillaWiki
Jump to: navigation, search
Line 15: Line 15:
= Projects  =
= Projects  =
* [https://wiki.mozilla.org/Mozilla.com/Bedrock Bedrock]: A new platform for mozilla.org in Python
* [https://wiki.mozilla.org/Mozilla.com/2011-Rebranding-Project 2011 Rebranding Project]: Merging sites under the .org domain name
* [https://wiki.mozilla.org/Mozilla.com/2011-Rebranding-Project 2011 Rebranding Project]: Merging sites under the .org domain name
* [https://wiki.mozilla.org/Mozilla.com/Tests Automated tests]: Writing Selenium tests to run in Jenkins to make sure the live site works as expected
* [https://wiki.mozilla.org/Mozilla.com/Tests Automated tests]: Writing Selenium tests to run in Jenkins to make sure the live site works as expected

Revision as of 15:10, 8 September 2011

mozilla.com was launched on November 29, 2005 with the Firefox 1.5 release with the goal of simplifying the experience of obtaining Mozilla products.

The mission of mozilla.com is to:

  • provide a quick and easy path for obtaining our software
  • educate visitors about the advantages of our software
  • connect users with other Mozilla web properties they may be looking for

The audiences for mozilla.com:

  • End users of Mozilla products (both consumers and power users)
  • Current Firefox and Thunderbird users looking for upgrade information
  • Visitors interested in information about Mozilla Corporation


  • Bedrock: A new platform for mozilla.org in Python
  • 2011 Rebranding Project: Merging sites under the .org domain name
  • Automated tests: Writing Selenium tests to run in Jenkins to make sure the live site works as expected
  • Newsletters: Responsys integration and a centralized email service


For Q2 the following projects are going on:

Execute Phase 1. of the .com/.org (including Europe) Firefox Product merge (goal: brand awareness, simplify # & version(s) of static product pages)

  • Complete content inventory & audit of pages on .com (including Europe) that will be redirected to .org
  • Redirect .com pages specified in the content inventory to .org
  • Complete IA review & user/design research & finalize revised IA for .com/.org (including Europe) merge (eliminating/retiring redundant or irrelevant content)
  • Begin (possibly complete) design update to .com skin that will become the new skin for all .org pages noted in the content inventory for this visual update
  • Analyze current workflows: http://etherpad.mozilla.com:9000/mozilla-com-dev-cycle
  • Continue discussing infrastructure & overall strategy that will inform Phase 2. of the .com/.org merge

(*Chrissie running content audit/inventory)

Produce Firefox Product pages that are Relative to Mobile Users (goal: produce an excellent mobile experience, reduce need to maintain separate mobile-only site)

  • Create design/coding standards for making sites mobile-friendly
  • Use metrics to determine pages to focus on
  • Begin implementing design/coding standards for mozilla.com

Improve mozilla.com automated test coverage

  • Deploy Raymond's tests and get them running on Hudson
  • Write tons of more tests

For background on these goals & projects check out Q2 onsite meetings.

And, see the following page for more general Q2 goals


Work is developed, tested, and reviewed on trunk, pushed to staging if needs thorough testing, and pushed to a production branch to go live.

We use the whiteboard to track SVN revisions. All the work for a bug is done in these revs. Example:

r=10000,10005,10010 b=trunk

"r" is a list of comma-delimited revision, and "b" is the branch they live on. If things have been pushed to stage, it would be a list of revs for the stage branch.

  1. dev works on a bug and makes a commit to trunk with bug number, updates/creates "r" field on bug's whiteboard field with the revision (r=#####), and possibly leaves revision in a comment for code review
  2. work is reviewed and when fixed, bug is marked "resolved fixed"
  3. add keyword "qawanted" to bug to move to testing
  4. bug is tested and re-opened if not fixed, marked "qa-verified-trunk" if fixed
  5. dev merges all changes into "stage" branch, updates whiteboard with staging revisions
  6. if change is a one-off, add keyword "push-needed" for immediate rollout
  7. bug is rolled out individually (push-needed) or with milestone (staging is merged onto production)
  8. and "push-needed" keywords are removed
  9. QA checks on production, marks "verified fixed"; if there's a problem, re-opens bug, dev might revert changes on production if problem is critical

Here are a few example SVN commands one might use:

commit to trunk (r100)
  svn commit -m 'bug 60000 - spread happiness around'

merge to staging (r50)
  svn merge --ignore-ancestry -c100,104 trunk tags/stage
  cd tags/stage && svn commit -m 'r100,104 from trunk for bug 60000'

merge to prod (r40)
  svn merge --ignore-ancestry -c50 tags/stage tags/prod
  cd tags/prod && svn commit -m 'r50 from staging for bug 60000'

revert on prod
  cd tags/prod && svn merge -c-40 .

The important point in this process is that the developer can commit what he/she wants to trunk, but he/she is responsible for merging those changes into stage to be rolled out.

QA usually tests on trunk (https://www-trunk.stage.mozilla.com/).

Mozilla.com SVN Source

The source behind mozilla.com (PHP, HTML, images, CSS, javascript, etc.) is hosted and managed in Subversion. For details merging from trunk to stage, see the SVN Guidelines.


See all bugs related to mozilla.com