ofono

This set of pages is primarily focused on assisting new Ubuntu Touch oFono developers, packagers, testers, and bug triagers.

Contributing

Source Code

The version of ofono in 13.10 is based on ofono 1.12.

Master

We currently host Ubuntu's version of ofono/rilmodem at github ( https://github.com/rilmodem/ofono ) for ease of collaboration with upstream, and other projects using this code. We also maintain an auto-import bzr branch ( lp:~phablet-team/ofono/rilmodem ) that mirrors the github branch on Launchpad.

Debian Packaging

The packaging for ofono is currently maintained in bzr ( lp:~phablet-team/ofono/ubuntu ). This branch is a merge of the source code plus the Debian packaging, and is used to land new versions of ofono in the current development release of Ubuntu.

This branch is also covered by the Ubuntu CI infrastructure, so it can be automatically built, tested and merged after proper approving in the merge request itself (top approval by people with write permission).

Submitting Patches

Patches can be submitted by creating pull requests against the master branch of rilmodem/ofono. Before submitting, please understand that changes to this repository must be tested to ensure no regressions are introduced. For rilmodem-related changes, it's recommended that they be tested on at least one of the Nexus-based phones currently supported by Ubuntu Touch.

Also, please review oFono's top-level HACKING document, especially the section about Submitting Patches. One point not mentioned in this document is that ofono commit messages should be prefixed with the directory name involved ( eg. rilmodem:, atmodem:, plugins:, ... ) or build: for top-level changes.

Landing in Ubuntu

The ofono team uses the phone CI landing process:

citrain/LandingProcess

When a silo is allocated, it is the responsibility of the lander(s) specified in the spreadsheet to oversee testing of the silo, and when appropriate change the Testing Status column to indicate testing has passed ( by one or more developers ). If QA testing isn't required, then this triggers publishing. If QA testing is required, the silo is published when the assigned QA engineer marks the silo as tested.

Silo Testing

Silos should be tested against all supported devices. Each time a silo is tested, please use the ofono merge proposal for recording test pass comments. Be sure to include channel, image #, device, and SIM(s) used.

Silo testing should always include the basic tests as defined in the oFono test plan, dialer and messaging app autopilots tests, and one or applicable sub-sections of the test plan. For instance, if a bug has been fixed in the SIM subsystem, running the SIM tests would be required. In the same instance, running the call forwarding tests for a change to SIM code makes no sense.

So testing comments should look something like:

---

ubuntu-touch/ubuntu-rtm/14.09-proposed, #167, krillin

Ran basic, auto-pilot, and SIM tests from the ofono test plan.

Also confirmed bug fix by following steps in bug #XXXXXXX.

<any bugs filed during testing, other random notes/observations>

Image / Update Testing

When a candidate image is being vetted, the entire ofono test plan should be executed on each supported device, and a test report added to the oFono Test Reports page.

When OTA updates are vetted, the same rules that apply to silo testing should be followed.

Touch/Telephony/ofono (last edited 2014-11-27 11:15:01 by alfonsosanchezbeato)