From owner-svn-doc-user@freebsd.org Thu Mar 30 17:12:49 2017 Return-Path: Delivered-To: svn-doc-user@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 88E91D26333 for ; Thu, 30 Mar 2017 17:12:49 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4A08CB11; Thu, 30 Mar 2017 17:12:49 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v2UHCmsl076861; Thu, 30 Mar 2017 17:12:48 GMT (envelope-from gjb@FreeBSD.org) Received: (from gjb@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v2UHCmIk076860; Thu, 30 Mar 2017 17:12:48 GMT (envelope-from gjb@FreeBSD.org) Message-Id: <201703301712.v2UHCmIk076860@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gjb set sender to gjb@FreeBSD.org using -f From: Glen Barber Date: Thu, 30 Mar 2017 17:12:48 +0000 (UTC) To: doc-committers@freebsd.org, svn-doc-user@freebsd.org Subject: svn commit: r50104 - user/gjb/releng-rewrite/en_US.ISO8859-1/articles/freebsd-releng X-SVN-Group: doc-user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-doc-user@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: SVN commit messages for doc experimental trees List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Mar 2017 17:12:49 -0000 Author: gjb Date: Thu Mar 30 17:12:48 2017 New Revision: 50104 URL: https://svnweb.freebsd.org/changeset/doc/50104 Log: - Document how thermite.sh creates the /R/ftp-stage hierarchy. - Document how the builds are staged to be polled by ftp-master. - Document how the builds are published after being staged. Sponsored by: The FreeBSD Foundation Modified: user/gjb/releng-rewrite/en_US.ISO8859-1/articles/freebsd-releng/releng-mirrors.xml Modified: user/gjb/releng-rewrite/en_US.ISO8859-1/articles/freebsd-releng/releng-mirrors.xml ============================================================================== --- user/gjb/releng-rewrite/en_US.ISO8859-1/articles/freebsd-releng/releng-mirrors.xml Thu Mar 30 17:10:14 2017 (r50103) +++ user/gjb/releng-rewrite/en_US.ISO8859-1/articles/freebsd-releng/releng-mirrors.xml Thu Mar 30 17:12:48 2017 (r50104) @@ -20,6 +20,27 @@ Creating the directory structure to match the hierarchy on ftp-master + + If EVERYTHINGISFINE is defined in the + build configuration files, main.conf in + the case of the build scripts referenced above, this happens + automatically in the &man.chroot.8; after the build is + complete, creating the directory structure in ${DESTDIR}/R/ftp-stage + with a path structure matching what is expected on + ftp-master. This is equivalent to + running the following in the &man.chroot.8; directly: + + &prompt.root; make -C /usr/src/release -f Makefile.mirrors EVERYTHINGISFINE=1 ftp-stage + + After each architecture is built, + thermite.sh will + rsync the ${DESTDIR}/R/ftp-stage + from the build &man.chroot.8; to /snap/ftp/snapshots or + /snap/ftp/releases on + the build host, respectively. @@ -27,6 +48,23 @@ ftp-master before moving the files into pub/ to begin propagation to the Project mirrors + + Once all builds have finished, /snap/ftp/snapshots, or + /snap/ftp/releases + for a release, is polled by + ftp-master using + rsync to /archive/tmp/snapshots or + /snap/ftp/releases, + respectively. + + + On ftp-master in the &os; + Project infrastructure, this step requires + root level access, as this step must + be executed as the archive user. + @@ -34,6 +72,42 @@ Publishing &os; Installation Media -   + Once the images are staged in /archive/tmp/, they are ready to + be made public by putting them in /archive/pub/FreeBSD. In order + to reduce propagation time, &man.pax.1; is used to create hard + links from /archive/tmp + to /archive/pub/FreeBSD. + + + In order for this to be effective, both /archive/tmp and /archive/pub must reside on the + same logical filesystem. + + + There is a caveat, however, where + rsync must be used after &man.pax.1; + in order to correct the symbolic links in pub/FreeBSD/snapshotsISO-IMAGES + which &man.pax.1; will replace with a hard link, increasing the + propagation time. + + + As with the staging steps, this requires + root level access, as this step must be + executed as the archive user. + + + As the archive user: + + &prompt.user; cd /archive/tmp/snapshots +&prompt.user; pax -r -w -l . /archive/pub/FreeBSD/snapshots +&prompt.user; /usr/local/bin/rsync -avH /archive/tmp/snapshots/* /archive/pub/FreeBSD/snapshots/ + + Replace snapshots with + releases as appropriate.