---
# Kayobe global configuration.

###############################################################################
# Local path configuration (Ansible control host).

# Path to Kayobe configuration directory on Ansible control host.
kayobe_config_path: "{{ lookup('env', 'KAYOBE_CONFIG_PATH') | default('/etc/kayobe', true) }}"

# Name of Kayobe environment to use. Default is $KAYOBE_ENVIRONMENT, or an
# empty string if $KAYOBE_ENVIRONMENT is not set. Can also be set via the
# --environment argument when invoking kayobe.
kayobe_environment: "{{ lookup('env', 'KAYOBE_ENVIRONMENT') }}"

# Path to Kayobe configuration directory on Ansible control host with an
# environment path appended if kayobe_environment is set.
kayobe_env_config_path: "{{ kayobe_config_path ~ ('/environments/' ~ kayobe_environment if kayobe_environment else '') }}"

# Ordered list of paths containing kayobe_env_config_path and all its dependent
# environments.
kayobe_env_search_paths: "{{ query('cached', 'kayobe_environments') }}"

###############################################################################
# Remote path configuration (seed, seed-hypervisor and overcloud hosts).

# Base path for kayobe state on remote hosts.
base_path: "/opt/kayobe"

# Path in which to store configuration on remote hosts.
config_path: "{{ base_path ~ '/etc' }}"

# Path in which to cache downloaded images on remote hosts.
image_cache_path: "{{ base_path ~ '/images' }}"

# Path on which to checkout source code repositories on remote hosts.
source_checkout_path: "{{ base_path ~ '/src' }}"

# Path on which to create python virtualenvs on remote hosts.
virtualenv_path: "{{ base_path ~ '/venvs' }}"

###############################################################################
# User configuration.

# User with which to access remote hosts. This user will be created if it does
# not exist.
kayobe_ansible_user: "stack"

###############################################################################
# OS distribution.

# OS distribution name. Valid options are "centos", "rocky", "ubuntu". Default
# is "rocky".
os_distribution: "rocky"

# OS release. Valid options are "9-stream" when os_distribution is "centos", or
# "9" when os_distribution is "rocky", or "jammy" and "noble" (with "jammy"
# being the default) when os_distribution is "ubuntu".
os_release: >-
  {{ '9-stream' if os_distribution == 'centos'
  else '9' if os_distribution == 'rocky'
  else 'jammy' }}

###############################################################################
# Ansible configuration.

# Filter to apply to the setup module when gathering facts. Default is to not
# specify a filter.
kayobe_ansible_setup_filter: "{{ omit }}"

# Gather subset to apply to the setup module when gathering facts. Default is
# to not specify a gather subset.
kayobe_ansible_setup_gather_subset: "{{ omit }}"
