Skip to content

sentry-demos/ios

Repository files navigation

Overview

An iOS app integrating Sentry to demo its various product features. See Empower: How to Contribute for more information.

Setup

  • Install XCode
  • In a terminal, run:
    • make init
    • sentry-cli login (see sentry-cli docs for more info) and use an org-level auth token from the demo org [or whatever org you applied to the .env file in the next step]
  • Open EmpowerPlant.xcodeproj. Open the .env file and provide valid values for SENTRY_ORG and SENTRY_PROJECT.

(Do this if you want to send events to a different org/project than the default)

  • Update the default DSN, located in AppDelegate.swift, to your new DSN

Run

Open EmpowerPlant.xcodeproj in Xcode and click the "Play" button or press ⌘R

Creating release and uploading app

  • Ensure the Info.plist has the version you want to release on the master branch (the release job can actually currently run off of any branch that's been pushed to GitHub but this is not recommended; perhaps in the future this can be disallowed by some option in the workflow YAML)
  • Go to the iOS demo repo's Actions area
  • Go to the Release action
  • Click "Run workflow" dropdown box on the right [The first "Run workflow" button
  • Enter the version number you want it to build and deploy and click "Run workflow" [The second "Run workflow" button

This runs the workflow defined in release.yml. It uses the secrets configured in the repo for SENTRY_AUTH_TOKEN, SENTRY_ORG, SENTRY_PROJECT for sentry-cli auth/upload, and the automatic ephemeral GITHUB_TOKEN for gh auth.

See https://github.com/sentry-demos/ios/releases/tag/0.0.1 for a sample release

Note: TDA must be restarted for it to pick up new version

TDA

The command that runs this in TDA can be found here: https://github.com/sentry-demos/empower/blob/a77428aec6cb8e6563caf3d9671419461946db2e/tda/conftest.py#L480-L514