Monday, September 23, 2013

CloudBees Is Your Mobile CI Solution

We've invested a lot at CloudBees to make our hosted Jenkins service within DEV@cloud be the industry's best tool for mobile CI. This includes not just our own efforts, but the work we've been privileged to do with world class partners like SOASTA, New Relic, App.io, Sauce Labs, Vessel and others to make sure their mobile offerings work great with CloudBees. Along the way, we've learned a lot and Mark Prichard has been our untiring evangelist when it comes to creating and sharing information about mobile CI freely, with hundreds of developers in dozens of forums.

Today we're very proud to unveil two unique new resources for mobile developers:
  • Our new Mobile PaaS Resource Center on GitHub and expanded coverage for mobile CI in our developer portal. Whether you're looking for information on using CloudBees and partner technologies for iOS, Android or HTML5-based apps, this growing resource will get you going with end-to-end examples, full source and instant CI using ClickStarts.
  • Developer preview availability of hosted iOS Builds using Jenkins on DEV@cloud. If you're an iOS development shop, you probably have an OSX machine or two stowed away. You might even be using them with DEV@cloud using our On-Premise Executors feature. What we've consistently heard is that people want the same kind of fully managed DEV@cloud experience for iOS, though. Now you have it, together with the magic to properly automate iOS builds using Jenkins. We're making this capability available to a limited number of customers today, so please sign up if you're interested.
Mobile PaaS Resource Center

We hear plenty of noise in the mobile CI space, but frankly, not a lot of signal. MBaaS players tend to be concentrated on a specific service area or add another layer of API turtles to the problem, or both. Given Jenkins' popularity, they all play pretty well with it. What's missing for most of these folks are the broad platform capabilities of PaaS, where application logic can be woven together with the multiple backend services and data sources used by modern web apps. This is particularly true for enterprises, since their mobile offerings almost always interact with existing backend services in some fashion.



But if you're an enterprise embarking on mobile development, sorting out the typical native-versus-web technology choices and mastering an array of new technologies and services is just the beginning. You also want to figure out how to apply the practices you've built up over time to this new world. How do you work on (or even contract-out) front-end development, in coordination with in-house backend work done by multiple teams, and test multiple streams of development but let them progress at their own pace? The app on the mobile device might be making use of its native location service, but you need to interact with backend systems and services in your application logic so that, based on a location, you can update other systems or notify specific users of something relevant to them.

CloudBees new Mobile PaaS Resource Center gives you a detailed, working project, for both Android and iOS and provides you real-world patterns for how to solve these types of problems, and to use Jenkins CI most effectively in doing so. We've also included examples that use our new WEAVE@cloud integration capabilities to simplify data synchronization and to tie your RUN@cloud-based applications and services to mobile front-ends. Check it out!

Hosted OSX/iOS Builds on CloudBees

Android, given its use of Java for development, has always been a natural fit with CloudBees and our depth of investment in hosted Java development and deployment - and with Jenkins-CI of course. iOS has been more of a challenge. First, doing native iOS development requires you run on OSX-based Apple hardware to produce the binaries for iOS devices. Second, that means you either do builds and testing on your desktop (goodbye CI!), on in-house machines (goodbye cloud!) or you use a hosting service. We've done some of that ourselves and explained how you can use those services with our hosted Jenkins service. The problem with Mac hosting services is that you still need to administer and update those machines, and the degree of integration you can achieve with Jenkins is by necessity, arms-length. You also have to deal with key management and toolchain installations. Wasn't this the kind of crufty pain PaaS was supposed to relieve? What we wanted, and what our customers asked for, was the same kind of on-demand, fully managed experience for iOS builds as we currently offer for Linux-based environment in DEV@cloud. Now we have it, and you can sign up to try it out.



To be clear, what we've delivered here is a lot more than just hosting Apple hardware in a data center. First, the OSX Jenkins slaves are fully on-demand and elastic, so you get as many as you need when you need them. Second, we've done some serious magic behind the scenes to preserve state for you in this elastic environment. Thus, your cached libraries and other build/test-related componentry are preserved, speeding builds and tests. Look for us to be extending this capability even further, for customizable environments you can bring your own tools to. Now, even for OSX/iOS, you can go from code to delivery completely in the cloud.

Whether you're ramping up a mobile project or you're looking to streamline one with Jenkins and PaaS, CloudBees is your mobile CI solution!


-- Steven G. Harris
CloudBees, Inc.



Steven Harris is senior vice president of products at CloudBees. Follow Steve on Twitter.

No comments:

Post a Comment