feat(element): support podman-based deployment

This commit is contained in:
transcaffeine 2024-09-19 18:44:31 +02:00
parent e35f040229
commit c29c7ded3f
Signed by: transcaffeine
GPG Key ID: 03624C433676E465
3 changed files with 24 additions and 1 deletions

View File

@ -6,10 +6,10 @@ Deploy the [element web-app](https://element.io/)
using the following supported methods by setting `element_deployment_method` to it: using the following supported methods by setting `element_deployment_method` to it:
- [`docker` (docs)](docs/docker.md) (default) - [`docker` (docs)](docs/docker.md) (default)
- `podman`
Planned deployment methods: Planned deployment methods:
- `podman`
- `tarball` - `tarball`
- `nginx` - `nginx`
- `apache2` - `apache2`

View File

@ -0,0 +1,22 @@
---
- name: Ensure container image '{{ element_container_image }}' is {{ element_state }} locally
containers.podman.podman_image:
name: "{{ element_container_image }}"
state: "{{ element_state }}"
pull: "{{ element_container_source == 'pull' }}"
force: "{{ element_container_image_tag | default(false, true) }}"
- name: Ensure container '{{ element_container_name }}' is {{ element_state }}
containers.podman.podman_container:
name: "{{ element_container_name }}"
image: "{{ element_container_image }}"
state: "{{ (element_state == 'present') | ternary('started', 'absent') }}"
env: "{{ element_container_env | default(omit) }}"
user: "{{ element_container_user }}"
ports: "{{ element_container_ports | default(omit) }}"
labels: "{{ element_container_labels | default(omit) }}"
volumes: "{{ element_container_full_volumes }}"
network: "{{ element_container_networks | default(omit) }}"
hostname: "{{ element_container_hostname | default(omit) }}"
etc_hosts: "{{ element_container_etc_hosts | default(omit) }}"
restart_policy: "{{ element_container_restart_policy }}"

View File

@ -5,3 +5,4 @@ element_state:
element_deployment_methods: element_deployment_methods:
- docker - docker
- podman