Variables

Default variables

[defaults/main.yml]

  1---
  2# defaults freebsd_poudriere
  3
  4poudriere_install: true
  5poudriere_debug: false
  6poudriere_backup_conf: true
  7
  8freebsd_install_method: packages
  9# freebsd_install_method: ports
 10freebsd_use_packages: true
 11freebsd_install_retries: 10
 12freebsd_install_delay: 5
 13
 14# packages
 15poudriere_packages:
 16  - ports-mgmt/poudriere
 17  - ports-mgmt/portmaster
 18  - devel/ccache
 19poudriere_packages_cert:
 20  - security/py-openssl
 21  - security/py-acme-tiny
 22
 23# owner, group, mode
 24poudriere_owner: root
 25poudriere_group: wheel
 26poudriere_mode: "0644"
 27poudriere_mode_dir: "0755"
 28
 29# dirs
 30poudriere_dirs: true
 31poudriere_ssl_dir: /usr/local/etc/ssl
 32poudriere_ssl_dir_mode: "0755"
 33poudriere_ssl_private_dir: /usr/local/etc/ssl/private
 34poudriere_ssl_private_dir_mode: "0700"
 35poudriere_ssl_private_key_mode: "0600"
 36poudriere_ssl_dirs:
 37  - "{{ poudriere_ssl_dir }}"
 38  - "{{ poudriere_ssl_dir }}/crt"
 39  - "{{ poudriere_ssl_dir }}/csr"
 40
 41# ssl signing key
 42poudriere_key: true
 43poudriere_key_size: 4096
 44poudriere_key_type: RSA
 45poudriere_key_crt: "{{ poudriere_ssl_dir }}/crt/poudriere-sk.crt"
 46poudriere_conf_pkg_repo_signing_key: "{{ poudriere_ssl_private_dir }}/poudriere-sk.key"
 47poudriere_key_cmd: "openssl rsa -in {{ poudriere_conf_pkg_repo_signing_key }} -pubout -out {{ poudriere_key_crt }}"
 48
 49# ssl cert web server
 50poudriere_cert: false
 51poudriere_cert_key: "{{ poudriere_ssl_private_dir }}/poudriere.key"
 52poudriere_cert_csr: "{{ poudriere_ssl_dir }}/csr/poudriere.csr"
 53poudriere_cert_path: "{{ poudriere_ssl_dir }}/crt/poudriere.crt"
 54# poudriere_cert_cn: build.example.com
 55# poudriere_cert_key: "{{ poudriere_ssl_dir }}/private/{{ poudriere_cert_cn }}.key"
 56# poudriere_cert_csr: "{{ poudriere_ssl_dir }}/csr/{{ poudriere_cert_cn }}.csr"
 57# poudriere_cert_path: "{{ poudriere_ssl_dir }}/certs/{{ poudriere_cert_cn }}.crt"
 58
 59
 60# configuration
 61# (see /usr/local/etc/poudriere.conf.sample)
 62poudriere_conf: true
 63poudriere_conf_file: /usr/local/etc/poudriere.conf
 64poudriere_conf_template: poudriere.conf.j2
 65poudriere_conf_dir: /usr/local/etc/poudriere.d
 66poudriere_conf_dirs:
 67  - dir: "{{ poudriere_conf_distfiles_cache }}"
 68    owner: "{{ poudriere_owner }}"
 69    group: "{{ poudriere_group }}"
 70    mode: "{{ poudriere_mode_dir }}"
 71poudriere_conf_zpool: zroot
 72poudriere_conf_no_zfs: "no"
 73poudriere_conf_zrootfs: /poudriere
 74poudriere_conf_freebsd_host: https://download.freebsd.org  # Note 1)
 75poudriere_conf_resolv_conf: /etc/resolv.conf
 76poudriere_conf_basefs: /usr/local/poudriere
 77poudriere_conf_svn_host: svn.FreeBSD.org  # Note 2)
 78poudriere_conf_poudriere_data: "{{ poudriere_conf_basefs }}/data"
 79poudriere_conf_use_portlint: "no"
 80poudriere_conf_use_tmpfs: "yes"
 81poudriere_conf_distfiles_cache: /usr/ports/distfiles
 82poudriere_conf_url_base: "http://{{ ansible_default_ipv4.address|default('127.0.0.1') }}/"
 83poudriere_conf_check_changed_options: verbose
 84poudriere_conf_check_changed_deps: "yes"
 85poudriere_conf_data:  # See templates/poudriere.conf2.j2
 86  ZPOOL: "{{ poudriere_conf_zpool }}"
 87  no_ZFS: "{{ poudriere_conf_no_zfs }}"
 88  ZROOTFS: "{{ poudriere_conf_zrootfs }}"
 89  freebsd_HOST: "{{ poudriere_conf_freebsd_host }}"
 90  RESOLV_CONF: "{{ poudriere_conf_resolv_conf }}"
 91  BASEFS: "{{ poudriere_conf_basefs }}"
 92  svn_HOST: "{{ poudriere_conf_svn_host }}"
 93  POUDRIERE_DATA: "{{ poudriere_conf_poudriere_data }}"
 94  USE_PORTLINT: "{{ poudriere_conf_use_portlint }}"
 95  USE_TMPFS: "{{ poudriere_conf_use_tmpfs }}"
 96  DISTFILES_CACHE: "{{ poudriere_conf_distfiles_cache }}"
 97  PKG_REPO_SIGNING_KEY: "{{ poudriere_conf_pkg_repo_signing_key }}"
 98  URL_BASE: "{{ poudriere_conf_url_base }}"
 99  check_CHANGED_OPTIONS: "{{ poudriere_conf_check_changed_options }}"
100  CHECK_CHANGED_DEPS: "{{ poudriere_conf_check_changed_deps }}"
101
102# lists of packages
103poudriere_pkglists: true
104poudriere_pkglist_dir: "{{ poudriere_conf_dir }}/pkglist"
105poudriere_pkg_arch: []
106
107# options
108poudriere_options: false
109
110# make
111poudriere_make: true
112poudriere_make_file: "{{ poudriere_conf_dir }}/make.conf"
113poudriere_make_conf: []
114
115# Notes
116#
117# 1) A.2. FTP Sites https://docs.freebsd.org/en/books/handbook/mirrors-ftp.html
118# 2) A.3.6. Subversion Mirror Sites https://docs.freebsd.org/en_US.ISO8859-1/books/handbook/svn.html#svn-mirrors
119
120
121# EOF
122...

The common variables are stored in the file defaults/main.yml (precedence 2.). In the scope of the role, these variables can be customized in the file vars/main.yml (precedence 15.). The file vars/main.yml will be preserved by the update of the role.

Warning

  • group_vars, host_vars, facts, play vars(_prompt, _files) (precedence 3.-14.) can’t override variables set in vars/main.yml (precedence 15.). As a result, vars/main.yml is not a suitable place to set values specific to the hosts or groups of the hosts. Instead, use it, for example, to set OS-specific values.

  • Don’t make any changes to the file defaults/main.yml. An update of the role will overwrite it. Instead, customize the default values in the file vars/main.yml.

See also