Ipa интеграции бота Xcode 9 отсутствует в пути XCS_PRODUCT - PullRequest
0 голосов
/ 24 мая 2018

Я работаю над непрерывной интеграцией с Xcode 9. Я успешно настроил Server & Bot.

Интеграция работает нормально.

Требование: Мне нужен IPA-путь вPost Script для загрузки на мой сервер.

Проблема: Я использую XCS_PRODUCT переменную для извлечения пути ipa.

Здесь ENV Выход из почтового триггера:

XCS_BOT_NAME=TestXCTest Bot
XCS=1
XCS_WARNING_CHANGE=0
XCS_SOURCE_DIR=/Users/xcodeserver/Library/Caches/XCSBuilder/Bots/b2642ba61e9ffe8554a9d17d1f0126d5/Source
SHELL=/bin/bash
XCS_INTEGRATION_RESULT=succeeded
TMPDIR=/var/folders/wv/33mqmjhn525clw9zzx2c0xq80000gs/T/
Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.xHus0eJhWj/Render
XCS_TEST_FAILURE_COUNT=0
XCS_INTEGRATION_ID=51c2cf4d7b95c0c4a4f948f23001620e
XCS_BOT_TINY_ID=B705E6C
USER=xcodeserver
XCS_ARCHIVE=/Users/xcodeserver/Library/Caches/XCSBuilder/Integration-51c2cf4d7b95c0c4a4f948f23001620e/TestXCTest.xcarchive
XCS_TEST_FAILURE_CHANGE=0
XCS_INTEGRATION_TINY_ID=2C6684E
SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.W6OUJYNErV/Listeners
__CF_USER_TEXT_ENCODING=0x1F9:0:0
XCS_PRIMARY_REPO_DIR=/Users/xcodeserver/Library/Caches/XCSBuilder/Bots/b2642ba61e9ffe8554a9d17d1f0126d5/Source/TestXCTest
PATH=/Applications/Xcode_9.3.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin
XCS_BOT_ID=b2642ba61e9ffe8554a9d17d1f0126d5
PWD=/Users/xcodeserver/Library/Caches/XCSBuilder/Bots/b2642ba61e9ffe8554a9d17d1f0126d5/Source
XCS_XCODEBUILD_LOG=/Users/xcodeserver/Library/Caches/XCSBuilder/Integration-51c2cf4d7b95c0c4a4f948f23001620e/xcodebuild.log
XCS_PRODUCT=/Users/xcodeserver/Library/Caches/XCSBuilder/Integration-51c2cf4d7b95c0c4a4f948f23001620e/ExportedProduct/TestXCTest.ipa
XCS_PRIMARY_REPO_BRANCH=master
XPC_FLAGS=0x0
XCS_ERROR_COUNT=0
XCS_ANALYZER_WARNING_COUNT=0
XCS_TESTS_CHANGE=-2
XPC_SERVICE_NAME=0
XCS_ERROR_CHANGE=0
SHLVL=1
HOME=/Users/xcodeserver
XCS_DERIVED_DATA_DIR=/Users/xcodeserver/Library/Caches/XCSBuilder/Bots/b2642ba61e9ffe8554a9d17d1f0126d5/DerivedData
XCS_ANALYZER_WARNING_CHANGE=0
LOGNAME=xcodeserver
XCS_WARNING_COUNT=0
XCS_TESTS_COUNT=0
XCS_OUTPUT_DIR=/Users/xcodeserver/Library/Caches/XCSBuilder/Integration-51c2cf4d7b95c0c4a4f948f23001620e
XCS_INTEGRATION_NUMBER=13
_=/usr/bin/env

Здесь показано ipa по этому пути:

/ Users / xcodeserver / Library / Caches / XCSBuilder / Integration-51c2cf4d7b95c0c4a4f948f23001620e / ExportedProduct / TestXCTest.ipa

Но в поиске нет такой папки, как Integration -.... .enter image description here

Итак, вопрос в том, как я могу получить путь ipa?

Я проверил много вопросов по этому поводу, как:

Непрерывная интеграция Xcode Server после триггера $ XCS_PRODUCT не установлена ​​

Xcode Bot: как получить путь .ipa в сценарии пост-триггера?

но не получил ответа для Xcode 9.

Ответы [ 2 ]

0 голосов
/ 22 марта 2019

Еще один совет, если $ XCS_PRODUCT пусто, убедитесь, что другие триггеры до этого не сработали.Мой скрипт обновления файла pod нужно было изменить, запускающий нисходящий триггер все еще работал, но у него не была установлена ​​эта переменная env.

0 голосов
/ 04 июня 2018

Найдена проблема

Xcode удаляет папку интеграции после завершения.

Решение:

Я добавил ниже постскрипт для копирования ipa:

rm -r "/Users/xcodeserver/Desktop/ipa/*"
cp -R "${XCS_OUTPUT_DIR}/ExportedProduct/" "/Users/xcodeserver/Desktop/ipa/"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...