Thread: Syncing local repo with apt.postgresql.org (selectively add debs to prevent uncontrolled upgrades)

Hi,

we're running multiple database machines with Ubuntu 10.04 and 12.04. The version of postgres in the official repositories is quite old, therefore we'd like to use this nice repo you provided.
We're using reprepro to mirror
the official ubuntu repos and to provide an internal separate repository for our custom made packages.
We would like to make a newer version of postgres available by placing the debian packages from your repository into ours, so to have maximum control over which version gets installed in our machines and avoid a new version of postgres from being available at every synch. Since the packages and the dependencies are many and I don't want to take the risk of missing some (by manually fetching each package from you repo), is there any script that downloads the main debian package and its dependencies?
I'm no expert of repositories in general or of reprepro, so I'm open to any suggestion. Maybe this could be done in a better, automated way with reprepro itself :)

Thanks for your time!

Nicola
-- 
Nicola Volpini
Infrastructure Operations Engineer

 

CONFIDENTIALITY NOTICE: This email message (and any attachment) is intended only for the individual or entity to which it is addressed. The information in this email is confidential and may contain information that is legally privileged or exempt from disclosure under applicable law. If you are not the intended recipient, you are strictly prohibited from reading, using, publishing or disseminating such information and upon receipt, must permanently delete the original and destroy any copies. We take steps to protect against viruses and other defects but advise you to carry out your own checks and precautions as Kambi does not accept any liability for any which remain. Thank you for your co-operation.

Re: Nicola Volpini 2013-04-15 <516BB700.7090401@kambi.com>
> Hi,
>
> we're running multiple database machines with Ubuntu 10.04 and 12.04. The version of postgres in the official
repositoriesis quite old, therefore we'd like to use this nice repo you provided. 
> We're using reprepro to mirror the official ubuntu repos and to provide an internal separate repository for our
custommade packages. 
> We would like to make a newer version of postgres available by placing the debian packages from your repository into
ours,so to have maximum control over which version gets installed in our machines and avoid a new version of postgres
frombeing available at every synch. Since the packages and the dependencies are many and I don't want to take the risk
ofmissing some (by manually fetching each package from you repo), is there any script that downloads the main debian
packageand its dependencies? 
> I'm no expert of repositories in general or of reprepro, so I'm open to any suggestion. Maybe this could be done in a
better,automated way with reprepro itself :) 

Hi Nicola,

You are probably interested in a specific version of postgresql, say
postgresql-9.1. In that case, I'd suggest pulling all binary packages
built by this source package (have a look at "apt-cache showsrc
postgresql-9.1"). You'll also need "postgreql-common" and
"postgresql-client-common" (built from the "postgresql-common"
source).

(libpq5 (and friends) in the "main" repository are those built by
postgresql-9.2, these are fine to use even with postgresql-9.1.)

reprepro has built-in machinery to pull packages from other
repositories, see the "update" and "pull" commands. I forgot what the
difference between these is, but it looks like "update" would
automatically sync one distribution from a remote repo to a local
distribution, while "pull" allows you to pull specific packages.

You should probably look into setting up a pull from
apt.postgresql.org. I remember doing that once, it wants a file with a
list of packages to sync over. Shouldn't be hard to do.

The plethora of other packages are modules for specific data types and
the like, you won't need these. The dependencies between the packages
should be correct in the sense that if you missed pulling one, apt
will tell you, so if you won't run into hidden problems.

Christoph
--
cb@df7cb.de | http://www.df7cb.de/


On 04/16/2013 10:18 AM, Christoph Berg wrote:
> Re: Nicola Volpini 2013-04-15 <516BB700.7090401@kambi.com>

Hi Christoph,

thanks for the suggestions. I was not aware of the "pull" command, I
completely missed it!
Right now I setup reprepro to mirror the entire pgsql repo and added our
new repo line to apt.sources.d on each machine. It's not as granular as
I hoped since it pulls everything but at least the DBAs are happy.
According to what you wrote it should not cause conflicts or issues due
to libraries or packages simply not being pulled from the repo unless
explicitly installed.

I'll surely need the pull feature in the near future, so it's still a
good thing to investigate it.

Thanks for your help Christoph, much appreciated!

Nicola

--
Nicola Volpini
Infrastructure Operations Engineer


CONFIDENTIALITY NOTICE: This email message (and any attachment) is intended only for the individual or entity to which
itis addressed. The information in this email is confidential and may contain information that is legally privileged or
exemptfrom disclosure under applicable law. If you are not the intended recipient, you are strictly prohibited from
reading,using, publishing or disseminating such information and upon receipt, must permanently delete the original and
destroyany copies. We take steps to protect against viruses and other defects but advise you to carry out your own
checksand precautions as Kambi does not accept any liability for any which remain. Thank you for your co-operation.