Обсуждение: Build process documentation? Also patches to make it easier to buildindividual packages

Поиск
Список
Период
Сортировка

Build process documentation? Also patches to make it easier to buildindividual packages

От
Craig Ringer
Дата:
Hi

When I had to rebuild PostGIS 2.5 for EL-6 on Pg12 for a user, I found that the current build process for the repo appears to be undocumented. At least anywhere I could find in the repo, main pgdg yum site, and wiki entrypoint.

It looks like builds have transitioned to koji? Given ./scripts/kojimachines/syncscripts/buildpackage.sh etc?

Is there any chance I can request a short README of a couple of paragraphs added to the root of the repo that lists what's in each important directory, points to the important URLs, and mentions how the packages are built?

Would you be interested in accepting a sample definition for a container image to build/rebuild individual packages with too? To save others time in future if they need to do so? If you don't want to, that's fine, I can publish it separately.

On a side note: some spec files do not parse without additional macros so "yum builddep" cannot process them unless a definition for %pgmajorversion is added in ~/.rpmmacros . EL-6's yum builddep doesn't have a --define option to use at the command line. So in order to "yum builddep" those spec files I had to first

    echo '%pgmajorversion 12' >> /root/.rpmmacros

in my build container. Hope this helps someone else.

--
 Craig Ringer                   http://www.2ndQuadrant.com/
 2ndQuadrant - PostgreSQL Solutions for the Enterprise

Re: Build process documentation? Also patches to make it easier tobuild individual packages

От
Devrim Gündüz
Дата:
Hi Craig,

On Wed, 2019-12-18 at 14:39 +0800, Craig Ringer wrote:

> When I had to rebuild PostGIS 2.5 for EL-6 on Pg12 for a user, I found that
> the current build process for the repo appears to be undocumented. At least
> anywhere I could find in the repo, main pgdg yum site, and wiki entrypoint.

Right, and sorry about that.

> It looks like builds have transitioned to koji?

Nope, it is not koji. I (and Darcy B.) tried running koji a few times around
2007, and then gave up -- and did not change the naming since then.

> Given ./scripts/kojimachines/syncscripts/buildpackage.sh etc?

They are not up2date in git, and yes, I use something similar.

That said, we have separate VMs for each distro, which I build the packages on.
Recently I added 2 more VMs for CentOS 7 and 8, and use them to build non-free
repo packages.

> Is there any chance I can request a short README of a couple of paragraphs
> added to the root of the repo that lists what's in each important
> directory, points to the important URLs, and mentions how the packages are
> built?

Let's say you want to build Citus on RHEL 7. I have a wrapper script that
checks whether a software is available for a specific PostgreSQL version. If
yes, then it goes to $pgversion/#package_name/$distro_name, and runs make
build$pgversion.

When I find time, I'll document this.

> Would you be interested in accepting a sample definition for a container
> image to build/rebuild individual packages with too? To save others time in
> future if they need to do so? If you don't want to, that's fine, I can
> publish it separately.

Please publish it eeparately.

> On a side note: some spec files do not parse without additional macros so
> "yum builddep" cannot process them unless a definition for
> %pgmajorversion is added in ~/.rpmmacros . EL-6's yum builddep doesn't have
> a --define option to use at the command line. So in order to "yum builddep"
> those spec files I had to first
>
>     echo '%pgmajorversion 12' >> /root/.rpmmacros
>
> in my build container. Hope this helps someone else.


Thanks. I don't need this in my own environment, but apparently it is useful.

Regards,
--
Devrim Gündüz
Open Source Solution Architect, Red Hat Certified Engineer
Twitter: @DevrimGunduz , @DevrimGunduzTR

Вложения