Files
MapLibreParticleLab/platform/ios/bitrise.yml
Minh Nguyễn b1518944a7 [ios, macos] Rewrote CI scripts
Broke up the iOS and macOS Bitrise scripts into several steps each for more granular progress and failure reporting and to take advantage of better error reporting in the built-in Bitrise steps. Added a step to deploy Xcode test results and (in the event of a failure) raw xcodebuild output to Bitrise.io, with a handy link from the Bitrise UI.
2016-09-28 09:44:19 -07:00

75 lines
2.8 KiB
YAML

---
format_version: 1.0.0
default_step_lib_source: https://github.com/bitrise-io/bitrise-steplib.git
trigger_map:
- pattern: "*"
is_pull_request_allowed: true
workflow: primary
workflows:
primary:
steps:
- script:
title: Check for skipping CI
inputs:
- content: |-
#!/bin/bash
if [[ -n "$(echo $GIT_CLONE_COMMIT_MESSAGE_SUBJECT | sed -n '/\[skip ci\]/p')" ||
-n "$(echo $GIT_CLONE_COMMIT_MESSAGE_SUBJECT | sed -n '/\[ci skip\]/p')" ||
-n "$(echo $GIT_CLONE_COMMIT_MESSAGE_BODY | sed -n 's/\[skip ci\]/p')" ||
-n "$(echo $GIT_CLONE_COMMIT_MESSAGE_BODY | sed -n 's/\[ci skip\]/p')" ]]; then
envman add --key SKIPCI --value true
else
envman add --key SKIPCI --value false
fi
- script:
title: Install Dependencies
run_if: '{{enveq "SKIPCI" "false"}}'
inputs:
- content: |-
#!/bin/bash
set -eu -o pipefail
brew install cmake
brew tap mapbox/homebrew-ios-sim-3
brew install mapbox/homebrew-ios-sim-3/ios-sim
- is_debug: 'yes'
- script:
title: Generate Workspace
run_if: '{{enveq "SKIPCI" "false"}}'
inputs:
- content: |-
#!/bin/bash
set -eu -o pipefail
export BUILDTYPE=Debug
make iproj
- is_debug: 'yes'
- xcode-test:
title: Run SDK Unit Tests
run_if: '{{enveq "SKIPCI" "false"}}'
inputs:
- project_path: platform/ios/ios.xcworkspace
- scheme: CI
- deploy-to-bitrise-io:
title: Deploy to Bitrise.io
run_if: '{{enveq "SKIPCI" "false"}}'
inputs:
- notify_user_groups: none
- slack:
title: Post to Slack
run_if: '{{enveq "SKIPCI" "false"}}'
inputs:
- webhook_url: "$SLACK_HOOK_URL"
- channel: "#gl-bots"
- from_username: 'Bitrise iOS'
- from_username_on_error: 'Bitrise iOS'
- message: '<${BITRISE_BUILD_URL}|Build #${BITRISE_BUILD_NUMBER}>
for <https://github.com/mapbox/mapbox-gl-native/compare/${BITRISE_GIT_BRANCH}|mapbox/mapbox-gl-native@${BITRISE_GIT_BRANCH}>
by ${GIT_CLONE_COMMIT_COMMITER_NAME}
passed'
- message_on_error: '<${BITRISE_BUILD_URL}|Build #${BITRISE_BUILD_NUMBER}>
for <https://github.com/mapbox/mapbox-gl-native/compare/${BITRISE_GIT_BRANCH}|mapbox/mapbox-gl-native@${BITRISE_GIT_BRANCH}>
by ${GIT_CLONE_COMMIT_COMMITER_NAME}
failed'
- icon_url: https://bitrise-public-content-production.s3.amazonaws.com/slack/bitrise-slack-icon-128.png
- icon_url_on_error: https://bitrise-public-content-production.s3.amazonaws.com/slack/bitrise-slack-error-icon-128.png