<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>27840</bug_id>
          
          <creation_ts>2012-10-12 18:03:23 +0400</creation_ts>
          <short_desc>ssh git.alt rebuild pkg</short_desc>
          <delta_ts>2019-03-25 04:44:43 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>2</classification_id>
          <classification>Infrastructure</classification>
          <product>Infrastructure</product>
          <component>girar</component>
          <version>unspecified</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sergey V Turchin">zerg</reporter>
          <assigned_to name="Dmitry V. Levin">ldv</assigned_to>
          <cc>alexey.tourbin</cc>
    
    <cc>asy</cc>
    
    <cc>glebfm</cc>
    
    <cc>ldv</cc>
    
    <cc>mike</cc>
    
    <cc>mithraen</cc>
    
    <cc>radik</cc>
    
    <cc>solo</cc>
    
    <cc>viy</cc>
          
          <qa_contact name="Andrey Cherepanov">cas</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>133898</commentid>
    <comment_count>0</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2012-10-12 18:03:23 +0400</bug_when>
    <thetext>Было бы удобно
ssh git.alt rebuild pkg
и
ssh git.alt task add rebuild pkg
, тупо пересобирающее пакет, автоматом увеличивая release</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>133899</commentid>
    <comment_count>1</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2012-10-12 18:06:06 +0400</bug_when>
    <thetext>1-е, возможно, не стОит делать</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>133957</commentid>
    <comment_count>2</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2012-10-16 03:43:24 +0400</bug_when>
    <thetext>С поправкой, что эта команда будет пересобирать пакет из того же самого тэга (т.е. без изменения исходников), я согласен. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>133958</commentid>
    <comment_count>3</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2012-10-16 04:01:29 +0400</bug_when>
    <thetext>см. тж.:
http://lists.altlinux.org/pipermail/devel/2012-January/193149.html и далее по треду,
http://lists.altlinux.org/pipermail/devel/2012-February/193198.html и далее по треду.

Какую-то автоматику по мотивам этого треда в принципе можно реализовать.
А вот редактирование спек-файлов это точно EWONTFIX.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>133976</commentid>
    <comment_count>4</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2012-10-16 13:57:30 +0400</bug_when>
    <thetext>(В ответ на комментарий №2)
&gt; С поправкой, что эта команда будет пересобирать пакет из того же самого тэга
&gt; (т.е. без изменения исходников), я согласен. :)
Если в результате будет пересобрано и обновится у пользователей то, что перед сборкой в репозитории, то все тоже согласны.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>137185</commentid>
    <comment_count>5</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2013-01-23 21:49:19 +0400</bug_when>
    <thetext>$ git.alt task add --help 2&gt;&amp;1 |grep rebuild
   or: girar-task add [&lt;task_id&gt; [&lt;before_subtask_id&gt;]] rebuild &lt;package&gt;

Формально тупая пересборка была реализована в декабре прошлого года.
Но она совсем тупая, спеки не редактирует, просто берет тэг, из которого указанный пакет был собран в указанный бранч, и снова отправляет его на сборку в тот же бранч.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>137258</commentid>
    <comment_count>6</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2013-01-24 15:18:35 +0400</bug_when>
    <thetext>У пользователей обновиться пакет предыдущей сборки?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142628</commentid>
    <comment_count>7</comment_count>
    <who name="Sergey Y. Afonin">asy</who>
    <bug_when>2013-09-16 16:26:50 +0400</bug_when>
    <thetext>(In reply to comment #5)

&gt; просто берет тэг, из которого указанный пакет был собран в указанный
&gt; бранч, и снова отправляет его на сборку в тот же бранч.

Так что с вопросом zerg@ ? Мне тоже интересно. Попробовал в задание 103969 добавить несколько пакетов таким образом, увеличения релиза не вижу. Например, как ekiga присутствует в Сизифе в версии 4.0.1-alt2, так и добавляется:

$ ssh git.alt task add 103969 rebuild ekiga
Enter passphrase for key &apos;/home/asy/.ssh/asy-key-ssh&apos;:
ssh: X11 forwarding request failed on channel 0
fetching tag &quot;4.0.1-alt2&quot; from /gears/e/ekiga.git... done
Deleted tag &apos;gb-sisyphus-task93303.22700&apos; (was 829b90a)
generating pkg.tar for ekiga.git tag &quot;4.0.1-alt2&quot;... done
task #103969: added #1000: build tag &quot;4.0.1-alt2&quot; from /gears/e/ekiga.git

Судя по этому, у пользователей обновление не произойдёт. Или я что-то не понимаю ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142629</commentid>
    <comment_count>8</comment_count>
    <who name="Gleb F-Malinovskiy">glebfm</who>
    <bug_when>2013-09-16 16:48:35 +0400</bug_when>
    <thetext>(In reply to comment #7)
&gt; Так что с вопросом zerg@ ?

Нет. Сборочница не пропустит пакет без увеличения версии-релиза. А rebuild не редактирует spec.

&gt; Мне тоже интересно. Попробовал в задание 103969
&gt; добавить несколько пакетов таким образом, увеличения релиза не вижу. Например,
&gt; как ekiga присутствует в Сизифе в версии 4.0.1-alt2, так и добавляется:
&gt; 
&gt; $ ssh git.alt task add 103969 rebuild ekiga
&gt; Enter passphrase for key &apos;/home/asy/.ssh/asy-key-ssh&apos;:
&gt; ssh: X11 forwarding request failed on channel 0
&gt; fetching tag &quot;4.0.1-alt2&quot; from /gears/e/ekiga.git... done
&gt; Deleted tag &apos;gb-sisyphus-task93303.22700&apos; (was 829b90a)
&gt; generating pkg.tar for ekiga.git tag &quot;4.0.1-alt2&quot;... done
&gt; task #103969: added #1000: build tag &quot;4.0.1-alt2&quot; from /gears/e/ekiga.git
&gt; 
&gt; Судя по этому, у пользователей обновление не произойдёт. Или я что-то не
&gt; понимаю ?

git.alt task add rebuild полагается на то, что релиз поменяется благодаря gear-specsubst (http://www.altlinux.org/Gear/specsubst)

т.е. если gear-specsubst подставит в поле Release: не то же самое (по больше, чем было), что в прошлый раз, то пересборка пройдёт и пакет, естественно, обновится.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142630</commentid>
    <comment_count>9</comment_count>
    <who name="Gleb F-Malinovskiy">glebfm</who>
    <bug_when>2013-09-16 17:18:43 +0400</bug_when>
    <thetext>(In reply to comment #8)
&gt; git.alt task add rebuild полагается на то, что релиз поменяется благодаря
&gt; gear-specsubst (http://www.altlinux.org/Gear/specsubst)
&gt; 
&gt; т.е. если gear-specsubst подставит в поле Release: не то же самое (по больше,
&gt; чем было), что в прошлый раз, то пересборка пройдёт и пакет, естественно,
&gt; обновится.

Вру и не краснею, извините.
specsubst тут не обязателен и вообще для другого. Он позволяет из одного коммита собирать несколько пакетов, например.

Теперь всё же, про rebuild:
Реально, разница в том, что разрешили собирать из одного и того же коммита несколько раз.
Посмотрите например http://git.altlinux.org/gears/p/pecl-perl.git
Там в &quot;Release:&quot; используется %php5_version.%php5_release, которые определены во внешнем пакете.
В итоге, при rebuild-е увеличивается release при условии, что обновился php.

Автоувеличивалки релиза нету.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142631</commentid>
    <comment_count>10</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2013-09-16 17:22:08 +0400</bug_when>
    <thetext>(В ответ на комментарий №9)
&gt; Автоувеличивалки релиза нету.
Да.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142632</commentid>
    <comment_count>11</comment_count>
    <who name="Sergey Y. Afonin">asy</who>
    <bug_when>2013-09-16 17:26:36 +0400</bug_when>
    <thetext>(In reply to comment #9)

&gt; Посмотрите например http://git.altlinux.org/gears/p/pecl-perl.git
&gt; Там в &quot;Release:&quot; используется %php5_version.%php5_release, которые определены
&gt; во внешнем пакете. В итоге, при rebuild-е увеличивается release при условии, 
&gt; что обновился php.

Понятно. А жаль... Для пересборки произвольного набора пакетов тоже было бы неплохо.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142633</commentid>
    <comment_count>12</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2013-09-16 17:27:49 +0400</bug_when>
    <thetext>Может, будет проще сделать, если в спеках будет что-то типа
Release: alt1.%alt_release_suffix
, который и под все бранчи будет сам подстанавливаться нужный, включая сизиф.
Например, M51, M60P, S01.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142634</commentid>
    <comment_count>13</comment_count>
    <who name="viy">viy</who>
    <bug_when>2013-09-16 19:06:17 +0400</bug_when>
    <thetext>(В ответ на комментарий №11)
&gt; (In reply to comment #9)
&gt; 
&gt; &gt; Посмотрите например http://git.altlinux.org/gears/p/pecl-perl.git
&gt; &gt; Там в &quot;Release:&quot; используется %php5_version.%php5_release, которые определены
&gt; &gt; во внешнем пакете. В итоге, при rebuild-е увеличивается release при условии, 
&gt; &gt; что обновился php.
&gt; 
&gt; Понятно. А жаль... Для пересборки произвольного набора пакетов тоже было бы
&gt; неплохо.

Можно посмотреть в сторону пакета girar-nmu , см. на wiki документацию.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178652</commentid>
    <comment_count>14</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2019-02-17 05:00:33 +0300</bug_when>
    <thetext>Пересборка без изменения релиза реализована.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178693</commentid>
    <comment_count>15</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2019-02-18 10:21:26 +0300</bug_when>
    <thetext>Клёва!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>179836</commentid>
    <comment_count>16</comment_count>
    <who name="">alexey.tourbin</who>
    <bug_when>2019-03-25 04:24:42 +0300</bug_when>
    <thetext>&gt; Пересборка без изменения релиза реализована.

Хм, а files/SRPMS/nvr.src.rpm после такой пересборки будет замещен?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>179837</commentid>
    <comment_count>17</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2019-03-25 04:44:43 +0300</bug_when>
    <thetext>(In reply to comment #16)
&gt; &gt; Пересборка без изменения релиза реализована.
&gt; 
&gt; Хм, а files/SRPMS/nvr.src.rpm после такой пересборки будет замещен?

Если пересборка была из /gears, то он изменился и будет замещён, см. напр.
http://git.altlinux.org/tasks/archive/done/_219/224335/plan/src.hash.diff

Если пересборка была из nvr.src.rpm, то он не изменился.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>