Update:Build Process

From MozillaWiki
Jump to: navigation, search
Ambox outdated.png THIS PAGE MAY BE OUTDATED
This article is in parts, or in its entirety, outdated. Hence, the information presented on this page may be incorrect, and should be treated with due caution until this flag has been lifted. Help by editing the article, or discuss its contents on the talk page.

This document outlines the build process for AMO.

This system may be expanded to other web properties, but for now it is AMO-specific.

  1. Alert IT of upcoming push at least 24 hours in advance
    • If pushing core changes (anything not look/feel) file an IT Request to load test
  2. Freeze code if not already done
  3. Checkout trunk
  4. Within trunk, cd bin and `./build.sh path_to_jre`
    • If jre is installed on your system (khan has it), path_to_jre should be `which java` (with backticks).
    • If not you should download a copy of jre from http://www.java.com/en/download/manual.jsp and use the path to the java binary (example: `./build.sh ../../jre#.#.#_##/bin/java`)
    • This file will do the following (in order):
      • Check the latest revision of trunk, the css files about to be compressed, and the js files about to be compressed
      • Write these to ../site/app/config/revisions.php as REVISION, CSS_REVISION, and JS_REVISION
      • Concatenate and minify jquery-compressed.js and addons.js into jquery.addons.min.js
      • Concatenate and minify type.css, color.css, screen.css, and print.css into style.min.css
      • Recompile all .po files (make sure there are no errors from this!)
  5. Check all modified code from ../site/ back into SVN
  6. Update the production external (/tags/prodexternal) with the current revision as per instructions in the SVN Guidelines
  7. File an IT Request to push to production with the desired time.