Документация TeamCity 9.X для Получение артефактов подтверждает, что фигурные скобки {build.number}
могут использоваться в URL:
ARTIFACT_PATH - это путь к артефакту на сервере TeamCity. Этот путь может содержать шаблон {build.number} , который будет заменен номером сборки сборки, артефакт которой получен.
Однако это вызвало несколько проблем (один пример здесь ), поскольку в RFC есть несколько зарезервированных символов, относящихся к стандартам URI / URL (в данном случае RFC 1738 ). Стандарт RFC 1738 считает группу символов «небезопасной» (включая фигурные скобки) в дополнение к зарезервированным символам для URI:
Другие символы небезопасны, поскольку шлюзы и другиеИзвестно, что транспортные агенты иногда изменяют такие символы. Это символы "{", "}", "|", "\", "^", "~", "[", "]" и "` ". [...] Все небезопасные символы всегда должны быть закодированы в URL.
Таким образом, программное обеспечение TeamCity было впоследствии обновлено для поддержки фигурной скобки кодировки . Документация TeamCity 10.X для Получение артефактов была обновлена в соответствии со стандартами кодирования URL:
ARTIFACT_PATH являетсяпуть к артефакту на сервере TeamCity. Этот путь может содержать шаблон {build.number} (%7Bbuild.number%7D
), который будет заменен на TeamCity номером сборки сборки, артефакт которой получен.
ItПохоже, что в версиях TeamCity 2019 поддержка использования необработанных фигурных скобок в URL была полностью отменена в соответствии со стандартом, и разрешена только версия в кодировке . Таким образом, вы можете обновить свой код CMake примерно так:
set(SIM_FILENAME vhnHilsimPlantModel-%7Bbuild.number%7D.zip)
set(SIM_URL https://teamcity.vh.com/guestAuth/rep/download/Sim_Feat/.lastSuccessful/${SIM_FILENAME})