NAME
robsd
—
build OpenBSD release
SYNOPSIS
robsd |
[-d ] [-S
src-patch] [-X
xenocara-patch] [-c
comment] [-s
step] [-t
tag] |
robsd |
[-d ] -r
path |
DESCRIPTION
The robsd
utility builds a
OpenBSD release according to the
release(8) process. The process is divided into the steps as
follows:
- env
- Dump the current environment. This is a no operation only used to collect data useful while debugging.
- cvs
- Update or checkout the
bsd-srcdir
andx11-srcdir
source directories. This step is optional and requires presence of certain configuration, see robsd.conf(5). - patch
- Apply patches including sticky ones, see robsd.conf(5).
- kernel
- Build and install a new kernel using the
kernel
configuration, see robsd.conf(5). - reboot
- Reboot the machine before continuing the build, exercising the new kernel
by resuming
robsd
from rc.firsttime(8). This step is optional and requiresreboot
to be enabled, see robsd.conf(5). - base
- Build and install the base system.
- release
- Make and validate the base system.
- checkflist
- Check for missing contents in the release sets.
- xbase
- Build and install the xenocara system.
- xrelease
- Make and validate the xenocara system.
- image
- Create boot and installation disk images.
- hash
- Compute checksums for release files.
- revert
- Inverse of patch step.
- distrib
- Distribute the release files to another host using scp(1). This step is optional and requires presence of certain configuration, see robsd.conf(5).
- dmesg
- Take a copy of dmesg(8).
- end
- Auxillary step used to generate report.
Each invocation is identified by a directory created by
robsd
rooted in robsddir
and
is named after the current date. The directory contains the entries as
follows. In addition, each executed step has a corresponding log file in the
same directory.
- comment
- File used to annotate the invocation which is included in report. By default, it contains a list of all applied patches.
- dmesg
- Copy of dmesg(8).
- rel
- Directory containing the release files. Referred to as RELEASEDIR in release(8).
- report
- A summary delivered as a mail to root while running in the background once
robsd
exits. - robsd.log
- Standard output and error from
robsd
while running in the background. - snapshots/$(machine)
- Symlink to the rel directory, making the invocation directory compatible with sysupgrade(8).
- stat.csv
- Collected statistics, see robsd-stat(8).
- step.csv
- Internal representation of the executed steps, see robsd-step(8).
- tags
- Tags included in report.
robsd
is configured using
robsd.conf(5) and must run as root. Some steps can however operate on
behalf of another user. By default, robsd
runs in
the background and must be killed using
robsd-kill(8) to ensure a clean exit.
The options are as follows:
-d
- Do not detach
robsd
into the background. -S
src-patch- Patch to apply to
bsd-srcdir
. The patch path names can be relative to any directory inbsd-srcdir
. The same patch will be reverted by the revert step, see above. In addition, a copy of the patch is saved to a file named src.diff.N in the invocation directory where N is incremented for every given patch. May be given multiple times. -X
xenocara-patch- Patch to apply to
x11-srcdir
. The patch path names can be relative to any directory inx11-srcdir
. The same patch will be reverted by the revert step, see above. In addition, a copy of the patch is saved to a file named xenocara.diff.N in the invocation directory where N is incremented for every given patch. May be given multiple times. -c
comment- Path to comment included in report.
-r
path- Resume an invocation located at path. If the last executed step failed or aborted, it will be executed again. Otherwise, the next step will be executed.
-s
step- Skip step, see enumerated steps above. May be given multiple times.
-t
tag- Arbitrary tag used to annotate the invocation which is included in report. May be given multiple times.
FILES
- /etc/robsd.conf
- The default configuration file.
DIAGNOSTICS
The robsd
utility exits 0 on
success, and >0 if an error occurs.
SEE ALSO
robsd.conf(5), release(8), robsd-clean(8), robsd-cross(8), robsd-kill(8), robsd-ports(8), robsd-regress(8), robsd-rescue(8), robsd-stat(8)
AUTHORS
Anton Lindqvist <anton@basename.se>