ciprian redinciuc continuous integration with jenkins for i os

Post on 01-Jul-2015

84 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

CodeCampIasi25Oct2014

TRANSCRIPT

Continuous Integration with Jenkins for iOS

Continuous Integration with Jenkins for iOS

• What is Continuos Integration?

• Why use Continuous Integration for an iOS project?

• What options do we have?

• Jenkins

• How to setup a Jenkins CI server for iOS

Do you want this to happen?

What is Continuous Integration?

Continuous Integration (CI) is a development practice that requires developers to integrate code into a shared repository several times a day.

Each check-in is then verified by an automated build, allowing teams to detect problems early.

OverviewRepository

Developers

CI Server Tests & Code Metrics

Build passes Distribution

Build fails Email issue

Why use Continuous Integration for an iOS

project?• We want to deliver quality products

• Detect defects as soon as they are introduced

• Speed up the build distribution

• Code metrics - poor, but it’s something

What options do we have?

• Xcode Server

• Travis CI

• Jenkins

• Other: Ship.io, Bamboo

Why Jenkins?

• Open source

• Big community

• Easy to setup plugins & scripts

• You can use it along other projects - an Android version of your app, for example

Jenkins job setup• Building: Xcode plugin

• Source code management: Git plugin

• Testing: xctool with JUnit reporting

• Code duplication: PMD 4.3 script

• Code coverage: gcovr script

• Lines of code metrics: sloccount script

• Build distribution: Crashlytics

Demo

Demo Review• Create a Jenkins job

• Checkout your source code repository

• Inject $PATH environment variable

• Test the project

• Compute metrics

• Build & Archive

• Build distribution

• Display metrics

Where can I find the tutorial?

https://github.com/nsagora/JenkinsCI-iOS

Questions & Feedback

Thank you!

Please fill the online evaluation form after the event.

top related