--- # Validated by the validate_inputs action, not by Ansible's role argument check: no tasks file is named # `inputs`. A sub-option named `` marks a dict keyed by name. argument_specs: inputs: short_description: User input read by the bootstrap and, through the main repository, by every role options: boot_iso: {type: str} rhel_iso: {type: str} custom_iso: {type: bool} thirdparty_tasks: {type: str} partitioning_efi_size_mib: {type: int} partitioning_boot_size_mib: {type: int} partitioning_separate_boot: {type: bool} partitioning_boot_fs_fstype: {type: str} partitioning_use_full_disk: {type: bool} cleanup_verify_boot: {type: bool} cleanup_boot_timeout: {type: int} cleanup_remove_on_failure: {type: bool} note: {type: str} hypervisor: type: dict options: type: {type: str, choices: [libvirt, proxmox, vmware, xen, none]} url: {type: str} username: {type: str} password: {type: str, no_log: true} token_id: {type: str} token_secret: {type: str, no_log: true} node: {type: str} cluster: {type: str} datacenter: {type: str} storage: {type: str} folder: {type: str} certs: {type: bool} ssh: {type: bool} system: type: dict options: type: {type: str, choices: [virtual, physical, vm]} os: {type: str} version: {type: str} filesystem: {type: str, choices: [btrfs, ext4, xfs]} name: {type: str} source: {type: str} id: {type: str} cpus: {type: int} memory: {type: int} balloon: {type: int} cores: {type: int} config: {type: str, choices: [none, current, pending]} network_info: {type: bool} network_config: {type: str} guest_path: {type: str} path: {type: str} timezone: {type: str} locale: {type: str} keymap: {type: str} packages: {type: list, elements: str} network: type: dict options: bridge: {type: str} vlan: {type: str} ip: {type: str} prefix: {type: int} gateway: {type: str} dns: type: dict options: servers: {type: list, elements: str} search: {type: list, elements: str} interfaces: type: list elements: dict options: name: {type: str} bridge: {type: str} vlan: {type: int} ip: {type: str} prefix: {type: int} gateway: {type: str} extra_addresses: {type: list, elements: str} parent: {type: str} method: {type: str} bridge_ports: {type: raw} bridge_vids: {type: raw} bridge_stp: {type: bool} bridge_fd: {type: int} bridge_vlan_aware: {type: bool} bridge_pvid: {type: str} disks: type: list elements: dict options: size: {type: float} device: {type: str} storage: {type: str} format: {type: str} bus: {type: str} slot: {type: int} path: {type: str} target: {type: str} mount: type: dict options: path: {type: str} fstype: {type: str, choices: ["", btrfs, ext4, xfs]} label: {type: str} opts: {type: str} users: type: dict options: "": type: dict options: password: {type: str, no_log: true} keys: {type: list, elements: str} sudo: {type: raw} groups: {type: list, elements: str} shell: {type: str} password_login: {type: bool} uid: {type: int} disabled: {type: bool} root: type: dict options: password: {type: str, no_log: true} shell: {type: str} content: type: dict options: source: {type: str, choices: ["", dvd, mirror, satellite, none]} url: {type: str} proxy: {type: str} gpgcheck: {type: bool} satellite: type: dict options: host: {type: str} ip: {type: str} org: {type: str} activation_key: {type: str, no_log: true} ca_url: {type: str} service_level: {type: str} environment: {type: str} install: {type: bool} luks: type: dict options: enabled: {type: bool} passphrase: {type: str, no_log: true} mapper: {type: str} auto: {type: bool} method: {type: str, choices: [tpm2, keyfile]} tpm2: type: dict options: device: {type: str} pcrs: {type: raw} keysize: {type: int} options: {type: str} type: {type: str} cipher: {type: str} hash: {type: str} iter: {type: int} bits: {type: int} pbkdf: {type: str} features: type: dict options: cloud_init: {type: bool} cis: type: dict options: enabled: {type: bool} profile: {type: str, choices: [default, l1, l2]} rules: {type: dict} params: {type: dict} selinux: type: dict options: enabled: {type: bool} firewall: type: dict options: enabled: {type: bool} backend: {type: str, choices: ["", firewalld, ufw]} toolkit: {type: str, choices: [nftables, iptables]} ssh: type: dict options: enabled: {type: bool} zstd: type: dict options: enabled: {type: bool} swap: type: dict options: enabled: {type: bool} banner: type: dict options: motd: {type: bool} sudo: {type: bool} chroot: type: dict options: tool: {type: str, choices: [arch-chroot, chroot, systemd-nspawn]} initramfs: type: dict options: generator: {type: str, choices: ["", dracut, mkinitcpio, initramfs-tools]} desktop: type: dict options: enabled: {type: bool} environment: {type: str, choices: ["", gnome, kde, sway, hyprland]} display_manager: {type: str, choices: ["", gdm, sddm, plasma-login-manager, greetd, ly]} autologin: {type: raw} session: {type: str} groups: {type: list, elements: str} secure_boot: type: dict options: enabled: {type: bool} method: {type: str, choices: ["", sbctl, uki]} firmware: type: dict options: enabled: {type: raw, choices: [true, false, auto]} microcode: {type: raw, choices: [true, false, auto]} gpu: type: dict options: enabled: {type: raw, choices: [true, false, auto]} nvidia_driver: {type: str, choices: [auto, open, proprietary, nouveau]} peripherals: type: dict options: enabled: {type: raw, choices: [true, false, auto]} fingerprint: {type: raw, choices: [true, false, auto]} camera: {type: raw, choices: [true, false, auto]} audio: {type: raw, choices: [true, false, auto]} bluetooth: {type: raw, choices: [true, false, auto]} displaylink: {type: bool} hardware: type: dict options: profile: {type: dict} cpu: {type: str} gpus: {type: list, elements: str} wireless: {type: list, elements: str} audio: {type: list, elements: str} camera: {type: dict} fingerprint: {type: bool} bluetooth: {type: bool} packages: {type: dict} disable: {type: list, elements: str} kernel_params: {type: list, elements: str}