DESCRIPTION
buildd.conf is a Perl script which is sourced by buildd to permit configuration. It is run in a sandbox and restricted to setting a small number of variables, detailed below, which may be set to configure the behaviour of buildd. Each variable has an internal name, shown in all caps, and a perl variable showing the default setting. Note that the internal name is not accessible within buildd.conf; only the variable may be assigned. Also note that some of the defaults are set to be unique for each build, and so some of the defaults shown here are unique to the user and system used to build sbuild, and will be different for your system.While buildd permits many aspects of its behaviour to be configured, this should not normally be required. The defaults should be adequate for most uses, and should only be changed if you are doing something more advanced, or have specialist requirements.
CONFIGURATION
Build environment
- PATH
- STRING type. PATH to set when running dpkg-buildpackage.
- Related sbuild(1) command line options:
-
--use-snapshot
- Default:
-
$path = '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games';
Build options
- BUILD_ARCH
- STRING type. Build architecture (Arch we are building on).
- Related sbuild(1) command line options:
-
--arch
--build
-
build_arch = ...;
- BUILD_PROFILES
- STRING type. Build profiles. Separated by spaces.
- Related sbuild(1) command line options:
-
--profiles
- Default:
-
$build_profiles = '';
- DISTRIBUTION
- STRING type. Default distribution. By default, no distribution is defined, and the user must specify it with the -d option. However, a default may be configured here if desired. Users must take care not to upload to the wrong distribution when this option is set, for example experimental packages will be built for upload to unstable when this is not what is required.
- Related sbuild(1) command line options:
-
-d
--dist
- Default:
-
$distribution = undef;
- DISTRIBUTIONS
- ARRAY:HASH:SCALAR type. List of distributions that buildd should take packages from Example:
-
$distributions = [
{
# name of the suite to build (also used to query wanna-build)
dist_name => ["unstable", "testing"],
# architecture to be built (will be passed to sbuild and can be
# used to compute wanna_build_db_name)
built_architecture => undef,
# host on which wanna-build is run
wanna_build_ssh_host => "buildd.debian.org",
# user as who we are going to connect to the host running wanna-build
wanna_build_ssh_user => "buildd_arch",
# SSH control socket path for ssh -S option
wanna_build_ssh_socket => "",
# Additional SSH options used when connecting
wanna_build_ssh_options => [],
# database used for wanna-build
wanna_build_db_name => "arch/build-db",
# Username to use for wanna-build.
wanna_build_db_user => $Buildd::username,
# Local queue directory where binaries are stored before uploaded
# by dupload. You need to configure this directory in
# @upload_queues to get packages uploaded from there.
dupload_local_queue_dir => "upload",
# list of packages which shouldn't be picked up by buildd
no_auto_build => [],
# list of packages which should only be taken if there absolutely
# nothing else to do (probably packages included in no_auto_build
# because they take too long)
weak_no_auto_build => [],
# regex used to filter out unwanted packages:
#no_build_regex => "^(contrib/|non-free/)?non-US/",
# regex used to filter packages to build:
#build_regex => "",
# mail addr of buildd admin handling packages from this distribution
logs_mailed_to => $admin_mail,
# schroot name (or alias) of the chrooted environment to use for
# building (will be passed to sbuild). sbuild's default is
# the first of $distribution-$arch-sbuild, $distribution-sbuild,
# $distribution-$arch and $distribution.
sbuild_chroot => undef,
}
];
-
distributions = ...;
- HOST_ARCH
- STRING type. Host architecture (Arch we are building for)
- Related sbuild(1) command line options:
-
--arch
--host
-
host_arch = ...;
- NICE_LEVEL
- NUMERIC type. Nice level to run sbuild. Dedicated build daemons should not be niced.
- Default:
-
$nice_level = 10;
Core options
- BUILD_USER
- STRING type. Username used for running dpkg-buildpackage. By default the user running sbuild is used within the chroot as well but that might allow a process from within the chroot to break out of the chroot by attaching to a process running outside the chroot with eg. gdb and then becoming root inside the chroot through schroot and thus be able to leave the chroot.
-
build_user = ...;
Daemon
- DAEMON_LOG_FILE
- STRING type. Main buildd daemon log file
- Default:
-
$daemon_log_file = '/sbuild-nonexistent/daemon.log';
- DELAY_AFTER_GIVE_BACK
- NUMERIC type. Time to avoid packages that have automatically been given back by sbuild (in minutes)
- Default:
-
$delay_after_give_back = 480;
- IDLE_SLEEP_TIME
- NUMERIC type. Time to sleep when idle (in seconds) between wanna-build --list=needs-build calls)
- Default:
-
$idle_sleep_time = 300;
- MAX_SBUILD_FAILS
- NUMERIC type. Maximum number of times sbuild can fail before sleeping
- Default:
-
$max_sbuild_fails = 2;
- MIN_FREE_SPACE
- NUMERIC type. Minimum free space (in KiB) on build filesystem
- Default:
-
$min_free_space = 51200;
- NO_DETACH
- BOOL type. Disable becoming a daemon, for debugging purposes. Set to 1 to stop daemonising, otherwise set to 0 to become a daemon.
- Default:
-
$no_detach = 0;
- PIDFILE
- STRING type. PID file to identify running daemon.
- Default:
-
$pidfile = '/sbuild-nonexistent/build/buildd.pid';
- SHOULD_BUILD_MSGS
- BOOL type. Should buildd send "Should I build" messages?
- Default:
-
$should_build_msgs = 1;
Logging options
- DEBUG
- NUMERIC type. Debug logging level
- Default:
-
$debug = 0;
- VERBOSE
- NUMERIC type. Verbose logging level
- Default:
-
$verbose = 0;
- ADMIN_MAIL
- STRING type. email address for admin
- Default:
-
$admin_mail = 'root';
- ERROR_MAIL_WINDOW
- NUMERIC type. If more than five error mails are received within the specified time (in seconds), do not forward (to avoid possible mail loops)
- Default:
-
$error_mail_window = 28800;
- LOG_QUEUED_MESSAGES
- BOOL type. Log success messages from upload queue daemon?
- Default:
-
$log_queued_messages = 0;
Programs
- APT_GET
- STRING type. Path to apt-get binary
- Default:
-
$apt_get = 'apt-get';
- MAILPROG
- STRING type. Program to use to send mail
- Default:
-
$mailprog = '/usr/sbin/sendmail';
- SSH
- STRING type. Path to ssh binary
- Default:
-
$ssh = 'ssh';
- SUDO
- STRING type. Path to sudo binary
- Default:
-
$sudo = 'sudo';
Uploader
- UPLOAD_QUEUES
- ARRAY:HASH:SCALAR type. Package upload queues Example:
-
$upload_queues = [
{
# Local queue directory where binaries are stored before uploaded
# by dupload.
dupload_local_queue_dir => "upload",
# Upload site for buildd-upload to pass to dupload(1); see
# /etc/dupload.conf for possible values.
dupload_archive_name => "anonymous-ftp-master",
},
{
# Local queue directory where binaries are stored before uploaded
# by dupload.
dupload_local_queue_dir => "upload-security",
# Upload site for buildd-upload to pass to dupload(1); see
# /etc/dupload.conf for possible values.
dupload_archive_name => "security",
}
];
-
upload_queues = ...;
Watcher
- BUILD_LOG_KEEP
- NUMERIC type. Number of days until build logs are archived
- Default:
-
$build_log_keep = 2;
- DAEMON_LOG_KEEP
- NUMERIC type. Number of days until old daemon logs are archived in a .tar.gz file
- Default:
-
$daemon_log_keep = 7;
- DAEMON_LOG_ROTATE
- NUMERIC type. Number how many days until daemon logs are rotated (one is kept as daemon.log.old, others are moved to old-logs and gzipped)
- Default:
-
$daemon_log_rotate = 1;
- DAEMON_LOG_SEND
- BOOL type. email rotated daemon logs to the admin?
- Default:
-
$daemon_log_send = 1;
- NO_WARN_PATTERN
- STRING type. Don't complain about old files if they match the regexp.
- Default:
-
$no_warn_pattern = '^build/(SKIP|REDO|SBUILD-GIVEN-BACK|buildd\.pid|[^/]*.ssh|chroot-[^/]*|current-[^/]*)$';
- PKG_LOG_KEEP
- NUMERIC type. Number of days until to package logs are archived
- Default:
-
$pkg_log_keep = 7;
- STATISTICS_MAIL
- STRING type. email address for statistics summaries
- Default:
-
$statistics_mail = 'root';
- STATISTICS_PERIOD
- NUMERIC type. Period for statistic summaries (days)
- Default:
-
$statistics_period = 7;
- WARNING_AGE
- NUMERIC type. Age (in days) after which a warning is issued for files in upload and dirs in build
- Default:
-
$warning_age = 7;
wanna-build client
- BUILT_ARCHITECTURE
- STRING type. Architecture for database
-
wanna_build_built_architecture = ...;
- WANNA_BUILD_DB_NAME
- STRING type. Database name
- Default:
-
$wanna_build_db_name = undef;
- WANNA_BUILD_DB_USER
- STRING type. Database user
-
wanna_build_db_user = ...;
- WANNA_BUILD_SSH_HOST
- STRING type. Host for SSH connection
- Default:
-
$wanna_build_ssh_host = '';
- WANNA_BUILD_SSH_OPTIONS
- ARRAY:STRING type. SSH options. Note this is an array reference.
- Default:
-
$wanna_build_ssh_options = [];
- WANNA_BUILD_SSH_SOCKET
- STRING type. Socket for SSH connection
- Default:
-
$wanna_build_ssh_socket = '';
- WANNA_BUILD_SSH_USER
- STRING type. Username for SSH connection
- Default:
-
$wanna_build_ssh_user = '';
FILES
- /etc/buildd/buildd.conf
- Configuration, maintained by the system administrator. This may be used to override the defaults.
- ~/.builddrc
- User-specific configuration.
AUTHORS
Roman Hodek <[email protected]>.sbuild is based on debbuild, written by James Troup <[email protected]> and has been modified by
Ben Collins <[email protected]>, Ryan Murray <[email protected]>, Francesco Paolo Lovergine <[email protected]>, Michael Banck <[email protected]>, and Roger Leigh <[email protected]>
COPYRIGHT
Copyright © 1998-2000 Roman Hodek <[email protected]> Copyright © 1998-1999 James Troup <[email protected]> Copyright © 2003-2006 Ryan Murray <[email protected]> Copyright © 2001-2003 Rick Younie <[email protected]> Copyright © 2003-2004 Francesco Paolo Lovergine <[email protected]> Copyright © 2005 Michael Banck <[email protected]> Copyright © 2005-2009 Roger Leigh <[email protected]>