ansible-ppm/roles/ppm/tasks/ppminstall.yml

41 lines
1.3 KiB
YAML

- name: Install ppm dependencies
ansible.builtin.apt:
pkg:
# We hard depend on podman, as this is the workhorse of most apps
# We also depend on podman unshare in ppm itself
- podman
# Required for rootless operation
- uidmap
# Use the newer network backend instead of the default CNI backend
- netavark
# Required for rootless networking
- slirp4netns
# podman-compose is also used in many apps we can install
- podman-compose
# Restic is currently the only supported backup system
- restic
# The python dependencies of ppm are baked in. However, jsonschema is
# not pure python, so it must be installed from system package
- python3-jsonschema
# Git is required for checking out the app definitions
- git
# Yeah we should use nftables, patches welcome. For now, we install iptables
- iptables
# This is used in our zabbix scripts
- netcat-openbsd
- name: Create state directory
ansible.builtin.file:
state: directory
owner: root
group: root
mode: "1777"
path: /home/.ppmstate
- name: Copy ppm
ansible.builtin.copy:
src: "{{ ppm_binary }}"
dest: /usr/local/bin/ppm
owner: root
group: root
mode: "0755"