mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-10-31 16:24:11 +00:00
8e81ebbd77
element-x-ios had no release machinery at all: no fastlane, no Gemfile, and none of its workflows built or uploaded anything. Upstream ships via Xcode Cloud, which needs Element's private Enterprise submodule and so is unavailable here, while the legacy element-ios fork already proves a fastlane pipeline against the same Apple team, certificate and App Store Connect key. Tagging healthchat-v<version> now builds a signed App Store IPA on the org's Mac Studio and uploads it to TestFlight. Release notes come from a new HEALTHCHAT_CHANGES.md, because upstream's own tooling owns CHANGES.md. The lane deliberately does not pin Xcode. The runner carries a single globally selected version, and naming an absent one does not fail fast — it sends xcodes into a multi-GB authenticated download that no CI secret can satisfy. Each run logs xcodebuild -version instead, which is the only record of what compiled a build. Everything here is fork-owned, since upstream has no fastlane directory, so none of it can conflict on rebase.
43 lines
1.3 KiB
Bash
43 lines
1.3 KiB
Bash
## Project configuration
|
|
|
|
PROJECT_PATH=ElementX.xcodeproj
|
|
SCHEME=ElementX
|
|
|
|
MAIN_TARGET=ElementX
|
|
NSE_TARGET=NSE
|
|
SHARE_EXTENSION_TARGET=ShareExtension
|
|
|
|
MAIN_BUNDLE_ID=ch.healthchat.element
|
|
NSE_BUNDLE_ID=ch.healthchat.element.nse
|
|
SHARE_EXTENSION_BUNDLE_ID=ch.healthchat.element.shareextension
|
|
|
|
## Build configuration
|
|
|
|
DERIVED_DATA_PATH=build
|
|
IPA_NAME=ElementX
|
|
ARCHIVE_PATH=out/ElementX.xcarchive
|
|
BUILD_OUTPUT_DIRECTORY=out
|
|
BUILD_LOG_DIRECTORY=build/Logs/Gym/
|
|
|
|
## Provisioning profile files
|
|
|
|
PROVISIONING_PROFILES_PATH=./provisioning_profiles/
|
|
|
|
MAIN_PROVISIONING_PROFILE_FILENAME=main.mobileprovision
|
|
NSE_PROVISIONING_PROFILE_FILENAME=nse.mobileprovision
|
|
SHARE_EXTENSION_PROVISIONING_PROFILE_FILENAME=share_extension.mobileprovision
|
|
|
|
## App Store code signing
|
|
|
|
APPSTORE_CODESIGNING_IDENTITY="Apple Distribution: E-HealthSolutions GmbH (6G37K72W82)"
|
|
APPSTORE_SIGNING_CERTIFICATE="Apple Distribution: E-HealthSolutions GmbH (6G37K72W82)"
|
|
|
|
APPSTORE_MAIN_PROVISIONING_PROFILE_SPECIFIER="HealthChat App Store"
|
|
APPSTORE_NSE_PROVISIONING_PROFILE_SPECIFIER="HealthChat NSE: App Store"
|
|
APPSTORE_SHARE_EXTENSION_PROVISIONING_PROFILE_SPECIFIER="HealthChat Share Extension: App Store"
|
|
|
|
## Account information
|
|
|
|
TEAM_ID=6G37K72W82
|
|
# APPLE_ID is set as a shell environment variable on the machine running fastlane.
|