Skip to content

Commit c38c78e

Browse files
committed
Simplify App Store release to manual upload via Xcode Organizer
The xcodebuild -exportArchive command fails with "Error Downloading App Information" due to authentication issues with App Store Connect. Changed approach: - archive-appstore.sh now only creates the Xcode archive - Switched from manual to automatic code signing - Removed the export step that created .pkg files - Removed upload-appstore.sh (no longer needed) - Removed validate-appstore and archive-appstore commands from Justfile - release-appstore now just builds and prints manual upload instructions Upload is now done manually via Xcode Organizer: 1. Open the .xcarchive 2. Click Distribute App → App Store Connect 3. Follow prompts to upload
1 parent e8d5016 commit c38c78e

3 files changed

Lines changed: 10 additions & 151 deletions

File tree

Justfile

Lines changed: 2 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -104,31 +104,6 @@ dmg version="":
104104
# App Store (requires Apple Distribution certificate)
105105
# =============================================================================
106106

107-
# Build and sign for App Store (optionally specify a tag)
108-
archive-appstore tag="":
109-
./scripts/archive-appstore.sh {{tag}}
110-
111-
# Upload to App Store Connect
112-
upload-appstore version="":
113-
./scripts/upload-appstore.sh {{version}}
114-
115-
# Validate App Store package (without uploading)
116-
validate-appstore version="":
117-
#!/usr/bin/env bash
118-
set -e
119-
ver="{{version}}"
120-
[[ -z "$ver" && -f "{{build_dir}}/.current_version_appstore" ]] && ver=$(cat "{{build_dir}}/.current_version_appstore")
121-
[[ -z "$ver" ]] && { echo "Error: No version specified"; exit 1; }
122-
ver_dir="{{build_dir}}/${ver}-appstore"
123-
[[ ! -d "$ver_dir" ]] && { echo "Error: App Store build not found at $ver_dir"; echo "Run 'just archive-appstore $ver' first."; exit 1; }
124-
pkg=$(find "$ver_dir/export" -name "*.pkg" -type f 2>/dev/null | head -1)
125-
[[ -z "$pkg" ]] && { echo "Error: No .pkg found in $ver_dir/export"; exit 1; }
126-
echo "Validating: $pkg"
127-
xcrun altool --validate-app -f "$pkg" --type macos --apple-id "$APPLE_ID" --password "$APPLE_APP_PASSWORD"
128-
129-
# Full App Store pipeline: archive, validate, upload
107+
# Build and sign for App Store, then upload manually via Xcode Organizer
130108
release-appstore tag="":
131-
#!/usr/bin/env bash
132-
set -e
133-
just archive-appstore {{tag}}
134-
just upload-appstore
109+
./scripts/archive-appstore.sh {{tag}}

scripts/archive-appstore.sh

Lines changed: 8 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -60,34 +60,15 @@ xcodebuild archive \
6060
-scheme "$SCHEME" \
6161
-archivePath "$archive_path" \
6262
DEVELOPMENT_TEAM="$APPLE_TEAM_ID" \
63-
CODE_SIGN_STYLE=Manual \
64-
CODE_SIGN_IDENTITY="Apple Distribution"
65-
66-
# Export options for App Store
67-
cat > "$ver_dir/ExportOptions.plist" << EOF
68-
<?xml version="1.0" encoding="UTF-8"?>
69-
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
70-
<plist version="1.0">
71-
<dict>
72-
<key>method</key>
73-
<string>app-store</string>
74-
<key>teamID</key>
75-
<string>$APPLE_TEAM_ID</string>
76-
<key>destination</key>
77-
<string>upload</string>
78-
<key>signingStyle</key>
79-
<string>manual</string>
80-
</dict>
81-
</plist>
82-
EOF
83-
84-
xcodebuild -exportArchive \
85-
-archivePath "$archive_path" \
86-
-exportPath "$export_path" \
87-
-exportOptionsPlist "$ver_dir/ExportOptions.plist"
63+
CODE_SIGN_STYLE=Automatic
8864

8965
echo "$ver-appstore" > "$BUILD_DIR/.current_version_appstore"
9066

91-
echo "✓ App Store archive complete: $export_path/"
9267
echo ""
93-
echo "Next: Run 'just upload-appstore' to upload to App Store Connect"
68+
echo "✓ App Store archive complete: $archive_path"
69+
echo ""
70+
echo "Next steps (manual):"
71+
echo " 1. Open archive: open $archive_path"
72+
echo " 2. In Xcode Organizer: Click 'Distribute App' → 'App Store Connect'"
73+
echo " 3. Follow the prompts to upload"
74+
echo " 4. Submit for review in App Store Connect"

scripts/upload-appstore.sh

Lines changed: 0 additions & 97 deletions
This file was deleted.

0 commit comments

Comments
 (0)