55 required : true
66 type : string
77 xcode_version :
8- description : " The version of Xcode. Available aliases are 'latest' and 'minimum '"
8+ description : " The version of Xcode. Available aliases are 'latest', 'minimum', and 'beta '"
99 default : ' latest'
1010 type : string
1111 destination :
4141
4242 - id : get-xcode-version
4343 run : |
44- LATEST_XCODE_VERSION=16.2.0
45- MINIMUM_XCODE_VERSION=16.1.0
44+ LATEST_XCODE_VERSION=16.4.0
45+ MINIMUM_XCODE_VERSION=16.0.0
46+ DEFAULT_BETA_XCODE_VERSION=26.0_beta
4647
4748 INPUT_XCODE_VERSION=${{ inputs.xcode_version }}
4849
5152 XCODE_VERSION=$LATEST_XCODE_VERSION ;;
5253 minimum)
5354 XCODE_VERSION=$MINIMUM_XCODE_VERSION ;;
55+ beta)
56+ # Try to auto-detect installed Xcode 26 beta app name
57+ DETECTED=$(ls -1 /Applications 2>/dev/null | grep -E '^Xcode_26.*\.app$' | head -n1 || true)
58+ if [ -n "$DETECTED" ]; then
59+ # strip prefix and suffix to get the version token used in the path template
60+ # e.g., Xcode_26.0_beta.app -> 26.0_beta
61+ XCODE_VERSION=$(echo "$DETECTED" | sed -E 's/^Xcode_//; s/\.app$//')
62+ else
63+ XCODE_VERSION=$DEFAULT_BETA_XCODE_VERSION
64+ fi
65+ ;;
5466 *)
5567 XCODE_VERSION=$INPUT_XCODE_VERSION ;;
5668 esac
@@ -66,36 +78,68 @@ runs:
6678
6779 case $INPUT_PLATFORM/$INPUT_XCODE_VERSION in
6880 iOS/latest)
81+ DEVICE="iPhone 16 Pro Max"
82+ OS_VERSION="18.5"
83+ ;;
84+ iOS/beta)
6985 DEVICE="iPhone 16"
70- OS_VERSION="18.2"
86+ OS_VERSION="26.0"
87+ ;;
88+ iOS/minimum)
89+ DEVICE="iPhone 16 Pro Max"
90+ OS_VERSION="18.0"
7191 ;;
7292 iOS/*)
73- DEVICE="iPhone 15 "
74- OS_VERSION="17.0.1 "
93+ DEVICE="iPhone 16 Pro Max "
94+ OS_VERSION="18.5 "
7595 ;;
7696 tvOS/latest)
7797 DEVICE="Apple TV 4K (3rd generation)"
78- OS_VERSION="18.2"
98+ OS_VERSION="18.5"
99+ ;;
100+ tvOS/beta)
101+ DEVICE="Apple TV 4K (3rd generation)"
102+ OS_VERSION="26.0"
103+ ;;
104+ tvOS/minimum)
105+ DEVICE="Apple TV 4K (3rd generation)"
106+ OS_VERSION="18.0"
79107 ;;
80108 tvOS/*)
81109 DEVICE="Apple TV 4K (3rd generation)"
82- OS_VERSION="17.0 "
110+ OS_VERSION="18.5 "
83111 ;;
84112 watchOS/latest)
85113 DEVICE="Apple Watch Series 10 (46mm)"
86- OS_VERSION="11.2"
114+ OS_VERSION="11.5"
115+ ;;
116+ watchOS/beta)
117+ DEVICE="Apple Watch Series 10 (46mm)"
118+ OS_VERSION="26.0"
119+ ;;
120+ watchOS/minimum)
121+ DEVICE="Apple Watch SE (44mm) (2nd generation)"
122+ OS_VERSION="11.0"
87123 ;;
88124 watchOS/*)
89- DEVICE="Apple Watch Series 7 (45mm) "
90- OS_VERSION="10.0 "
125+ DEVICE="iPhone 16 Pro Max "
126+ OS_VERSION="18.5 "
91127 ;;
92128 visionOS/latest)
93129 DEVICE="Apple Vision Pro"
94- OS_VERSION="2.2"
130+ OS_VERSION="2.5"
131+ ;;
132+ visionOS/beta)
133+ DEVICE="Apple Vision Pro"
134+ OS_VERSION="26.0"
135+ ;;
136+ visionOS/minimum)
137+ DEVICE="Apple Vision Pro"
138+ OS_VERSION="2.0"
95139 ;;
96140 visionOS/*)
97141 DEVICE="Apple Vision Pro"
98- OS_VERSION="1.0 "
142+ OS_VERSION="2.5 "
99143 ;;
100144 esac
101145
0 commit comments