[devel] rpmbph with git branches
Anton Farygin
rider на altlinux.com
Пн Май 18 23:37:56 MSD 2009
Aleksey Avdeev пишет:
> Anton Farygin пишет:
>> Eugene Prokopiev пишет:
>>> 18.05.09, Anton
>>> Farygin<rider-u2l5PoMzF/VWk0Htik3J/w на public.gmane.org> написал(а):
>>>> Eugene Prokopiev пишет:
>>>>
>>>>
>>>>>> Пакеты в бранчи я собираю такой командой:
>>>>>> $ rpmbph -n -M50 -u global.spec
>>>>>> Пока не представляю, как это сделать на основе git, поскольку
>>>>>> пока не готов изобретать правила для хранения в репозитории
>>>>>> разных веток (или они уже где-то опубликованы).
>>>>>> Если Вы считаете, что автоматическое создание ветки в git для
>>>>>> бранча имеет смысл, я готов рассмотреть пример репозитория с
>>>>>> правильной структурой и адаптировать rpmbph к сборке из git.
>>>>>>
>>>>> Как минимум для меня некоторая автоматика для управления ветками в git
>>>>> имеет смысл, только сделать никак не соберусь :( В качестве примера
>>>>> структуры репозитория предлагаю взглянуть на
>>>>> http://www.altlinux.org/Git/SomeDestReposViaBranches
>>>>>
>>>>>
>>>> Скажу вам по секрету, только никому не говорите - при сборке
>>>> пакетов ветки
>>>> не имеют никакого значения, важны только тэги.
>>>
>>> А можно развить эту мысль дальше?
>>>
>>> Мне было показалось, что вы хотели предложить собирать в разные
>>> репозитории из одной ветки, но я не смог понять как быть с Release и
>>> changelog ...
>>
>> А дальше - вы пишете скрипт, который будет из master делать тэги с
>> нужными изменениями (через временный бранч). Release и changelog надо
>> будет править.
>>
>> Кстати, почему-то у нас в Release: не получается использовать макросы,
>> определённые в /etc/rpm/macros.d/ ? Они вообще должны работать ?
>
> Можно, и оно работает. См.
> <http://git.altlinux.org/people/solo/packages/?p=apache2.git;a=blob;f=apache2.spec;h=2d4284a637889841f6dba3f089bcfc55372a0e21;hb=ALT/apache2/spec>:
>
> часть макросов, на основе которых вычисляется Release (%distr_switch, в
> частности) определена в другом пакете (в rpm-macros-apache2). Для
> данного пакета требуется использовать BuildRequires(pre).
Интересно было бы полностью вычислить Release в /etc/rpm/macros.d/
Всё, что еу нужно передавать - это номер релиза - циферку.
Т.е. - в итоге должно получиться что-то вроде
%_altrelease 1
Release: %alt_release
>
>> а так можно было бы release вычислять на основании какого-нить %branchver
>
> Я давно этим (вычислением нужного Release, в зависимости от
> дистрибутива/бранча, через макросы) пользуюсь (и как-то сюда писал об
> этом).
что-то у тебя в спеке страшно всё очень. Вынести бы это в отдельную
функцию...
Подробная информация о списке рассылки Devel