Files
ansible_role_package/meta/argument_spec.yml

154 lines
5.2 KiB
YAML

# vim: set filetype=yaml.ansible :
---
argument_specs:
main:
short_description: Install software using ansible
description:
- Make the installation of packages consistent on each platform.
- Will install via system package managers, source, or specific install tool. For example, a go package installed via source will run `go install`.
maintainers:
- Matthew Stobbs
options:
packages:
type: list
elements: str
required: true
description:
- List of packages to install using this role's package name.
- See README.md for the list of available packages.
install_become:
type: bool
default: true
description:
- Install packages using privilege elevation.
install_become_user:
type: bool
default: root
description:
- User to become when install_become is true.
imethod:
type: str
default: system
description:
- Install packages using system package manager when available.
- When a package doesn't have a system install candidate for the host,
it uses it's default install method as defined in the pkglist variables called `<pkgname>_install_methods`
- Most packages will be either `system` or `source` installs.
- System installs default to using the system package manager, if possible.
- Source installs download, build and install the package via source code.
Source installs could be of different types based on the language.
For example; python packages installed using `source` are installed with either pipx (default) or system pip.
choices:
- system
- source
python_package_method:
type: str
default: pipx
description:
- How to install pip packages.
choices:
- pipx
- system
install_prefix:
type: str
required: false
default: /usr/local
description:
- The prefix to use for non-system package installs.
- All package files will be installed using the directory prefixed by this prefix.
extra_ldd_paths:
type: list
elements: path
required: false
default: []
description:
- Paths to add to the ld.so.conf path list. Will create a file in `/etc/ld.so.conf.d/` on most systems.
packages:
type: list
elements: str
required: true
description:
- The list of packages to install by name.
- The list must contain only values that exist in B(Available Packages) in README.md
packages_extra:
type: list
elements: str
required: false
default: []
description:
- Extra system packages by installation name to install using the system package manager
- These are installed directly using the system package manager
flatpak_default_remote:
type: str
required: false
default: flathub
description:
- the Default remote name to use with flatpak installation.
flatpak_method:
type: str
required: false
default: system
description:
- Default installation method for flatpaks.
- Possible values are 'system' and 'user'.
- Only applies to linux distros.
flatpak_remotes:
type: list
elements: dict
required: false
default:
- name: flathub
url: https://dl.flathub.org/repo/flathub.flatpakrepo
description:
- List of flatpak remotes to add to the system.
- Does not remove pre existing flatpak repos.
clean_install:
type: bool
default: false
description:
- Remove existing installation of package before installing.
path_appimage:
type: path
default: /usr/local/appimage
description:
- Where appimage files are stored.
path_archive:
type: path
default: /usr/local/archive
description:
- Where archives are extracted.
path_bin:
type: path
default: /usr/local/bin
description:
- Where binaries are installed or linked.
- Needs to be added to your PATH to be usable.
path_cargo:
type: path
default: /usr/local/cargo
description:
- Where cargo installs it's packages
path_go:
type: path
default: /usr/local/go
description:
- Where go is installed. Equivalent of GOROOT.
path_pipx:
type: path
default: /usr/local/pipx
description:
- Where pipx installs it's virtual environments
store_path:
type: path
default: /<ansible_user_dir>/.cache/ansible_role_package
required: false
description:
- Where cached files are kept, such as git repositories.
- Packages that are compiled have their source extracted here.
clean_cache:
type: bool
default: false
description:
- Clean the V(store_path) after completing package install.
- Removes source code, archives and git repositories