Skip to content

Instantly share code, notes, and snippets.

stage('Build application for beta') {
when {
expression {
return env.shouldBuild != "false"
}
}
steps {
sh "fastlane buildAppWithGym"
}
}
desc "Run unit and ui tests"
lane :runTests do
run_tests(
scheme: "MyAppScheme",
#code_coverage: true
)
end
desc "Create coverage html"
lane :createCoverageReport do
stage('Run Unit and UI Tests') {
when {
expression {
return env.shouldBuild != "false"
}
}
steps {
script {
try {
sh "fastlane runTests"
desc "Increment build number and commit changes to github"
lane :incrementBuildNumberAndCommit do
ensure_git_status_clean
build_number = increment_build_number
commit_version_bump(message: "[skip ci] Version Bump to #{build_number}")
push_to_git_remote()
end
stage('Increment build number') {
when {
expression {
return env.shouldBuild != "false"
}
}
steps {
sh "fastlane incrementBuildNumberAndCommit"
}
}
stage('Install Pods') {
when {
expression {
return env.shouldBuild != "false"
}
}
steps {
sh "pod install --deployment --repo-update"
}
}
lane :matchPopulateJenkinsKeychain do
register_devices(devices_file: "./fastlane/devices.txt")
match(
type: "adhoc",
app_identifier: [
"my.app.identifier"
]
)
match(
stage('Populate Jenkins Keychain') {
when {
expression {
return env.shouldBuild != "false"
}
}
steps {
sh "fastlane matchPopulateJenkinsKeychain"
}
}
docker pull jenkins/jenkins:2.180
docker run -d -v jenkins_home:/var/jenkins_home -p 8080:8080 -p 50000:50000 jenkins/jenkins:2.180