Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 52 additions & 0 deletions .github/workflows/ios-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
name: iOS Build

on:
push:
branches:
- main
pull_request:
workflow_dispatch:

permissions:
contents: read
actions: write

jobs:
build:
runs-on: macos-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Fetch Dishtracker SDK dependency
env:
SDK_TOKEN: ${{ secrets.DISHTRACKER_SDK_TOKEN || github.token }}
run: |
GIT_TERMINAL_PROMPT=0 git clone --depth 1 \
https://x-access-token:${SDK_TOKEN}@github.com/MoonVision/ZeroQDishtrackerSDKiOS.git \
../ZeroQDishtrackerSDKiOS

- name: Build iOS app (unsigned)
run: |
xcodebuild \
-project DishtrackerCoreExample.xcodeproj \
-scheme DishtrackerCoreExample \
-configuration Release \
-sdk iphoneos \
-derivedDataPath build \
CODE_SIGNING_ALLOWED=NO \
CODE_SIGNING_REQUIRED=NO \
CODE_SIGNING_IDENTITY=""

- name: Package app artifact
run: |
mkdir -p artifacts
ditto -c -k --sequesterRsrc --keepParent \
build/Build/Products/Release-iphoneos/DishtrackerCoreExample.app \
artifacts/DishtrackerCoreExample.app.zip

- name: Upload app artifact
uses: actions/upload-artifact@v4
with:
name: DishtrackerCoreExample-iphoneos
path: artifacts/DishtrackerCoreExample.app.zip
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion="1540"
version="1.7">
<BuildAction
parallelizeBuildables="YES"
buildImplicitDependencies="YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting="YES"
buildForRunning="YES"
buildForProfiling="YES"
buildForArchiving="YES"
buildForAnalyzing="YES">
<BuildableReference
BuildableIdentifier="primary"
BlueprintIdentifier="F6D0D40727F64B84007E246A"
BuildableName="DishtrackerCoreExample.app"
BlueprintName="DishtrackerCoreExample"
ReferencedContainer="container:DishtrackerCoreExample.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
buildConfiguration="Debug"
selectedDebuggerIdentifier="Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier="Xcode.DebuggerFoundation.Launcher.LLDB">
<Testables>
</Testables>
</TestAction>
<LaunchAction
buildConfiguration="Debug"
selectedDebuggerIdentifier="Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier="Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle="0"
useCustomWorkingDirectory="NO"
ignoresPersistentStateOnLaunch="NO"
debugDocumentVersioning="YES"
debugServiceExtension="internal"
allowLocationSimulation="YES">
<BuildableProductRunnable
runnableDebuggingMode="0">
<BuildableReference
BuildableIdentifier="primary"
BlueprintIdentifier="F6D0D40727F64B84007E246A"
BuildableName="DishtrackerCoreExample.app"
BlueprintName="DishtrackerCoreExample"
ReferencedContainer="container:DishtrackerCoreExample.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</LaunchAction>
<ProfileAction
buildConfiguration="Release"
shouldUseLaunchSchemeArgsEnv="YES"
savedToolIdentifier=""
useCustomWorkingDirectory="NO"
debugDocumentVersioning="YES">
<BuildableProductRunnable
runnableDebuggingMode="0">
<BuildableReference
BuildableIdentifier="primary"
BlueprintIdentifier="F6D0D40727F64B84007E246A"
BuildableName="DishtrackerCoreExample.app"
BlueprintName="DishtrackerCoreExample"
ReferencedContainer="container:DishtrackerCoreExample.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
<AnalyzeAction
buildConfiguration="Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration="Release"
revealArchiveInOrganizer="YES">
</ArchiveAction>
</Scheme>
21 changes: 21 additions & 0 deletions DishtrackerCoreExample/Extensions/Location+Test.swift
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,27 @@ extension Location {
name: "Demo"
)

static let hellotessDev = Location(
locationID: "hellotess-dev",
name: "HelloTess Dev"
)

static let hellotessDevFeature = Location(
locationID: "hellotess-dev-feature",
name: "HelloTess Dev Feature"
)

static let dishtrackerCloudDemo = Location(
locationID: "dishtracker-cloud-demo",
name: "Dishtracker Cloud Demo"
)

static let dishtrackerCloudDemoMobile = Location(
locationID: "dishtracker-cloud-demo-mobile",
name: "Dishtracker Cloud Demo Mobile"
)
}

extension String {
static let authDev = "Bearer xxx"

Expand Down
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,10 @@ This is the SPM example app for [DishtrackerSDK for iOS](https://github.com/Moon
* Follow the steps in Xcode to clone and open the project.
* Build and run.

## CI Build Artifact

GitHub Actions produces an unsigned device build artifact (`DishtrackerCoreExample-iphoneos`) as a zipped `.app`. Download it from the workflow run artifacts and re-sign it if you plan to distribute it (for example, via Firebase App Distribution).

## License

This software is licensed under a [modified BSD license](LICENSE).
Expand Down