Skip to content

Commit

Permalink
Add release script
Browse files Browse the repository at this point in the history
  • Loading branch information
saagarjha committed Jan 27, 2024
1 parent b457217 commit 9bfc994
Show file tree
Hide file tree
Showing 3 changed files with 107 additions and 0 deletions.
93 changes: 93 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
name: Release

on:
push:
paths:
- Configs/Deployment.xcconfig

jobs:
upload:
runs-on: macos-13
environment: Release
env:
GITHUB_API_BASE_URL: https://api.github.com/repos/${{ github.repository }}
GH_TOKEN: ${{ github.token }}
permissions:
contents: write
steps:
- name: Checkout
uses: actions/checkout@v3

- name: Set up signing
run: |
KEYCHAIN="$RUNNER_TEMP/keychain.keychain-db"
KEYCHAIN_PASSWORD=password
echo "${{ secrets.CERTIFICATE }}" | base64 -d > "$RUNNER_TEMP/Certificate.p12"
security create-keychain -p "$KEYCHAIN_PASSWORD" "$KEYCHAIN"
security set-keychain-settings "$KEYCHAIN"
security unlock-keychain -p "$KEYCHAIN_PASSWORD" "$KEYCHAIN"
security list-keychains -d user -s "$KEYCHAIN"
security import "$RUNNER_TEMP/Certificate.p12" -P "${{ secrets.CERTIFICATE_PASSWORD }}" -A -k "$KEYCHAIN"
mkdir -p ~/Library/MobileDevice/Provisioning\ Profiles
cp Release/iOS.mobileprovision ~/Library/MobileDevice/Provisioning\ Profiles
- name: Select Xcode
run: sudo xcode-select -s /Applications/Xcode_15.2.app

- name: Set up visionOS SDK
run: |
defaults write com.apple.dt.Xcode AllowUnsupportedVisionOSHost -bool YES
defaults write com.apple.CoreSimulator AllowUnsupportedVisionOSHost -bool YES
xcodebuild -downloadPlatform visionOS
- name: System Info
run: |
uname -a
xcodebuild -version
- name: Archive macOS
run: xcodebuild -scheme macOS -archivePath macOS.xcarchive archive

- name: Archive visionOS
run: xcodebuild -scheme visionOS -archivePath visionOS.xcarchive archive

- name: Collect Assets
run: |
(
cd macOS.xcarchive/Products/Applications/
zip -r macOS.zip Ensemble.app
mv macOS.zip ../..
)
(
cd macOS.xcarchive/dSYMs/
zip -r macOS-symbols.zip Ensemble.app.dSYM/
mv macOS-symbols.zip ..
)
(
cd visionOS.xcarchive/Products/Applications/
zip -r visionOS.zip Ensemble.app
mv visionOS.zip ../..
)
(
cd visionOS.xcarchive/dSYMs/
zip -r visionOS-symbols.zip Ensemble.app.dSYM/
mv visionOS-symbols.zip ..
)
- name: Create Release
run: |
version="$(cat Configs/Deployment.xcconfig | grep CURRENT_PROJECT_VERSION | awk '{ print $3 }')"
gh release create "v$version" -p macOS.zip macOS-symbols.zip visionOS.zip visionOS-symbols.zip
# - name: Upload macOS
# run: xcodebuild -exportArchive -exportOptionsPlist Release/ExportOptions.plist -archivePath MacCast-macOS.xcarchive/ -exportPath macOS

# - name: Upload visionOS
# run: xcodebuild -exportArchive -exportOptionsPlist Release/ExportOptions.plist -archivePath MacCast-visionOS.xcarchive/ -exportPath visionOS
14 changes: 14 additions & 0 deletions Release/ExportOptions.plist
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>destination</key>
<string>upload</string>
<key>manageAppVersionAndBuildNumber</key>
<false/>
<key>method</key>
<string>app-store-connect</string>
<key>stripSwiftSymbols</key>
<false/>
</dict>
</plist>
Binary file added Release/iOS.mobileprovision
Binary file not shown.

0 comments on commit 9bfc994

Please sign in to comment.