Fork us on GitHub

Continuous Integration

Building enterprise mobile apps can be pretty challenging esp...

Continuous Integration

Picture
Building enterprise mobile apps can be pretty challenging especially when dealing with rapid changes, prototyping and corporate development requirements.
One of the tools that has really revolutionized this field is Jenkins and related CI tools that allow developers to instantly track failures back to a specific revision of their code commits with respect to QA work.

Codename One was essentially built for continuous integration since our build servers are effectively a building block for such an architecture. However, there are several problems with that the first of which is the limitation of server builds. If all users would start sending builds with every commit our servers would instantly become unusable due to the heavy load. To circumvent this we are now introducing CI support but only on the Enterprise level which allows us to stock more servers to cope with the rise in demand related to the feature.

To integrate with any CI solution just use our standard Ant targets such as
build-for-android-device , build-for-iphone-device etc. Normally, this would be a problem since the build is sent but since it isn't blocking you wouldn't get the build result and wouldn't be able to determine if the build passed or failed. To enable this just edit the build XML and add the attribute automated="true" to the codeNameOne tag in the appropriate targets. This will deliver a result.zip file under the dist folder containing the binaries of a successful build. It will also block until the build is completed. This should be pretty easy to integrate with any CI system together with our automated testing solutions .

This is just a first piece in what would hopefully be a larger piece of the puzzle e.g. running the automated tests on cloud devices using one of the device hosting services available. We will address those pieces based on demand/requirements from our enterprise users.

Notice: This post was automatically converted using a script from an older blogging system. Some elements might not have come out as intended.... If that is the case please let us know via the comments section below.

Share this Post:

Posted by Shai Almog

Shai is the co-founder of Codename One. He's been a professional programmer for over 25 years. During that time he has worked with dozens of companies including Sun Microsystems.
For more follow Shai on Twitter & github.