Drop us a line
CI/CD and want
to be featured
in our blog?
Top features of mobile CI that you need to try now
Nevercode is a continuous integration and delivery (CI/CD) service for mobile. It’s a tool that is packed with useful features to simplify and leverage the process of building mobile apps. Without delving into some of the most basic features, like builds triggered by events in your repository and notifications on build status changes, we have listed the top features every (potential) Nevercode user should know.
CI also for mobile SDKs and libraries
Not all mobile CI services support building SDKs and libraries. In addition to regular apps, you can use Nevercode to build and test your mobile SDKs and libraries. Considering that the library or SDK code can be reused, any issues that go undetected can affect several apps. So, don’t overlook the importance of implementing CI for your mobile SDK or library to get instant feedback and ensure high code quality.
Read more about how to set up continuous integration for mobile SDK with Nevercode.
Automatic setup with mobile CI
As you add a new app, Nevercode configures it automatically according to the project defaults. We require no YAML or other configuration files to set up a project, simply connect your repository and select which branches and projects to build. Any additional configuration can be managed through a clean, intuitive UI.
This definitely is one of the most useful features of Nevercode. By using workflows, you can set up several configurations of your app. This is useful if you want to maintain separate development, staging and master configurations of your app, for example, or test your app with different Xcode versions. Each workflow describes how your project is to be built, tested and published by Nevercode, requiring no manual configuration prior to build.
“Nevercode’s workflow is a killer feature” — Alvar Hansen, iOS developer
While you may not need code signing for development purposes, you will need to sign your apps to publish them to real users. Set up code signing for your app and we will automatically sign your app with every build.
For your Android app, all that is required is uploading a keystore file (see instructions here). There are several options for signing iOS apps, from uploading the signing files manually to setting up fastlane match for automatic signing files management (see instructions here).
“Code signing problems are solved — for real!“ — Mooncascade
Teams & team roles
Work conveniently in a team and assign each team member a role to ensure that things run smoothly. Team roles allow you to specify levels of user access to team and project settings and limit the range of actions a member can perform within the team. The available team roles are builder, member and admin, with builder having the lowest access level while admin has full access to all team and project settings.
Instead of running builds automatically in response to events in your repository or pressing the build button manually, you can set up scheduled builds and run the build at the time that is most convenient for you. For example, you can time the builds with large test suites on a night time to equip your testers with fresh builds by the beginning of work day.
Work smarter, not harder!
Automatic cancellation of pending builds
Those making several commits a day, each of which triggers a build, can make use of the Cancel pending builds option in build configuration. If enabled, Nevercode will automatically cancel all ongoing and queued builds triggered by webhooks on a branch when a new build for the same branch has been triggered. This way, you don’t have to wait for the triggered builds to be run while you only need the build triggered by the latest commit.
Extensive testing options and analytics
You can write your own UI, unit and instrumentation tests and Nevercode will run them with every build, showing you device logs and a test analytics report containing easy to grasp visuals (see also our supported test frameworks). But if you want to make sure that you deliver a truly high-quality app, test it on real devices with the AWS Device Farm integration for native iOS and Android and Firebase Test Lab for native Android.
In addition, there’s parallel testing to save you valuable development time. Use iOS test parallelization and test on up to 5 simulators at once, or take advantage of Android test sharding powered by Genymotion to run your test suite in up to 5 shards in parallel.
Environment variables and files
Environment variables and files let you customize almost every aspect of your Nevercode experience. From build versioning and platform-specific settings to custom build and test scripts, just upload the variables and files in your project settings on Nevercode. Here’s an overview of our environment variables and files functionality, but do take a look also at our magic variables for fine-tuned control over your project settings.
There is no need to burden yourself with notifying relevant people of a finished build. Nevercode can automatically distribute successful builds to your configured services, such as email, Slack, TestFairy or Beta by Crashlytics. We will also take care of releasing your app to the app store. Just configure publishing to TestFlight Beta Test in iTunes Connect or Google Play and you’re good to go! See the list of available publishing options here.
And while you’re at it, don’t forget to include your own custom release notes file with the build!
Static code analysis
To help you detect possible issues in the code early on in the development process without writing any tests, you can turn on Nevercode’s static code analysis powered by infer. Upon detecting any of the issue types that you have specified, static code analysis will fail the build and provide a report of the found issues.
We hope you enjoyed reading about Nevercode’s top features and found this post informative. But bear in mind that the list is inconclusive, we have much more to offer! Sign up for a free trial to try it out yourself.
Note: The availability of some features described here depends on the chosen plan.