summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthieu Saulnier <fantom@fedoraproject.org>2018-01-31 11:26:41 +0100
committerMatthieu Saulnier <fantom@fedoraproject.org>2018-01-31 11:26:41 +0100
commitbbebc4247869f6138850553d2308330457d4efce (patch)
tree3c3ae1b5147688c7ce9eb31a1ca084b8e44c00c7
parentdf8d17257d333c33ddb48c8c7c2c79f00c094b07 (diff)
downloadplaybooks-ansible-bbebc4247869f6138850553d2308330457d4efce.zip
playbooks-ansible-bbebc4247869f6138850553d2308330457d4efce.tar.gz
playbooks-ansible-bbebc4247869f6138850553d2308330457d4efce.tar.xz
Add base mock config provided by Remi <https://git.remirepo.net/cgit/rpms/mock.git/>
-rw-r--r--roles/clients/files/site-defaults.cfg314
-rw-r--r--roles/clients/vars/main.yml1
2 files changed, 315 insertions, 0 deletions
diff --git a/roles/clients/files/site-defaults.cfg b/roles/clients/files/site-defaults.cfg
new file mode 100644
index 0000000..23dcde4
--- /dev/null
+++ b/roles/clients/files/site-defaults.cfg
@@ -0,0 +1,314 @@
+# mock defaults
+# vim:tw=0:ts=4:sw=4:et:
+#
+# If you want to alter just some setting for one user, you can put the
+# configuration in:
+# ~/.config/mock.cfg
+#
+# This config file is for site-specific default values that apply across all
+# configurations. Options specified in this config file can be overridden in
+# the individual mock config files.
+#
+# The site-defaults.cfg delivered by default has NO options set. Only set
+# options here if you want to override the defaults.
+#
+# It's possible to use include statement in order to make one config included to another:
+# include('/path/to/included/config.cfg')
+#
+# Entries in this file follow the same format as other mock config files.
+# config_opts['foo'] = bar
+
+#############################################################################
+#
+# Things that we recommend you set in site-defaults.cfg:
+#
+# config_opts['basedir'] = '/var/lib/mock/'
+# config_opts['cache_topdir'] = '/var/cache/mock'
+# Note: the path pointed to by basedir and cache_topdir must be owned
+# by group 'mock' and must have mode: g+rws
+# config_opts['rpmbuild_timeout'] = 0
+# config_opts['use_host_resolv'] = True
+
+# You can configure log format to pull from logging.ini formats of these names:
+# config_opts['build_log_fmt_name'] = "unadorned"
+# config_opts['root_log_fmt_name'] = "detailed"
+# config_opts['state_log_fmt_name'] = "state"
+#
+# mock will normally set up a minimal chroot /dev.
+# If you want to use a pre-configured /dev, disable this and use the bind-mount
+# plugin to mount your special /dev
+# config_opts['internal_dev_setup'] = True
+#
+# internal_setarch defaults to 'True' if the python 'ctypes' package is
+# available. It is in the python std lib on >= python 2.5. On older versions,
+# it is available as an addon. On systems w/o ctypes, it will default to 'False'
+# config_opts['internal_setarch'] = False
+#
+# the cleanup_on_* options allow you to automatically clean and remove the
+# mock build directory, but only take effect if --resultdir is used.
+# config_opts provides fine-grained control. cmdline only has big hammer
+#
+# config_opts['cleanup_on_success'] = 1
+# config_opts['cleanup_on_failure'] = 1
+
+# The build user's homedir is partially cleaned up even when --no-clean is
+# specified in order to prevent garbage from previous builds from altering
+# successive builds. Mock can be configured to exclude certain files/directories
+# from this. Default is SOURCES directory to support nosrc rpms. Paths are
+# relative to build user's homedir
+# config_opts['exclude_from_homedir_cleanup'] = ['build/SOURCES']
+
+# By default Mock use simple chroot(1). When you set this to True
+# it will use systemd-nspawn(1)
+### Workarond for https://bugzilla.redhat.com/1530571
+config_opts['use_nspawn'] = False
+# If you're using nspawn, then by default networking will be turned off
+# for rpmbuild. This helps ensure more reproducible builds.
+# config_opts['rpmbuild_networking'] = False
+# Workaround for mock 1.4.7 - https://bugzilla.redhat.com/1514028
+config_opts['rpmbuild_networking'] = True
+## When RPM is build in container then build hostname is set to name of
+## container. This sets the build hostname to name of container's host.
+## Works only in F25+ chroots
+# config_opts['use_container_host_hostname'] = True
+
+# The default package manager is Yum
+# config_opts['package_manager'] = 'yum'
+# If you want to use DNF, set it to 'dnf'. To use DNf you need to have dnf and
+# dnf-plugins-core installed
+
+# You can configure Yum, DNF, rpm and rpmbuild executable paths if you need to
+# use different versions that the system-wide ones
+# config_opts['yum_command'] = '/usr/bin/yum'
+# config_opts['yum_builddep_command'] = '/usr/bin/yum-builddep'
+# config_opts['dnf_command'] = '/usr/bin/dnf'
+# config_opts['rpm_command'] = '/bin/rpm'
+# config_opts['rpmbuild_command'] = '/usr/bin/rpmbuild'
+# config_opts['target_dir'] = '/var/cache/%(package_manager)s/'
+#
+# By default a Yum/DNF update is performed before each rebuild
+# config_opts['update_before_build'] = True
+
+# if you want mock to automatically run createrepo on the rpms in your
+# resultdir.
+# config_opts['createrepo_on_rpms'] = False
+# config_opts['createrepo_command'] = '/usr/bin/createrepo_c -d -q -x *.src.rpm'
+
+# if you want mock to backup the contents of a result dir before clean
+# config_opts['backup_on_clean'] = False
+# config_opts['backup_base_dir'] = config_opts['basedir'] + "backup"
+
+# if you want to speed up the package installation and the build process, mock
+# can use nosync library to skip fsync and related calls from programs called
+# from within mock. It needs nosync library to be installed and for multilib
+# target, it requires both architectures of nosync to be present. If these
+# conditions aren't met, it won't be enabled
+# config_opts['nosync'] = False
+# if you cannot or don't want to install both architectures of nosync and still
+# want mock to use it, you can force it, but then expect a lot of (generally
+# harmless) error messages from ld.so when a 32bit program is executed
+# config_opts['nosync_force'] = False
+
+# By default Mock unshare namespace so it is different from your other application
+# in unpriviliged container, this is skipped. We will warn you that running mock
+# and some other applications in the same container is not good idea and
+# can be security risk. If you are fully aware of this risk or mock is your
+# only one application in that container you can disable the warning here.
+# config_opts['docker_unshare_warning'] = True
+
+#############################################################################
+#
+# plugin related. Below are the defaults. Change to suit your site
+# policy. site-defaults.cfg is a good place to do this.
+#
+# NOTE: Some of the caching options can theoretically affect build
+# reproducability. Change with care.
+#
+# config_opts['plugin_conf']['package_state_enable'] = True
+# config_opts['plugin_conf']['package_state_opts'] = {}
+# config_opts['plugin_conf']['package_state_opts']['available_pkgs'] = False
+# config_opts['plugin_conf']['package_state_opts']['installed_pkgs'] = True
+# config_opts['plugin_conf']['ccache_enable'] = False
+# config_opts['plugin_conf']['ccache_opts'] = {}
+# config_opts['plugin_conf']['ccache_opts']['max_cache_size'] = '4G'
+# config_opts['plugin_conf']['ccache_opts']['compress'] = None
+# config_opts['plugin_conf']['ccache_opts']['dir'] = "%(cache_topdir)s/%(root)s/ccache/u%(chrootuid)s/"
+# config_opts['plugin_conf']['yum_cache_enable'] = True
+# config_opts['plugin_conf']['yum_cache_opts'] = {}
+# config_opts['plugin_conf']['yum_cache_opts']['max_age_days'] = 30
+# config_opts['plugin_conf']['yum_cache_opts']['max_metadata_age_days'] = 30
+# config_opts['plugin_conf']['yum_cache_opts']['dir'] = "%(cache_topdir)s/%(root)s/%(package_manager)s_cache/"
+# config_opts['plugin_conf']['yum_cache_opts']['target_dir'] "/var/cache/%(package_manager)s/"
+# config_opts['plugin_conf']['yum_cache_opts']['online'] = True
+# config_opts['plugin_conf']['root_cache_enable'] = True
+# config_opts['plugin_conf']['root_cache_opts'] = {}
+# config_opts['plugin_conf']['root_cache_opts']['age_check'] = True
+# config_opts['plugin_conf']['root_cache_opts']['max_age_days'] = 15
+# config_opts['plugin_conf']['root_cache_opts']['dir'] = "%(cache_topdir)s/%(root)s/root_cache/"
+# config_opts['plugin_conf']['root_cache_opts']['compress_program'] = "pigz"
+# config_opts['plugin_conf']['root_cache_opts']['extension'] = ".gz"
+# config_opts['plugin_conf']['root_cache_opts']['exclude_dirs'] = ["./proc", "./sys", "./dev",
+# "./tmp/ccache", "./var/cache/yum" ]
+#
+# bind mount plugin is enabled by default but has no configured directories to
+# mount
+# config_opts['plugin_conf']['bind_mount_enable'] = True
+# config_opts['plugin_conf']['bind_mount_opts']['dirs'].append(('/host/path', '/bind/mount/path/in/chroot/' ))
+#
+# config_opts['plugin_conf']['tmpfs_enable'] = False
+# config_opts['plugin_conf']['tmpfs_opts'] = {}
+# config_opts['plugin_conf']['tmpfs_opts']['required_ram_mb'] = 1024
+# config_opts['plugin_conf']['tmpfs_opts']['max_fs_size'] = '768m'
+# config_opts['plugin_conf']['tmpfs_opts']['mode'] = '0755'
+# config_opts['plugin_conf']['tmpfs_opts']['keep_mounted'] = False
+#
+# config_opts['plugin_conf']['chroot_scan_enable'] = False
+# config_opts['plugin_conf']['chroot_scan_opts'] = {
+## Regexp of files which should be copied from buildroot to resultdir.
+# 'regexes': [ "^[^k]?core(\.\d+)?", "\.log$",],
+## If set to True files are copied only if build failed.
+# 'only_failed': True,
+#}
+#
+# lvm_root plugin is not enabled by default and is distributed in separate
+# subpackage mock-lvm. If you want to use it, it's recommended to disable the
+# root_cache plugin, otherwise you'd be caching twice.
+# config_opts['plugin_conf']['lvm_root_enable'] = False
+# config_opts['plugin_conf']['lvm_root_opts'] = {}
+# You need to give it a volume group with sufficient space. It won't touch any
+# of the existing logical volumes, so you can use the same volume group you use
+# for other purposes. It requires a name of the VG (not device path).
+# config_opts['plugin_conf']['lvm_root_opts']['volume_group'] = 'my_vg'
+# You need to specify the size that will mock's thinpool occupy. For regular
+# packages with small set of dependencies, 2G should suffice. For large packages
+# such as libreoffice, you should set it to at least 5 GB otherwise you may run
+# out of space and the build process will be blocked
+# config_opts['plugin_conf']['lvm_root_opts']['size'] = '2G'
+# You can specify alternative pool metadata size, format is the same as size.
+# Default value is determined by lvcreate based on size
+# config_opts['plugin_conf']['lvm_root_opts']['poolmetadatasize'] = None
+# When thin pool utilization is over 90% mock will refuse to continue.
+# Because once it reach 100% utilization weird things will happens.
+# config_opts['plugin_conf']['lvm_root_opts']['check_size'] = True
+
+### pm_request plugin can install packages requested from within the buildroot
+# It is disabled by default, as it affects build reproducibility. It can be enabled
+# by setting the following to True, but it's not advised to have it enabled globally.
+# It's better to enable it per build by using --enable-plugin pm_request
+# config_opts['plugin_conf']['pm_request_enable'] = False
+# config_opts['plugin_conf']['pm_request_opts'] = {}
+
+### If you want to compress mock log, enable this plugin
+# config_opts['plugin_conf']['compress_logs_enable'] = False
+# config_opts['plugin_conf']['compress_logs_opts'] = {}
+### Command used to compress logs - e.g. "/usr/bin/xz -9 --force"
+# config_opts['plugin_conf']['compress_logs_opts']['command'] = ""
+#
+# Configuration options for the sign plugin:
+# config_opts['plugin_conf']['sign_enable'] = False
+# config_opts['plugin_conf']['sign_opts'] = {}
+# config_opts['plugin_conf']['sign_opts']['cmd'] = 'rpmsign'
+# The options to pass to the signing command. %(rpms)s will be expanded to
+# the rpms in the results folder.
+# config_opts['plugin_conf']['sign_opts']['opts'] = '--addsign %(rpms)s -D "%%_gpg_name your_name" -D "%%_gpg_path /home/your_name/.gnupg'
+
+#############################################################################
+#
+# environment for chroot
+#
+# config_opts['environment']['TERM'] = 'vt100'
+# config_opts['environment']['SHELL'] = '/bin/bash'
+# config_opts['environment']['HOME'] = '/builddir'
+# config_opts['environment']['HOSTNAME'] = 'mock'
+# config_opts['environment']['PATH'] = '/usr/bin:/bin:/usr/sbin:/sbin'
+# config_opts['environment']['PROMPT_COMMAND'] = 'printf "\\033]0;<mock-chroot>\\007"'
+# config_opts['environment']['PS1'] = '<mock-chroot> \\s-\\v\\$ '
+# config_opts['environment']['LANG'] = os.environ.setdefault('LANG', 'en_US.UTF-8')
+# config_opts['environment']['TZ'] = os.environ.setdefault('TZ', 'EST5EDT')
+
+#############################################################################
+#
+# Things that you can change, but we dont recommend it:
+# config_opts['chroothome'] = '/builddir'
+# config_opts['clean'] = True
+## you could not really use substitution here so it will not work if overridden:
+# config['rootdir'] = '/var/lib/mock/<CONFIG>/root/'
+## This works in F25+ chroots. This overrides 'use_container_host_hostname' option
+# config_opts['macros']['%_buildhost'] = 'my.own.hostname'
+
+#############################################################################
+#
+# Things that must be adjusted if SCM integration is used:
+#
+# config_opts['scm'] = True
+# config_opts['scm_opts']['method'] = 'git'
+# config_opts['scm_opts']['cvs_get'] = 'cvs -d /srv/cvs co SCM_BRN SCM_PKG'
+# config_opts['scm_opts']['git_get'] = 'git clone SCM_BRN git://localhost/SCM_PKG.git SCM_PKG'
+# config_opts['scm_opts']['svn_get'] = 'svn co file:///srv/svn/SCM_PKG/SCM_BRN SCM_PKG'
+# config_opts['scm_opts']['spec'] = 'SCM_PKG.spec'
+# config_opts['scm_opts']['ext_src_dir'] = '/dev/null'
+# config_opts['scm_opts']['write_tar'] = True
+# config_opts['scm_opts']['git_timestamps'] = True
+# config_opts['scm_opts']['exclude_vcs'] = True
+
+# These options are also recognized but usually defined in cmd line
+# with --scm-option package=<pkg> --scm-option branch=<branch>
+# config_opts['scm_opts']['package'] = 'mypkg'
+# config_opts['scm_opts']['branch'] = 'master'
+
+#############################################################################
+#
+# Things that are best suited for individual chroot config files:
+#
+# MUST SET (in individual chroot cfg file):
+# config_opts['root'] = 'name-of-yum-build-dir'
+# Mock will set architecture to 'target_arch' using personality(2) syscall.
+# config_opts['target_arch'] = 'i386'
+# When host system architecture is not in 'legal_host_arches' list, mock will refuse to switch to
+# 'target_arch' and will raise error.
+# config_opts['legal_host_arches'] = ('i386', 'i586', 'i686', 'x86_64')
+# Contains content of $CHROOT/etc/yum/yum.conf or $CHROOT/etc/dnf/dnf.conf. If DNF is used and
+# 'dnf.conf' is not set, then content of 'yum.conf' is used to populate $CHROOT/etc/dnf/dnf.conf
+# config_opts['yum.conf'] = ''
+# or
+# config_opts['dnf.conf'] = ''
+# Important! You must use 'assumeyes=1' in yum/dnf.conf otherwise Mock will fail.
+#
+# Flip this if you want to get rid of warning message on systems which does not support DNF
+# Warning! Setting this to False will automatically use Yum on RHEL{6,7} platforms.
+# config_opts['dnf_warning'] = True
+#
+# CAN SET, defaults usually work ok:
+# config_opts['chroot_setup_cmd'] = 'install buildsys-build'
+# config_opts['chroot_additional_packages'] = ''
+# config_opts['log_config_file'] = 'logging.ini'
+# config_opts['more_buildreqs']['srpm_name-version-release'] = 'dependencies'
+# config_opts['macros']['%Add_your_macro_name_here'] = "add macro value here"
+# config_opts['files']['path/name/no/leading/slash'] = "put file contents here."
+# config_opts['chrootuid'] = os.getuid()
+# config_opts['releasever'] = '20'
+# config_opts['yum_common_opts'] = []
+# config_opts['dnf_common_opts'] = ['--disableplugin=local', '--setopt=deltarpm=false']
+# config_opts['yum_builddep_opts'] = ''
+# config_opts['dnf_builddep_opts'] = ''
+# config_opts['priorities.conf'] = 'put file contents here.'
+# config_opts['rhnplugin.conf'] = 'put file contents here.'
+# config_opts['subscription-manager.conf'] = 'put file contents here.'
+
+# If you change chrootgid, you must also change "mock" to the correct group
+# name in this line of the mock PAM config:
+# auth sufficient pam_succeed_if.so user ingroup mock use_uid quiet
+# config_opts['chrootgid'] = grp.getgrnam("mock")[2]
+
+# config_opts['useradd'] = '/usr/sbin/useradd -m -u %(uid)s -g %(gid)s -d %(home)s -n %(user)s' # Fedora/RedHat
+#
+# Security related
+# config_opts['no_root_shells'] = False
+#
+# Proxy settings (https_proxy, ftp_proxy, and no_proxy can also be set)
+# config_opts['http_proxy'] = 'http://localhost:3128'
+#
+# Extra dirs to be created when the chroot is initialized
+# This is just a list of strings representing chroot paths such as:
+# [ '/run/lock', ]
+# config_opts['extra_chroot_dirs'] = []
diff --git a/roles/clients/vars/main.yml b/roles/clients/vars/main.yml
index 3c0d80b..cb685dc 100644
--- a/roles/clients/vars/main.yml
+++ b/roles/clients/vars/main.yml
@@ -1,4 +1,5 @@
mockconf:
+ - site-defaults.cfg
- mock_config-fc25x-by_remi.cfg
- mock_config-fc26x-by_remi.cfg
- mock_config-fc27x-by_remi.cfg