結論
OS X Server 和 Xcode 7.1 和 Apple Developer Enterprise Program 的搭配會造成
「所選的團隊沒有適用於此功能的方案會員資格。請參訪 Apple Developer Member Center 來更新您的會員資格。」。
OS X Server 和 Xcode 6 系列的搭配會造成
「此版本的 Xcode 無法和 OS X Server 一起使用」。
解法
請嘗試改用 OS X Server 4.1.5 (未證實)。
問題
Xcode Server 是 OS X Server 中的功能,用來作持續整合 (Continuous integration, CI) 的功能。
任何一台 Mac 只要花 590 元在 app store 都能買到 OS X Server。
我遇到的問題是「所選的團隊沒有適用於此功能的方案會員資格。請參訪 Apple Developer Member Center 來更新您的會員資格。」
產生問題的步驟和環境截圖:
https://docs.google.com/document/d/1MxNUZApRtl9LWTkqANgwM6ndxXeUeq0GpNVdCjrF-l8/edit?usp=sharing
成因
https://developer.apple.com/library/prerelease/tvos/releasenotes/DeveloperTools/RN-Xcode/Chapters/xc7_release_notes.html
在 Xcode 7 Release Notes 上面可以看到 Known Issue 裡面有一條:
Xcode Server may not be able to join new development teams with versions of OS X Server other than version 4.1.5.
Existing team memberships will continue to work correctly. (22539804)
而在 OS X Server 的介紹頁面中,對於 Xcode Server 的說明是寫著:「使用 Xcode 6 來製作持續整合的 bot」,是的,他沒有說 Xcode 7 可以用...,Apple 有你的。
求解過程
發現 bug 之後先到 apple 官網上的文件爬文兩天,找不到解。
https://developer.apple.com/library/prerelease/ios/documentation/IDEs/Conceptual/xcode_guide-continuous_integration/adopt_continuous_integration.html#//apple_ref/doc/uid/TP40013292-CH3-SW1
我決定打電話到 Apple 客服 (0800 022 237) ,途中發現在電話上說明問題很困難,加上他不是老外口音,就是大陸口音,光是讓他了解問題大概就花了 30 分鐘。而且在電話上沒有螢幕截圖,其實用文字加圖片會比較容易了解。
https://developer.apple.com/contact/phone.php
客服:「我短時間可能沒辦法解決你的問題,不然我先給你一個案件編號,你過兩天打來只要說案件編號,就可以找到我。」。我只好先掛電話,過兩天我再打去。
客服:「可能是 Apple Developer Enterprise Program 沒有使用 Xcode Server 的權限。」。臥草,這你敢信?
我「
確定不換?進入至尊對決。你能不能給我一個確定的答覆?」
客服:「這個...如果要確定的話還是問問看 Developer Technical Support。」
每個開發者帳號一年都有兩次免費額度的專業客服功能(DTS),專治軟硬體開發上的疑難雜症,我從來沒用過。DTS的使用方法是從 Member Center 裡的 Technical Support 進入。我在填單的時候除了 step by step 的操作流程之外,也把 Apple 客服給我的案件編號也填進去了。填完內容之後會收到一封副本信,內容大概是說:「感謝您的來信,這是自動回覆信件請勿回復。」。
過兩天之後收到來自DTS的回信。
DTS:「For such questions, please contact the Apple Developer Program Support Team. You can contact them directly via webform <
http://developer.apple.com/contact/submit.php> or via phone <
http://developer.apple.com/contact/phone.php>.
Also, when contacting them, be sure to mention that you were referred by DTS.」。
請注意,他叫我去打Apple 客服電話或是填表,而那個電話是我已經打過了的。所以我選擇填表,這次我把客服給我的案件編號和DTS給我的案件編號都填到表裡。
是的,又過了兩天。
這次他一語中的,直接給我看
Xcode 7 release notes ,並說明我的版本不 work 是因為這問題。但是他沒有告訴我怎麼取得舊版 Xcode 或取得舊版 OS X Server。
我人很好,都幫你們準備好了,前提是你們有看到最後。
http://stackoverflow.com/questions/10335747/how-to-download-xcode-4-5-6-7-and-get-the-dmg-file
哦對了,DTS因為沒有真的幫我解決問題,所以原本消耗掉的一個額度又還給我了。而我目前正在下載 Xcode 6.4,還沒有真正測試過到底行不行。
2015/11/26 更新:
Xcode 6.4 版下載安裝完成了之後
此版本的 Xcode 無法和 OS X Server 一起使用。
目前測試過的Xcode 版本:
6.0.1: 此版本的 Xcode 無法和 OS X Server 一起使用。
6.1.1: 此版本的 Xcode 無法和 OS X Server 一起使用。
6.2: 此版本的 Xcode 無法和 OS X Server 一起使用。
6.3.2: 此版本的 Xcode 無法和 OS X Server 一起使用。
6.4: 此版本的 Xcode 無法和 OS X Server 一起使用。
7.1: 所選的團隊沒有適用於此功能的方案會員資格。請參訪 Apple Developer Member Center 來更新您的會員資格。
2015/12/10 更新:
後來接到一通 apple 客服打來的電話,客服證實企業用開發者帳號(可上架app store)可以在 XCode 7.1 的狀態下正常使用,但企業內部用開發者帳號就不行。所以我問客服這是規格?還是bug?客服說不確定要再查查,後來就沒下文了,看樣子一封信只能取得一次回應。