From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on sa.int.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-1.6 required=5.0 tests=AWL,BAYES_00, DNS_FROM_OPENWHOIS,SPF_PASS autolearn=no version=3.2.5 Date: Tue, 7 Sep 2010 12:00:06 +0300 From: Igor Vlasenko To: ALT Linux Team development discussions Message-ID: <20100907090006.GA19901@dad.imath.kiev.ua> References: <20100906192410.GA9621@dad.imath.kiev.ua> <20100906210445.GA22079@altlinux.org> <20100907075343.GB17796@dad.imath.kiev.ua> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20100907075343.GB17796@dad.imath.kiev.ua> User-Agent: Mutt/1.5.20 (2009-08-17) Subject: Re: [devel] Cronbuild service is launched X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Sep 2010 09:00:15 -0000 Archived-At: List-Archive: List-Post: On Tue, Sep 07, 2010 at 10:53:43AM +0300, Igor Vlasenko wrote: > On Tue, Sep 07, 2010 at 01:04:45AM +0400, Alexey I. Froloff wrote: > > Как можно этим роботом собирать пакет ruby-tzinfo? > > Не по крону, а по мере выхода новых версий. > вот пример скриптов [...] > С этими скриптами putty будет автоматически обновляться > по мере выхода новых версий. Тот пример можно улучшить, так как скрипт качал исходники каждый раз. Робот за ним проверял, что обновление не произошло, но это не красиво. Вот улучшенный пример, выложен также на wiki: == пример скрипта для обновления при выходе новых версий с помошью .watch файла == Этот скрипт работает в случае, когда исходники публикуются в виде тарбола, а в git репозитарии хранятся в распакованном виде в поддиректории $PKGNAME. выход новых версий проверяется с помощью .watch файла. .gear/gronbuild-update-source: #!/bin/sh -ve PKGNAME=<...> url=`uscan -f $PKGNAME.watch` file=`basename "$url"` version=${file##$PKGNAME-} version=${version%%\.tar.*} echo $file $version eval `gear --command env | grep gear_pkg_version` [ "x$version" = "x$gear_pkg_version" ] && exit 0; rm -f $PKGNAME-*.tar.* wget -c $url tar xf $file rm -f $file git rm -r -f $PKGNAME rm -rf $PKGNAME mv $PKGNAME-*/ $PKGNAME git add $PKGNAME eval `gear --command env | grep gear_specfile` sed -i "s|^\(Version:).*|\1 $version|" $gear_specfile Заметим, что в скрипте также обновлялась версия, поэтому нужно создать пустой исполняемый файл .gear/gronbuild-update-version #!/bin/sh -ve чтобы переопределить стандартный метод. -- Dr. Igor Vlasenko -------------------- Topology Department Institute of Math Kiev, Ukraine