From: "Dmitry V. Levin" <ldv@altlinux.org>
To: ALT Devel discussion list <devel@lists.altlinux.org>
Subject: Re: [devel] про sssd, query-repackage и ubt
Date: Tue, 30 Oct 2018 23:22:05 +0300
Message-ID: <20181030202205.GB24226@altlinux.org> (raw)
In-Reply-To: <13351431540554920@myt6-23299ba78d64.qloud-c.yandex.net>
[-- Attachment #1: Type: text/plain, Size: 7912 bytes --]
Не пишите, пожалуйста, в этот список рассылки html-only письма,
если хотите, чтобы их можно было нормально прочесть.
On Fri, Oct 26, 2018 at 03:55:20PM +0400, Alexey Sheplyakov wrote:
> <div xmlns="http://www.w3.org/1999/xhtml">Привет!</div><div xmlns="http://www.w3.org/1999/xhtml"> </div><div xmlns="http://www.w3.org/1999/xhtml">23.10.2018, 15:03, "Ivan A. Melnikov" <iv@altlinux.org>:</div><div xmlns="http://www.w3.org/1999/xhtml">> Привет,</div><div xmlns="http://www.w3.org/1999/xhtml">></div><div xmlns="http://www.w3.org/1999/xhtml">> Хочу рассказать вам одну историю. Букв много, мораль не ясна,</div><div xmlns="http://www.w3.org/1999/xhtml">> так что можете не читать это всё.</div><div xmlns="http://www.w3.org/1999/xhtml">></div><div xmlns="http://www.w3.org/1999/xhtml">> Не так давно в Сизифе перестал пересобираться пакет sssd: падали</div><div xmlns="http://www.w3.org/1999/xhtml">> два теста[0]. Проблему можно воспроизвести и сейчас, забрав из</div><div xmlns="http://www.w3.org/1999/xhtml">> архивов sssd-1.16.3-alt1.S1.src.rpm. Вчерашняя сборка</div><div xmlns="http://www.w3.org/1999/xhtml">> sssd-2.0.0-alt1.src.rpm проблеме не подвержена.</div><div xmlns="http://www.w3.org/1999/xhtml">></div><div xmlns="http://www.w3.org/1999/xhtml">> asheplyakov@, собиравший 1.16.3-alt1 и исправлявший как раз</div><div xmlns="http://www.w3.org/1999/xhtml">> эти два теста, посмотрел на проблему и сказал, что в сборочной</div><div xmlns="http://www.w3.org/1999/xhtml">> среде во время пересборки не был смонтирован /proc. Тем временем,</div><div xmlns="http://www.w3.org/1999/xhtml">> BR: /proc в спеке, естественно, был.</div><div xmlns="http://www.w3.org/1999/xhtml">></div><div xmlns="http://www.w3.org/1999/xhtml">> Дальше веселее: оказывается, sssd-1.16.3-alt1.S1.src.rpm</div><div xmlns="http://www.w3.org/1999/xhtml">> пересобирается в сизифном хешере самa по себе, но не пересобирается</div><div xmlns="http://www.w3.org/1999/xhtml">> с --query-repackage. Это странно: мне казалось, что на пакеты,</div><div xmlns="http://www.w3.org/1999/xhtml">> собираетмые в Сизиф из gear, --query-repackage не должен</div><div xmlns="http://www.w3.org/1999/xhtml">> значимо влиять, однако он, очевидно, влиял.</div><div xmlns="http://www.w3.org/1999/xhtml">></div><div xmlns="http://www.w3.org/1999/xhtml">> В логах hsh --verborse --query-repackage sssd-1.16.3-alt1.S1.src.rpm</div><div xmlns="http://www.w3.org/1999/xhtml">> нашёлся такой фрагмент:</div><div xmlns="http://www.w3.org/1999/xhtml">></div><div xmlns="http://www.w3.org/1999/xhtml">> Building for target x86_64</div><div xmlns="http://www.w3.org/1999/xhtml">> Wrote: /usr/src/in/nosrpm/sssd-1.16.3-alt1.nosrc.rpm</div><div xmlns="http://www.w3.org/1999/xhtml">> hsh-rebuild: sssd-1.16.3-alt1.S1.src.rpm: created src.rpm file.</div><div xmlns="http://www.w3.org/1999/xhtml">> hsh-rebuild: sssd-1.16.3-alt1.S1.src.rpm: fetched build dependencies.</div><div xmlns="http://www.w3.org/1999/xhtml">> hsh-rebuild: sssd-1.16.3-alt1.S1.src.rpm: calculated build dependencies:</div><div xmlns="http://www.w3.org/1999/xhtml">> hsh-rebuild: calculated mount points:</div><div xmlns="http://www.w3.org/1999/xhtml">> hsh-rebuild: fetched installed file dependencies.</div><div xmlns="http://www.w3.org/1999/xhtml">> hsh-rebuild: calculated mount points:</div><div xmlns="http://www.w3.org/1999/xhtml">></div><div xmlns="http://www.w3.org/1999/xhtml">> Куда же пропали все зависимости? Оказывается, haser пытается получить</div><div xmlns="http://www.w3.org/1999/xhtml">> их вот так[1]:</div><div xmlns="http://www.w3.org/1999/xhtml">></div><div xmlns="http://www.w3.org/1999/xhtml">> rpmquery -pR -- "\${@%.src.rpm}".*src.rpm</div><div xmlns="http://www.w3.org/1999/xhtml">></div><div xmlns="http://www.w3.org/1999/xhtml">> ну то есть выполняется команда</div><div xmlns="http://www.w3.org/1999/xhtml">></div><div xmlns="http://www.w3.org/1999/xhtml">> rpmquery -pR -- sssd-1.16.3-alt1.S1.*src.rpm</div><div xmlns="http://www.w3.org/1999/xhtml">></div><div xmlns="http://www.w3.org/1999/xhtml">> Однако release у sssd на самом деле alt1%ubt, что в современных</div><div xmlns="http://www.w3.org/1999/xhtml">> реалиях раскрывается в просто alt1, и файлов, соответствующих</div><div xmlns="http://www.w3.org/1999/xhtml">> шаблону sssd-1.16.3-alt1.S1.*src.rpm просто нет.</div><div xmlns="http://www.w3.org/1999/xhtml">></div><div xmlns="http://www.w3.org/1999/xhtml">> Добавьте к этому фишку rpmquery: она умеет раскрывать шаблоны</div><div xmlns="http://www.w3.org/1999/xhtml">> имён файлов сама, и если ни один файл не попал под шаблон, не</div><div xmlns="http://www.w3.org/1999/xhtml">> считает это ошибкой:</div><div xmlns="http://www.w3.org/1999/xhtml">></div><div xmlns="http://www.w3.org/1999/xhtml">> $ rpmquery -pR foo; echo "exit code: $?"</div><div xmlns="http://www.w3.org/1999/xhtml">> error: open of foo failed: No such file or directory</div><div xmlns="http://www.w3.org/1999/xhtml">> exit code: 1</div><div xmlns="http://www.w3.org/1999/xhtml">> $ rpmquery -pR 'foo*'; echo "exit code: $?"</div><div xmlns="http://www.w3.org/1999/xhtml">> exit code: 0</div><div xmlns="http://www.w3.org/1999/xhtml">></div><div xmlns="http://www.w3.org/1999/xhtml">> В итоге хешер считает, что у пакета просто нет зависимостей.</div><div xmlns="http://www.w3.org/1999/xhtml">> Однако к этому времени в чруте уже достаточно всего чтобы у</div><div xmlns="http://www.w3.org/1999/xhtml">> sssd прошёл ./configure, и сброка падает только на тестах.</div><div xmlns="http://www.w3.org/1999/xhtml">></div><div xmlns="http://www.w3.org/1999/xhtml">> В новой сборке sssd %ubt в релизе уже нет, так что ежедневная</div><div xmlns="http://www.w3.org/1999/xhtml">> пересборка должна проходить успешно.</div><div xmlns="http://www.w3.org/1999/xhtml">></div><div xmlns="http://www.w3.org/1999/xhtml">> Вот такая вот история. Много букв, мораль не ясна.</div><div xmlns="http://www.w3.org/1999/xhtml"> </div><div xmlns="http://www.w3.org/1999/xhtml"> </div><div xmlns="http://www.w3.org/1999/xhtml">Мораль-то как раз ясна.</div><div xmlns="http://www.w3.org/1999/xhtml"> </div><div xmlns="http://www.w3.org/1999/xhtml">1) Принудительная замена %ubt на %nil (кроме свего прочего) сломала пересборку</div><div xmlns="http://www.w3.org/1999/xhtml">пакетов, которые а) используют %ubt, б) требуют /proc для сборки. Это изменение</div><div xmlns="http://www.w3.org/1999/xhtml">крайне необдуманное и несвоевременное. Нужно его отменить, и от %ubt уходить</div><div xmlns="http://www.w3.org/1999/xhtml">постепенно (если будет показана польза/необходимость такого ухода).</div><div xmlns="http://www.w3.org/1999/xhtml"> </div><div xmlns="http://www.w3.org/1999/xhtml">2) Метод "обновляйся, потом разберемся", с помощью которого "починили" пересборку sssd,</div><div xmlns="http://www.w3.org/1999/xhtml">в корне неверный, и привел к нерабочему sssd (подробности в <a href="https://bugzilla.altlinux.org/show_bug.cgi?id=35545)">https://bugzilla.altlinux.org/show_bug.cgi?id=35545)</a></div><div xmlns="http://www.w3.org/1999/xhtml">Правильное решение -- починить вычисление зависимостей во время пересборки.</div><div xmlns="http://www.w3.org/1999/xhtml">Обходной путь -- выпилить %ubt из спеки sssd (и других пакетов, которые "внезапно" перестали пересобираться).</div><div xmlns="http://www.w3.org/1999/xhtml"> </div><div xmlns="http://www.w3.org/1999/xhtml"> </div><div xmlns="http://www.w3.org/1999/xhtml">Всем бобра,</div><div xmlns="http://www.w3.org/1999/xhtml"> Алексей</div>
> _______________________________________________
> Devel mailing list
> Devel@lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/devel
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 801 bytes --]
next prev parent reply other threads:[~2018-10-30 20:22 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-23 11:03 Ivan A. Melnikov
2018-10-30 18:45 ` Ivan A. Melnikov
2018-10-30 20:22 ` Dmitry V. Levin [this message]
2018-11-01 8:38 ` Evgeny Sinelnikov
2018-11-01 9:30 ` [devel] про hasher и rpmquery Dmitry V. Levin
2018-11-01 9:47 ` [devel] /proc // " Ivan A. Melnikov
2018-11-01 10:07 ` Dmitry V. Levin
2018-12-29 13:44 ` [devel] " Dmitry V. Levin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20181030202205.GB24226@altlinux.org \
--to=ldv@altlinux.org \
--cc=devel@lists.altlinux.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git