XCode Server CI не удается установить с iOS 7.1

В настоящее время наш сервер Xcode настроен для сборки CI.

При попытке загрузить сборки на устройстве меня приветствует "Не удается подключиться к server.local" при посещении через SSL.

Когда я пытаюсь загрузить через http, я создан с "не может установить приложение, потому что сертификат для server.local недействителен"

Я полагаю, что это связано с проверкой SSL для загрузок OTA в iOS 7.1, но я использую самопривязанный сертификат.

Является ли это ошибкой или ограничением сервера Xcode. Нужен ли нам сертификат, который не назначается самостоятельно?

Спасибо

Dan

Ответ 1

Лучшее решение - создать собственный ЦС и установить его на устройстве, а затем создать сертификат для своего домена и установить его на сервере Xcode.

Сначала создайте CA.

openssl genrsa -out Custom-CA.key 2048
openssl req -x509 -new -key Custom-CA.key -out Custom-CA.cer -days 730 -subj /CN="Company Name Certificate Authority"

Теперь вам нужно создать сертификат, подписанный с вышеупомянутым полномочием.

ВАЖНО: server.local следует заменить любым именем вашего компьютера (исходный вопрос использовался server.local). IP-адреса не будут работать.

openssl genrsa -out xcode-server.key 2048
openssl req -new -out xcode-server.req -key xcode-server.key -subj /CN=server.local
openssl x509 -req -in xcode-server.req -out xcode-server.cer -CAkey Custom-CA.key -CA Custom-CA.cer -days 730 -CAcreateserial -CAserial xcode-server_serial.txt

Затем вам нужно установить Custom-CA.cer на все устройства, которые вы хотите использовать с сервером. Самый простой способ - отправить сообщение Custom-CA.cer на эти устройства.

В сервере OS X вам необходимо импортировать Custom-CA.cer, xcode-server.key и xcode-server.cer и использовать сертификат server.local в качестве сертификата SSL сервера.

(Информация из этого руководство)

например. Если имя машинного узла было xcodeserver.companyname.com, вы бы поставили /CN=xcodeserver.companyname.com

Ответ 2

Вы правы. В 7.1 OTA для установки с сервера xcode требуется проверка SSL. Таким образом, вы можете получить сертификат SSL для вашего xcode-сервера или сделать это обходным путем.

  • Перейдите на экран бота сервера xcode в браузере рабочего стола.
  • Загрузите продукт (.ipa) из бота, который вы хотите.
  • Откройте iTunes с подключенным устройством.
  • Перетащите файл .ipa в iTunes.

Вы должны иметь возможность заменить/установить свою сборку на свое устройство.

Не так просто, как сборки OTA, но он работает.

Ответ 4

имел ту же самую проблему, и это была проблема кэширования браузера в Safari.

Я зашел в Настройки → Safari → Дополнительно → Данные веб-сайта, затем оставил на моем сервере Xcode веб-сайт, чтобы открыть кнопку "Удалить" и щелкнул по нему только для этого веб-сайта.

В следующий раз, когда я просмотрел сервер Xcode в Safari и попытался установить сборку, я получил приглашение установить сертификат OTA и, когда он был принят, чтобы я мог устанавливать приложения.