Skip to content
This repository was archived by the owner on Apr 11, 2023. It is now read-only.
This repository was archived by the owner on Apr 11, 2023. It is now read-only.

How To: Mapbox GL Native + Xcode #3

@roblabs

Description

@roblabs

Notes & reporting on how to do XCS Bots in mapbox/mapbox-gl-native-ios#493

XCS=1
XCS_INTEGRATION_NUMBER=4
CURRENT_PROJECT_VERSION=
MARKETING_VERSION=
XCS_PRIMARY_REPO_BRANCH=main
XCS_PRIMARY_REPO_TAG=
XCS_SOURCE_DIR=/Users/roblabs/Library/Caches/XCSBuilder/Bots/02f7e872890abff99af4bf2d5be25fbe/Source
XCS_PRIMARY_REPO_DIR=/Users/roblabs/Library/Caches/XCSBuilder/Bots/02f7e872890abff99af4bf2d5be25fbe/Source/mapbox-gl-native-ios
XCS_BOT_NAME=🗺mapbox mapbox-gl-native-ios main CI Bot
XCS_OUTPUT_DIR=/Users/roblabs/Library/Caches/XCSBuilder/Integration-496032c3ccd03a9c4755b9bd344aef21

System versions

# print Mac OS X operating system version information
sw_vers

ProductName: Mac OS X
ProductVersion: 10.15.7
BuildVersion: 19H2


# Xcode version & path
/usr/bin/xcodebuild -version
/usr/bin/xcode-select -print-path

Xcode 11.7
Build version 11E801a

/Applications/Xcode-11.7/Xcode.app/Contents/Developer


brew & gem dependencies

# Versions of build dependencies
brew list --versions carthage cmake ccache pkg-config glfw3
gem list xcpretty jazzy

carthage 0.36.0
ccache 3.7.11_1
cmake 3.18.2
glfw 3.3.2
pkg-config 0.29.2_3

xcpretty (0.3.0)
jazzy (0.13.5)


carthage dependencies

cat Cartfile

binary "https://api.mapbox.com/downloads/v2/carthage/mobile-maps-gl-core/mapbox-ios-sdk-gl-core-static.json" == 5.1.0
github "mapbox/mapbox-events-ios" ~> 0.10.5-beta.2


.netrc - Configure your secret Mapbox Access Token

# Does `.netrc` exist?  What are the R/W permissions
ls -l ~/.netrc  && stat -f '%A %N' ~/.netrc

-rw-r--r-- 1 roblabs staff 135 Sep 21 16:17 /Users/roblabs/.netrc
644 /Users/roblabs/.netrc


Mapbox.framework metadata

After make iframework you can check the Mapbox.framework metadata from Info.plist

# Version info from Mapbox.framework
# plutil -- property list utility
  # plutil -help
  # man plutil

plutil -convert json dynamic/Mapbox.framework/Info.plist -o Mapbox.framework.Info.json -r
# `json` depends on https://www.npmjs.com/package/json
#    npm install -g json
cat Mapbox.framework.Info.json | json CFBundleIdentifier
cat Mapbox.framework.Info.json | json CFBundleShortVersionString
cat Mapbox.framework.Info.json | json CFBundleVersion
cat Mapbox.framework.Info.json | json MGLSemanticVersionString
cat Mapbox.framework.Info.json | json MGLCommitHash

"CFBundleVersion" => "15256"
"CFBundleIdentifier" => "com.mapbox.Mapbox"
"CFBundleShortVersionString" => "6.3.0"
"MGLCommitHash" => "59702965fa"
"MGLSemanticVersionString" => "6.3.0-alpha.1"


Sample Reporting from Xcode

Integration Report
xcs-integration-report

Code Coverage
xcs-coverage

Test Report
xcs-tests

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationhow-toMore of a how-to rather than an issue

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions