Реализовал поддержку сборки с разными профилями обеспечения

This commit is contained in:
Rustam Zaitov 2014-06-02 15:09:22 +04:00
parent f7e1e7797e
commit b3f5305208
3 changed files with 18 additions and 3 deletions

View File

@ -30,3 +30,16 @@ tibuild --settings=scripts/settings.txt build=%build.number% builder_path=<build
локально. path_to_local_direcotry путь к папке вне репозитория проекта (чтобы ничего не потерлось) или добавить папку в настройку backup_ignore
tibuild --settings=scripts/settings.txt build=777 builder_path=<builder_path> publish_path=<path_to_local_direcotry>
Пояснение значения некоторых настроек:
publish_step_type enum(development|distribution) в зависимости от этого значения будет вызван один из следующих шагов
'ios publish development.txt' копирование файла ipa в папку @publish_path/
'ios publish distribution.txt' - создание zip архива (app файла) и копирование его в папку @publish_path/
Это значение было введено чтобы поддерживать сборку с разными профилями обеспечения.
Типичный кейс. У нас 2 профайла:
development.mobileprovision сборка для наших тестировщиков [publish_step_type=development]
distribution.mobileprovision сборка для апстора [publish_step_type=distribution]
Расширенный кейс. У нас 3 профайла
development.mobileprovision сборка для наших тестировщиков [publish_step_type=development]
customer.mobileprovision сборка для тестировщиков заказчиков [publish_step_type=development]
distribution.mobileprovision сборка для апстора [publish_step_type=distribution]

View File

@ -7,7 +7,7 @@ create backup
#if {@teamcity_build_id}
create dirs '{@publish_path}'
sh echo '{@teamcity_build_id}' > '{@publish_path}/../{@build}.build_id'
<include '{@builder_path}/scripts/common/ios publish {@provisioning_profile}.txt'>
<include '{@builder_path}/scripts/common/ios publish {@publish_step_type}.txt'>
#endif
restore from backup

View File

@ -37,12 +37,14 @@ ios.steps = '{@builder_path}/scripts/common/ios.txt'
ios.output_path = 'bin'
ios.publish_name = 'iPhone'
ios.default_ios.provisioning_profile = 'development' # dont change
ios.default_ios.provisioning_profile = 'development' # required. Имя файла профиля обеспечения без разширерия (development.mobileprovision)
ios.default_ios.publish_step_type = 'development' # required. Enum (appstore|distribution)
ios.default_ios.provisioning_account = 'iPhone Developer: Build Server (GZRT3GYURD)' #Билд сервер собирает с помощью разработчика Build Server
ios.default_ios.provisioning_uudid = '' # required. Можно использовать пробел для режима Automatic
ios.default_ios.output_file_name = '{@output_file_format}-Default.ipa'
ios.appstore.provisioning_profile = 'distribution' # dont change
ios.appstore.provisioning_profile = 'distribution' # required. Имя файла профиля обеспечения без разширерия (distribution.mobileprovision)
ios.appstore.publish_step_type = 'distribution' # required. Enum (appstore|distribution)
ios.appstore.provisioning_account = 'iPhone Distribution' # dont change. На билд сервере всего один distribution сертификат Ltd Touchinstinct он и будет выбран
ios.appstore.provisioning_uudid = '' # required. Можно использовать пробел для режима Automatic
ios.appstore.output_file_name = '{@output_file_format}-AppStore.zip'