ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] Announce: cronbuild (полностью автоматическая сборка пакетов)
@ 2010-07-03 22:04 Igor Vlasenko
  2010-07-03 22:13 ` Igor Vlasenko
  2010-07-05 22:15 ` Dmitry V. Levin
  0 siblings, 2 replies; 4+ messages in thread
From: Igor Vlasenko @ 2010-07-03 22:04 UTC (permalink / raw)
  To: devel

Господа,

в свое время Евгений Ростовцев попросил меня написать скрипт,
который собирал бы по крону python-module-objects.inv каждые три дня. 
Скрипт был благополучно написан, и работает уже полгода.

Потом 

http://www.altlinux.org/Gear/cronbuild

Введение в cronbuild.

Некоторые пакеты по своей природе нуждаются в постоянном обновлении, при этом при обновлении у этих пакетов спек практически не меняется. К таким пакетам относятся различные базы - антивирусные, оборудования (foomatic-db, PCI IDs, мониторов, ...), cliparts, и т. д. Как правило, в версии/релизе таких пакетов присутствует timestamp. Система cronbuild предназначена для автоматизации сборки таких пакетов. Теперь майнтайнеру достаточно один раз настроить для пакета cronbuild и пакет будет автоматически собираться в Сизиф с заданной майнтайнером периодичностью, например, раз в неделю, до тех пор, пока сборка не сломается.

При этом пакеты собираются только тогда, когда это действительно нужно: если после обновления файлы исходников не изменились (согласно git diff <commit before update>), то сборка пакета будет пропущена, так как в ней нет необходимости. 

-- 

Dr. Igor Vlasenko
--------------------
Topology Department
Institute of Math
Kiev, Ukraine



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [devel] Announce: cronbuild (полностью автоматическая сборка пакетов)
  2010-07-03 22:04 [devel] Announce: cronbuild (полностью автоматическая сборка пакетов) Igor Vlasenko
@ 2010-07-03 22:13 ` Igor Vlasenko
  2010-07-05 22:15 ` Dmitry V. Levin
  1 sibling, 0 replies; 4+ messages in thread
From: Igor Vlasenko @ 2010-07-03 22:13 UTC (permalink / raw)
  To: devel

On Sun, Jul 04, 2010 at 01:04:23AM +0300, Igor Vlasenko wrote:
> Господа,
> 
> в свое время Евгений Ростовцев попросил меня написать скрипт,
> который собирал бы по крону python-module-objects.inv каждые три дня. 
> Скрипт был благополучно написан, и работает уже полгода.
> 
> Потом 
(засыпаю, отправил недописанное письмо)
Евгений попросил написать еще один скрипт,
на что я ответил, что это не unix-way и надо
писать универсальный скрипт. (и тут же отложил дело в долгий ящик;
спасибо Евгению за терпение).
Заставила проснуться история с foomatic-db.
Это действительно безобразие, что этот пакет не 
обновлялся почти год. 
Я собираюсь поставить сборку этого пакета на cron
и решить проблему раз и навсегда.

У кого есть похожие пакеты
(которые чем чаще обновляются, тем лучше,
а обновлять их лень)

прошу ознакомиться с 
http://www.altlinux.org/Gear/cronbuild

> Введение в cronbuild.
> 
> Некоторые пакеты по своей природе нуждаются в постоянном обновлении, при этом при обновлении у этих пакетов спек практически не меняется. К таким пакетам относятся различные базы - антивирусные, оборудования (foomatic-db, PCI IDs, мониторов, ...), cliparts, и т. д. Как правило, в версии/релизе таких пакетов присутствует timestamp. Система cronbuild предназначена для автоматизации сборки таких пакетов. Теперь майнтайнеру достаточно один раз настроить для пакета cronbuild и пакет будет автоматически собираться в Сизиф с заданной майнтайнером периодичностью, например, раз в неделю, до тех пор, пока сборка не сломается.
> 
> При этом пакеты собираются только тогда, когда это действительно нужно: если после обновления файлы исходников не изменились (согласно git diff <commit before update>), то сборка пакета будет пропущена, так как в ней нет необходимости. 

-- 

Dr. Igor Vlasenko
--------------------
Topology Department
Institute of Math
Kiev, Ukraine



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [devel] Announce: cronbuild (полностью автоматическая сборка пакетов)
  2010-07-03 22:04 [devel] Announce: cronbuild (полностью автоматическая сборка пакетов) Igor Vlasenko
  2010-07-03 22:13 ` Igor Vlasenko
@ 2010-07-05 22:15 ` Dmitry V. Levin
  2010-07-06 19:43   ` Igor Vlasenko
  1 sibling, 1 reply; 4+ messages in thread
From: Dmitry V. Levin @ 2010-07-05 22:15 UTC (permalink / raw)
  To: ALT Devel discussion list

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

On Sun, Jul 04, 2010 at 01:04:23AM +0300, Igor Vlasenko wrote:
> http://www.altlinux.org/Gear/cronbuild
> 
> Введение в cronbuild.

Вопрос по архитектуре сервера удалённой сборки, описанного в
http://www.altlinux.org/Gear/cronbuild#.D1.81.D0.B5.D1.80.D0.B2.D0.B5.D1.80_.D1.83.D0.B4.D0.B0.D0.BB.D0.B5.D0.BD.D0.BD.D0.BE.D0.B9_.D1.81.D0.B1.D0.BE.D1.80.D0.BA.D0.B8_.28cronbuild_repocop.altlinux.org.29

Насколько я понял из описания, .gear/cronbuild-update-source -- это
произвольный shell-скрипт (наверное даже произвольный исполняемый файл).
Этот исполняемый файл живёт в том коммите, из которого пакет был последний
раз собран в Сизиф, и gear-cronbuild запустит этот файл автоматически.

Насколько я понимаю, тем самым реализовано исполнение произвольного кода
на удалённом сервере со всеми вытекающими последствиями.
Просьба ещё раз перечитать раздел REQUIREMENTS в hasher(7).


-- 
ldv

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

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [devel] Announce: cronbuild (полностью автоматическая сборка пакетов)
  2010-07-05 22:15 ` Dmitry V. Levin
@ 2010-07-06 19:43   ` Igor Vlasenko
  0 siblings, 0 replies; 4+ messages in thread
From: Igor Vlasenko @ 2010-07-06 19:43 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On Tue, Jul 06, 2010 at 02:15:32AM +0400, Dmitry V. Levin wrote:
> On Sun, Jul 04, 2010 at 01:04:23AM +0300, Igor Vlasenko wrote:
> > http://www.altlinux.org/Gear/cronbuild
> > 
> > Введение в cronbuild.
> 
> Вопрос по архитектуре сервера удалённой сборки, описанного в
> http://www.altlinux.org/Gear/cronbuild#.D1.81.D0.B5.D1.80.D0.B2.D0.B5.D1.80_.D1.83.D0.B4.D0.B0.D0.BB.D0.B5.D0.BD.D0.BD.D0.BE.D0.B9_.D1.81.D0.B1.D0.BE.D1.80.D0.BA.D0.B8_.28cronbuild_repocop.altlinux.org.29
> 
> Насколько я понял из описания, .gear/cronbuild-update-source -- это
> произвольный shell-скрипт (наверное даже произвольный исполняемый файл).
> Этот исполняемый файл живёт в том коммите, из которого пакет был последний
> раз собран в Сизиф, и gear-cronbuild запустит этот файл автоматически.
> 
> Насколько я понимаю, тем самым реализовано исполнение произвольного кода
> на удалённом сервере со всеми вытекающими последствиями.

В настоящее время не реализовано - удаленный сервер,
как таковой, не развернут.

Пока я только выложил пакет с локальными утилитами.
Теперь вопрос, будут ли желающие пользоваться этим сервисом.
Будут желающие - будет сервис.

> Просьба ещё раз перечитать раздел REQUIREMENTS в hasher(7).

Ок, конечно. Для меня было важно описать, как это выглядит
для майнтайнера, который хочет поставить сборку своего пакета
на автомат.

То, как оно устроено на сервере - от пользователя скрыто,
детали реализации. Т.е. легко можно обновлять репозиторий
в созданном хешером чруте, затем запускать сборку в другом
chroot, а при желании можно извратиться
и производить обновление .git в том же chroot, в котором 
будет идти сборка.

Вопрос, будут ли пользователи
(отличные от меня и Евгения Ростовцева).
Без них -- "You ain't gonna need it".

-- 

Dr. Igor Vlasenko
--------------------
Topology Department
Institute of Math
Kiev, Ukraine



^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2010-07-06 19:43 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-07-03 22:04 [devel] Announce: cronbuild (полностью автоматическая сборка пакетов) Igor Vlasenko
2010-07-03 22:13 ` Igor Vlasenko
2010-07-05 22:15 ` Dmitry V. Levin
2010-07-06 19:43   ` Igor Vlasenko

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