Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.80) (envelope-from ) id 1aLkSe-0001Cl-07 for pgsql-pkg-yum@arkaria.postgresql.org; Wed, 20 Jan 2016 04:33:36 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84) (envelope-from ) id 1aLkSd-0000rs-JY for pgsql-pkg-yum@arkaria.postgresql.org; Wed, 20 Jan 2016 04:33:35 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84) (envelope-from ) id 1aLkSa-0000of-HZ for pgsql-pkg-yum@postgresql.org; Wed, 20 Jan 2016 04:33:32 +0000 Received: from smtp80.ord1c.emailsrvr.com ([108.166.43.80]) by magus.postgresql.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.84) (envelope-from ) id 1aLkSV-0000hA-MH for pgsql-pkg-yum@postgresql.org; Wed, 20 Jan 2016 04:33:31 +0000 Received: from smtp11.relay.ord1c.emailsrvr.com (localhost.localdomain [127.0.0.1]) by smtp11.relay.ord1c.emailsrvr.com (SMTP Server) with ESMTP id BFF0728018C; Tue, 19 Jan 2016 23:33:24 -0500 (EST) X-Auth-ID: jeff.frost@pgexperts.com Received: by smtp11.relay.ord1c.emailsrvr.com (Authenticated sender: jeff.frost-AT-pgexperts.com) with ESMTPSA id 60A0628018B; Tue, 19 Jan 2016 23:33:24 -0500 (EST) X-Sender-Id: jeff.frost@pgexperts.com Received: from [10.10.10.15] (8.202-62-69.ftth.swbr.surewest.net [69.62.202.8]) (using TLSv1 with cipher DHE-RSA-AES256-SHA) by 0.0.0.0:587 (trex/5.5.4); Tue, 19 Jan 2016 23:33:24 -0500 Content-Type: multipart/alternative; boundary=Apple-Mail-F68235F3-8A45-4116-BC0E-5DB60CEB7A6E Mime-Version: 1.0 (1.0) Subject: Re: New and unified 9.5 spec file is in git From: Jeff Frost X-Mailer: iPhone Mail (13C75) In-Reply-To: Date: Tue, 19 Jan 2016 20:33:23 -0800 Cc: =?utf-8?Q?Devrim_G=C3=9CND=C3=9CZ?= , pgsql-pkg-yum Content-Transfer-Encoding: 7bit Message-Id: References: <1453239881.24314.362.camel@gunduz.org> To: Craig Ringer X-Pg-Spam-Score: -1.9 (-) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgsql-pkg-yum Precedence: bulk Sender: pgsql-pkg-yum-owner@postgresql.org --Apple-Mail-F68235F3-8A45-4116-BC0E-5DB60CEB7A6E Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable > On Jan 19, 2016, at 19:52, Craig Ringer wrote: >=20 > On 20 January 2016 at 10:15, Craig Ringer wrote: > =20 >>> If anyone could take a look at it, it would be awesome. >>=20 >> I'll look right now. >=20 >=20 > It built perfectly with mock on Fedora 21 for a F23 target. Brilliant! >=20 > To make it clear that they're the same is it worth having a common/ direct= ory at the same level as EL-5, F-23, etc and symlinking the specfile to the v= arious subdirs from there, along with any identical patches etc? >=20 > Here's the full build process I used: >=20 > sudo yum -y install rpmdevtools mock > git clone git://git.postgresql.org/git/pgrpms.git > cd pgrpms/rpm/redhat/9.5/postgresql/F-23 > spectool --get-files postgresql-9.5.spec > mock -r fedora-23-x86_64 --buildsrpm --sources . --spec postgresql-9.5.spe= c > cp /var/lib/mock/fedora-23-x86_64/result/postgresql95-9.5.0-2PGDG.fc23.src= .rpm . > mock -r fedora-23-x86_64 --rebuild postgresql95-9.5.0-2PGDG.fc23.src.rpm >=20 > I'm really happy about this, since it means the build depends are now corr= ect and it can be built without needing a dedicated build machine using noth= ing but mock. No need to manually set up dependencies anymore, set up a buil= d box, etc. No need to juggle x86_64 and i386 either, you can run builds for= *everything* from a single F23 box or VM or docker or whatever. >=20 > If the same process is followed for other packages then it'll become possi= ble to build the whole PGDG system with mockchain with no custom build machi= nes, building anywhere that mock is available. No accidental undeclared buil= d or runtime dependencies. Since you seem to be using Docker to prep build e= nvs now it's less of an issue than when the build boxes are hand-maintained,= but the great thing about mock is that it gets all the build depends info s= traight from the spec file. >=20 > I also rebuilt the F23 package for F21 just by changing the -r argument to= mock. Same for building it for i386 on an x86_64 host. >=20 > The EL-5 package built happily under mock for -r epel-5-i386 too. I didn't= test install it. >=20 > Thanks so much. This is great and I really hope you got some use out of my= prior work on it. >=20 This makes me so excited! I can't wait to try it and work on getting the oth= er packages set up this way as well! Great job you guys! > --=20 > Craig Ringer http://www.2ndQuadrant.com/ > PostgreSQL Development, 24x7 Support, Training & Services --Apple-Mail-F68235F3-8A45-4116-BC0E-5DB60CEB7A6E Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable

On Jan 19, 2016, at 19:= 52, Craig Ringer <craig@2ndquadr= ant.com> wrote:

On 20 January 20= 16 at 10:15, Craig Ringer <craig@2ndquadrant.com> wrote: 
If anyone could take= a look at it, it would be awesome.

I'll look right now.
=

It built perfectly with mock on Fedora 21 for a F23 target.= Brilliant!

To make it clear that they're the same is it= worth having a common/ directory at the same level as EL-5, F-23, etc and s= ymlinking the specfile to the various subdirs from there, along with any ide= ntical patches etc?

Here's the full build process I= used:

sudo yum -y install rpmdevtools mock
cd pgrpms/rpm/redhat/9.5/postgresql/F-23
spectool --get-files postgresql-9.5.spec
mock -r fedora-23-x86_64 --buildsrpm --sources . --spec= postgresql-9.5.spec
cp /var/lib/mock/fedora= -23-x86_64/result/postgresql95-9.5.0-2PGDG.fc23.src.rpm .
mock -r fedora-23-x86_64  --rebuild postgresql95-9.5.= 0-2PGDG.fc23.src.rpm

I'm really happy ab= out this, since it means the build depends are now correct and it can be bui= lt without needing a dedicated build machine using nothing but mock. No need= to manually set up dependencies anymore, set up a build box, etc. No need t= o juggle x86_64 and i386 either, you can run builds for *everything* from a s= ingle F23 box or VM or docker or whatever.
<= br>
If the same process is followed for othe= r packages then it'll become possible to build the whole PGDG system with mo= ckchain with no custom build machines, building anywhere that mock is availa= ble. No accidental undeclared build or runtime dependencies.  Since you= seem to be using Docker to prep build envs now it's less of an issue than w= hen the build boxes are hand-maintained, but the great thing about mock is t= hat it gets all the build depends info straight from the spec file.

I also rebuilt t= he F23 package for F21 just by changing the -r argument to mock. Same for bu= ilding it for i386 on an x86_64 host.

The EL-5 package built happily under mock for= -r epel-5-i386 too. I didn't test install it.

Thanks so much. This is great and I r= eally hope you got some use out of my prior work on it.


This makes me so excited! I can't wait to try it and work on getting the o= ther packages set up this way as well!

Great job yo= u guys!


--
 Craig Ringer    &n= bsp;            =   http://www.= 2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training= & Services
= --Apple-Mail-F68235F3-8A45-4116-BC0E-5DB60CEB7A6E--