log out if couch has most up-to-date commits.
3 files changed
tree: 10a5b297bec10f951d9187cb6e6ac4449ecedc74
  1. src/
  2. .gitignore
  3. bootstrap.js
  4. build.js
  5. config.json
  6. dashboard.js
  7. libraries.js
  8. package.json
  9. README.md
README.md

medic

Continuous integration setup for Apache Cordova

Giv'er

  1. VERY IMPORTANT: Customize the parameters laid out in the ./config.json file, especially the couch endpoint. If you're keen on getting to the data, contact me (@filmaj).
  2. sudo npm install
  3. node build.js to run the builds and listen for Cordova commits
  4. node dashboard.js to run the dashboard server summarizing test results

Requirements

Only tested on Mac OS 10.7.5.

  • git
  • node + npm
  • Necessary SDKs for the platforms you are building
  • Any provisioning profiles or certificates for the various platforms you want to test on
    • iOS stuff both installed locally for Xcode and Keychain, as well as the profiles deployed to the test devices. Fill out your keychain location (login.keychain) and your keychain password too!
    • Debug tokens installed to each BlackBerry Playbook or BB10 device (sorry, no OS 7 and earlier support)

How This Works

There are three components in this system: a build process, a web server acting as dashboard, and a couchdb.

  • a couchdb full of medic result docs, with currently three databases: mobilespec_results, cordova_commits and build_errors
  • dashboard.js: small node web server that aggregates data from the above couch
  • build.js: a node process that pings the git apache servers for updates to the Apache Cordova project repositories.
    • when it detects a new commit, it will run through and wrap up the Cordova test suite, mobile-spec, in each platform implementation currently supported
    • this version of mobile-spec will save results to couchdb

Supported Platforms

  • Android
  • iOS
  • BlackBerry (Playbook and BlackBerry 10)

License

MIT LICENSE