Как поставить bzr revid в Android манифеста: versionName - PullRequest
4 голосов
/ 09 ноября 2011

Я создаю свои приложения для Android с Jenkins на сервере Linux Ubuntu и использую Bazaar в качестве SCM.

Я хотел бы автоматически добавить идентификатор версии базара проекта к значению Android: versionName в моем файле манифеста.

Я использую ant для сборки и у меня есть плагин Jenkin's bazaar, который передает revid скрипту ant build, но я понятия не имею, как это сделать.

1 Ответ

4 голосов
/ 10 ноября 2011

Я наконец нашел решение здесь .

Это было для SVN, но настроить Bazaar было достаточно просто ...

Вот как выглядит моя задача.

<property environment="env"/>
<target name="bzr-revision">
    <echo>Modifying Android manifest with revision: ${env.BZR_REVISION}</echo>
    <!-- Write the revision number into
            the Manifest as the last segment of the VersionName property -->
    <replaceregexp file="AndroidManifest.xml" match='android:versionName="([^".]+\.[^".]+\.[^".]+)(\.[^"]*)?"' replace='android:versionName="\1.r${env.BZR_REVISION}"'/>
</target>

Если versionName равно 1.5.2, il заменит его на 1.5.2.r123 (где 123 - номер редакции Bazaar). Вы можете настроить регулярное выражение под свои нужды.

...