On Wed, Feb 19, 2014 at 05:43:29AM +0900, Hiroki Sato wrote: > Glen Barber <g...@freebsd.org> wrote > in <20140218193256.gu1...@glenbarber.us>: > > gj> On Tue, Feb 18, 2014 at 12:36:55PM -0500, Glen Barber wrote: > gj> > On Tue, Feb 18, 2014 at 05:33:53PM +0000, User Www-data wrote: > gj> > > [...] > gj> > > > gj> > > 13.59 real 6.06 user 8.14 sys > gj> > > mkdir: /usr/local/www/www.freebsd.org-clean: Permission denied > gj> > > *** [realinstall] Error code 1 > gj> > > > gj> > > Stop in /home/www/build/head/en_US.ISO8859-1/htdocs. > gj> > > 0.03 real 0.00 user 0.02 sys > gj> > > gj> > Whoops. > gj> > > gj> > This is me "fixing" things. > gj> > > gj> > gj> So, what I was working on is making the build clean up after itself, in > gj> particular, things that are no longer part of the build. > gj> > gj> DESTDIR has changed, and is purged before every build (even the "quick" > gj> incremental builds). Once the build finishes, the files are installed > gj> to the new DESTDIR, then synced to the public web root. > gj> > gj> When a full site refresh is done (once a week, as was done before), > gj> rsync is called with '--delete', so anything removed from the DESTDIR > gj> will be purged from the public web root. > > Hmm, replacing www/www.freebsd.org with a symlink might be simpler > than copying files in DESTDIR into PUBDIR and removing DESTDIR > everytime. Create a staging directory and set DESTDIR to it, do make > install as before, and make the symlink to point the DESTDIR as a > newly-built document set (and removing the old directory). It does > not need copying files and the contents can be switched atomically. >
I did think about this, but did not want to change the permissions on the web root (root:wheel now) to allow the unprivileged user to arbitrarily create symlinks. Glen
pgpeVptu9_4rK.pgp
Description: PGP signature