MSBuild, Xamarin.Forms, Непрерывная интеграция, iOS - PullRequest
0 голосов
/ 12 декабря 2018

Я начинаю работать над настройкой CI / CD для проекта Xamarin.Forms, над которым я работаю.В настоящее время я настраиваю Ad-Hoc конфиг.Я хотел бы иметь возможность запустить эту сборку из командной строки и получить IPA в папке bin / AdHoc, как если бы я запускал ее из Visual Studio.

Я перепробовал все видыкомбинаций разных вещей.Вот как я запускаю сборку:

msbuild ../TheSolution.sln /p:Configuration=Ad-Hoc /p:Platform=iPhone /p:ServerAddress=serverIP /p:ServerUser=%USERDOMAIN%\%USERNAME% /p:ServerPassword=myPassword

В файле проекта, помимо информации о профиле обеспечения, в группе свойств этой конфигурации у меня есть

<BuildIpa>True</BuildIpa>
<IpaPackageDir>$(OutputPath)</IpaPackageDir>

I 'мы не пытались создать домен по имени пользователя, разные случаи, / m флаг для сборки.

В лучшем случае я получил прерывистое соединение с Mac, но в большинстве случаев оно терпело неудачу.Те же учетные данные, тот же Mac, то же решение генерирует IPA, если я строю из Visual Studio.Что мне здесь не хватает?

1 Ответ

0 голосов
/ 12 декабря 2018

Рассматривая вывод диагностической сборки между тем, что выводил Visual Studio, и тем, что выводил мой скрипт, я понял, что мне нужно экранировать некоторые символы в моем пароле.Я только что запустил успешную сборку командной строки, используя (Из сценария PS):

Invoke-MsBuild -Path "..\TheSolution.sln" -MsBuildParameters "/target:Clean;Build /property:Configuration=Ad-Hoc;Platform=iPhone;ServerAddress=serverip;ServerUser=usernamenodomain;ServerPassword=escapedpw;ContinueOnDisconnected=false /verbosity:Diagnostic"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...