ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Alexey Tourbin <at@altlinux.ru>
To: devel@lists.altlinux.org
Subject: Re: [devel] giter-factory: pkg_build_status
Date: Thu, 30 Aug 2007 19:43:56 +0400
Message-ID: <20070830154356.GF1332@solemn.turbinal> (raw)
In-Reply-To: <20070830120720.GC1332@solemn.turbinal>

[-- Attachment #1: Type: text/plain, Size: 3025 bytes --]

On Thu, Aug 30, 2007 at 04:07:20PM +0400, Alexey Tourbin wrote:
> On Thu, Aug 30, 2007 at 03:06:41PM +0400, Alexey Tourbin wrote:
> > Хорошо.  Будем исходить из отказа от src.rpm и большой неопределенности
> > на стадии запроса собрать пакет из gear.  КТО-ТО попросил собрать
> > КАКОЙ-ТО gear-репозитарий.  Применять ACL на данном этапе глупо,
> > gear-репозитарий может называться как угодно, и мы НЕ ЗНАЕМ, что
> > же из него в конечном счёт может собраться.  Единственный способ
> > это выяснить -- собрать gear-репозитарий.
> 
> Кстати, я не понял, как вы (ldv и legion) собираетесь реализовать
> проверку наследования коммитов.  Проверка наследования коммитов
> подразумевает, что есть публичный репозитарий с точно таким же
> именем, в котором хедом является предыдущая (текущяя) сборка.
> Но имя репозитария это по сути имя каталога, оно ничем не
> ограничено, и нет никаких ограничений на соответствие между
> именем репозитария и rpm-пакетами, которые из него собираются.
> 
> Допустим, я опубликовал perl2.git в котором нет наследования
> от perl.git.  Публичного репозитария perl2.git ещё нету, поэтому
> проверка наследования "для нового пакета" отключается, а собранные
> пакеты perl-* просто пройдут в сизиф?

Вот решение проблемы: требовать, чтобы имя gear-репозитария в точности
совпадало с именем src.rpm пакета, который получился при сборке.

--- pkg_build_status.txt-	2007-08-30 15:30:38 +0000
+++ pkg_build_status.txt	2007-08-30 15:34:17 +0000
@@ -24,6 +24,10 @@
 check_build_status :: build_arch_status+ -> pkg_build_status | reject
 	all primary arches must build (hasher_exit_status = 0 for primary_arches)
 	all srpm_NSVR must be the same (map this.srpm_NSVR build_arch_status+ |sort -u |wc -l => 1)
+	require that $(basename gear-request.gear-repo .git) exactly matches srpm_NSVR.name
+	if has public gear-request.gear-repo; then
+		check commit ancestry $(public gear-repo) gear-request.commit-id
+	fi
 	if at least one RPMS.hasher/*.rpm is noarch; then
 		# noarch packages must build essentially the same on all arches
 		# otherwise we DO NOT KNOW how to move them to sisyphus

В этом случае мы уже убедились, что пакет собрался на всех основных
архитектурах, и что на всех архитектурах srpm_NSVR совпадает.  Значит,
теперь мы точно знаем "базовое имя пакета" (имя src.rpm пакета), даже
с некоторой защитой от фальсификации имени.

Тут получается вот какая особенность: проверить наследование коммитов
можно ТОЛЬКО ПОСЛЕ ТОГО, КАК ПАКЕТ УЖЕ СОБРАЛСЯ (причем, на всех
основных архитектурах).  Это противоречит нашему интуитивному
представлению о том, что наследование коммитов нужно проверять
до того, как собирать пакет.

Ну противоречит и ладно.  Не вижу в этом большой проблемы.
Квантовая механика тоже противоречит инуитивным представлениям,
причем неким похожим образом -- "нельзя узнать раньше времени,
пока оно таки не случится".
http://en.wikipedia.org/wiki/Wavefunction_collapse
http://en.wikipedia.org/wiki/Double-slit_experiment

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

  parent reply	other threads:[~2007-08-30 15:43 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-08-30 11:06 Alexey Tourbin
2007-08-30 12:07 ` Alexey Tourbin
2007-08-30 12:33   ` Kirill A. Shutemov
2007-08-30 12:44     ` Alexey Tourbin
2007-08-30 13:11       ` Kirill A. Shutemov
2007-08-30 13:15         ` Kirill A. Shutemov
2007-08-30 15:12       ` Dmitry V. Levin
2007-08-30 15:24         ` Alexey Tourbin
2007-08-30 15:54           ` Dmitry V. Levin
2007-08-30 16:04             ` Kirill A. Shutemov
2007-08-30 16:11               ` Dmitry V. Levin
2007-08-30 16:14               ` Alexey Tourbin
2007-08-30 20:38             ` Alexey Tourbin
2007-08-30 15:43   ` Alexey Tourbin [this message]
2007-08-30 16:00     ` Dmitry V. Levin
2007-08-30 17:27       ` Alexey Tourbin
2007-08-30 17:40         ` Dmitry V. Levin
2007-08-30 17:50           ` Alexey Tourbin
2007-08-30 18:00             ` Dmitry V. Levin
2007-08-30 20:26               ` Kirill Shutemov
2007-08-30 16:01 ` Dmitry V. Levin
2007-08-30 16:50   ` Alexey Tourbin

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=20070830154356.GF1332@solemn.turbinal \
    --to=at@altlinux.ru \
    --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