Overview
iOS/macOS modules lack automated CI/CD, unlike desktop and Android which have comprehensive GitHub Actions workflows.
Current State
Existing CI/CD:
- ✅ Desktop:
.github/workflows/main.yml (Maven build, test, deploy)
- ✅ Android:
.github/workflows/android.yml (Gradle build, test, APK upload)
- ❌ iOS/macOS: Manual build only
Proposed Workflow
File: .github/workflows/ios.yml
name: iOS CI
on:
push:
branches: [ main ]
paths:
- 'jnexus-ios/**'
pull_request:
branches: [ main ]
jobs:
build-ios:
runs-on: macos-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Xcode
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: '15.0'
- name: Build iOS
run: |
cd jnexus-ios
xcodebuild -scheme JNexus-iOS -destination 'platform=iOS Simulator,name=iPhone 15' build
- name: Build macOS
run: |
cd jnexus-ios
xcodebuild -scheme JNexus-macOS -destination 'platform=macOS' build
- name: Run Tests
run: |
cd jnexus-ios
xcodebuild test -scheme JNexus-iOS -destination 'platform=iOS Simulator,name=iPhone 15'
- name: Archive iOS App
if: success()
run: |
cd jnexus-ios
xcodebuild -scheme JNexus-iOS -archivePath build/JNexus.xcarchive archive
- name: Upload iOS Archive
uses: actions/upload-artifact@v4
with:
name: jnexus-ios
path: jnexus-ios/build/JNexus.xcarchive
retention-days: 30
Benefits
Blockers
Priority
Medium - iOS code works, but lacks CI verification
Related
Overview
iOS/macOS modules lack automated CI/CD, unlike desktop and Android which have comprehensive GitHub Actions workflows.
Current State
Existing CI/CD:
.github/workflows/main.yml(Maven build, test, deploy).github/workflows/android.yml(Gradle build, test, APK upload)Proposed Workflow
File:
.github/workflows/ios.ymlBenefits
Blockers
continue-on-error: truefor tests temporarilyPriority
Medium - iOS code works, but lacks CI verification
Related