poudriere: build on on server, rsync to another
Dan Langille
dan at langille.org
Fri Sep 27 17:24:18 UTC 2019
On Fri, Sep 27, 2019, at 10:44 AM, Matthew Seaman wrote:
> On 27/09/2019 15:26, Dan Langille wrote:
> > Hello,
> >
> > I am working on putting a new poudriere build server into production at work.
> >
> > At present, we build packages on one server & deploy them from another server.
> >
> > The package build server mounts an NFS share from /usr/local/poudriere/data/packages
> >
> > The package distribution server mounts that same NFS share in RO-mode. All hosts install from this server.
> >
> > I want to change this. The goal:
> >
> > * poudriere builds to local disk
> > * /usr/local/poudriere/data/packages will be rsync'd later to NFS
> > * the build & rsync process will not be serial/linked (i.e. a build will not trigger an rsync)
> >
> > My concern: will this work? Will the package distribution server get incomplete sets of packages?
> >
> > Thank you.
> >
>
> If you enable the ATOMIC_PACKAGE_REPOSITORY setting in poudriere.conf,
> then you won't see inconsistencies because you're rysnc'ing while
> poudriere is in the middle of re-building the repository.
>
> You might see inconsistencies because someone is trying to install
> packages while you're in the middle of rsyncing an updated repository.
> However, the atomic package repository mechanism works by juggling
> symbolic links at the top of the /usr/local/poudriere/data/packages
> directory tree -- if you arrange things to rsync any subdirectories
> first, and then finally synch over the symbolic link bits, you should be
> golden.
This is pretty much what we came up with on Twitter, but not so quickly. ;)
> Although, just sticking a webserver onto your poudriere build box would
> likely be easier overall and less effort to maintain.
Yes, I think so. We do have about 1TB of free disk space on this host.
Thinking further on this: one reason we install from another host is
avoid blocking package maintenance on other hosts when the build server
undergoes maintenance. This is something we can think about.
Thank you.
--
Dan Langille
dan at langille.org
More information about the freebsd-pkg
mailing list