From c9e2ae75ec847507f6823d136fb94f52baf50018 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ebbe=20Ba=C3=9F?= Date: Thu, 16 Jul 2026 10:24:31 +0200 Subject: [PATCH] new sudo-rs chicken-egg workaround --- .../linux/ubuntu-server/deploy_basics.yml | 15 ++++++++++++++- .../connect_nextcloud_collabora.yml | 16 ++++++++++++++-- .../deploy_collabora_code.yml | 18 ++++++++++++++---- .../deploy_hardened_nextcloud.yml | 17 ++++++++++++++--- 4 files changed, 56 insertions(+), 10 deletions(-) diff --git a/playbooks/linux/ubuntu-server/deploy_basics.yml b/playbooks/linux/ubuntu-server/deploy_basics.yml index 4409067..979062a 100644 --- a/playbooks/linux/ubuntu-server/deploy_basics.yml +++ b/playbooks/linux/ubuntu-server/deploy_basics.yml @@ -1,8 +1,21 @@ +- name: Temporary workaround for sudo-rs + hosts: all + gather_facts: false + become: false + tasks: + - name: Detect sudo variant + ansible.builtin.raw: command -v sudo.ws || true + register: sudo_ws_check + changed_when: false + + - name: Set become_exe fact based on sudo variant present + ansible.builtin.set_fact: + ansible_become_exe: "{{ 'sudo.ws' if sudo_ws_check.stdout | trim | length > 0 else 'sudo' }}" + - name: Install basic features hosts: all gather_facts: true become: true - become_exe: "{{ 'sudo.ws' if ansible_facts.packages['sudo-rs'] is defined else 'sudo' }}" # Temporary workaround for sudo-rs on Ubuntu 25.10 or later including 26.04 LTS (Lunar Lobster). tasks: - name: Update apt diff --git a/playbooks/linux/ubuntu-server/nextcloud_full_deployment/connect_nextcloud_collabora.yml b/playbooks/linux/ubuntu-server/nextcloud_full_deployment/connect_nextcloud_collabora.yml index b5920a6..3622137 100644 --- a/playbooks/linux/ubuntu-server/nextcloud_full_deployment/connect_nextcloud_collabora.yml +++ b/playbooks/linux/ubuntu-server/nextcloud_full_deployment/connect_nextcloud_collabora.yml @@ -1,3 +1,17 @@ +- name: Temporary workaround for sudo-rs + hosts: all + gather_facts: false + become: false + tasks: + - name: Detect sudo variant + ansible.builtin.raw: command -v sudo.ws || true + register: sudo_ws_check + changed_when: false + + - name: Set become_exe fact based on sudo variant present + ansible.builtin.set_fact: + ansible_become_exe: "{{ 'sudo.ws' if sudo_ws_check.stdout | trim | length > 0 else 'sudo' }}" + # ================================================================ # PLAY 0 — Bootstrap: install acl BEFORE any become_user is used. # ================================================================ @@ -5,7 +19,6 @@ hosts: nextcloud gather_facts: true become: true - become_exe: "{{ 'sudo.ws' if ansible_facts.packages['sudo-rs'] is defined else 'sudo' }}" # Temporary workaround for sudo-rs on Ubuntu 25.10 or later including 26.04 LTS (Lunar Lobster). tasks: - name: Update apt cache @@ -25,7 +38,6 @@ hosts: nextcloud gather_facts: true become: true - become_exe: "{{ 'sudo.ws' if ansible_facts.packages['sudo-rs'] is defined else 'sudo' }}" # Temporary workaround for sudo-rs on Ubuntu 25.10 or later including 26.04 LTS (Lunar Lobster). vars_files: - vars/shared_vars.yml diff --git a/playbooks/linux/ubuntu-server/nextcloud_full_deployment/deploy_collabora_code.yml b/playbooks/linux/ubuntu-server/nextcloud_full_deployment/deploy_collabora_code.yml index 1238f43..0f8d9a5 100644 --- a/playbooks/linux/ubuntu-server/nextcloud_full_deployment/deploy_collabora_code.yml +++ b/playbooks/linux/ubuntu-server/nextcloud_full_deployment/deploy_collabora_code.yml @@ -1,3 +1,17 @@ +- name: Temporary workaround for sudo-rs + hosts: all + gather_facts: false + become: false + tasks: + - name: Detect sudo variant + ansible.builtin.raw: command -v sudo.ws || true + register: sudo_ws_check + changed_when: false + + - name: Set become_exe fact based on sudo variant present + ansible.builtin.set_fact: + ansible_become_exe: "{{ 'sudo.ws' if sudo_ws_check.stdout | trim | length > 0 else 'sudo' }}" + # ================================================================ # PLAY 0 — Bootstrap: install acl BEFORE any become_user is used. # ================================================================ @@ -5,7 +19,6 @@ hosts: collabora_code gather_facts: true become: true - become_exe: "{{ 'sudo.ws' if ansible_facts.packages['sudo-rs'] is defined else 'sudo' }}" # Temporary workaround for sudo-rs on Ubuntu 25.10 or later including 26.04 LTS (Lunar Lobster). tasks: - name: Update apt cache @@ -25,7 +38,6 @@ hosts: collabora_code gather_facts: true become: true - become_exe: "{{ 'sudo.ws' if ansible_facts.packages['sudo-rs'] is defined else 'sudo' }}" # Temporary workaround for sudo-rs on Ubuntu 25.10 or later including 26.04 LTS (Lunar Lobster). tasks: - name: Ensure the apt keyrings directory exists @@ -66,7 +78,6 @@ hosts: collabora_code gather_facts: true become: true - become_exe: "{{ 'sudo.ws' if ansible_facts.packages['sudo-rs'] is defined else 'sudo' }}" # Temporary workaround for sudo-rs on Ubuntu 25.10 or later including 26.04 LTS (Lunar Lobster). vars_files: - vars/shared_vars.yml @@ -93,7 +104,6 @@ hosts: collabora_code gather_facts: true become: true - become_exe: "{{ 'sudo.ws' if ansible_facts.packages['sudo-rs'] is defined else 'sudo' }}" # Temporary workaround for sudo-rs on Ubuntu 25.10 or later including 26.04 LTS (Lunar Lobster). vars_files: - vars/shared_vars.yml diff --git a/playbooks/linux/ubuntu-server/nextcloud_full_deployment/deploy_hardened_nextcloud.yml b/playbooks/linux/ubuntu-server/nextcloud_full_deployment/deploy_hardened_nextcloud.yml index 14156bb..bd61879 100644 --- a/playbooks/linux/ubuntu-server/nextcloud_full_deployment/deploy_hardened_nextcloud.yml +++ b/playbooks/linux/ubuntu-server/nextcloud_full_deployment/deploy_hardened_nextcloud.yml @@ -1,3 +1,17 @@ +- name: Temporary workaround for sudo-rs + hosts: all + gather_facts: false + become: false + tasks: + - name: Detect sudo variant + ansible.builtin.raw: command -v sudo.ws || true + register: sudo_ws_check + changed_when: false + + - name: Set become_exe fact based on sudo variant present + ansible.builtin.set_fact: + ansible_become_exe: "{{ 'sudo.ws' if sudo_ws_check.stdout | trim | length > 0 else 'sudo' }}" + # ================================================================ # PLAY 0 — Bootstrap: install acl BEFORE any become_user is used. # ================================================================ @@ -5,7 +19,6 @@ hosts: nextcloud gather_facts: true become: true - become_exe: "{{ 'sudo.ws' if ansible_facts.packages['sudo-rs'] is defined else 'sudo' }}" # Temporary workaround for sudo-rs on Ubuntu 25.10 or later including 26.04 LTS (Lunar Lobster). tasks: - name: Update apt cache @@ -25,7 +38,6 @@ hosts: nextcloud gather_facts: true become: true - become_exe: "{{ 'sudo.ws' if ansible_facts.packages['sudo-rs'] is defined else 'sudo' }}" # Temporary workaround for sudo-rs on Ubuntu 25.10 or later including 26.04 LTS (Lunar Lobster). vars_files: - vars/shared_vars.yml @@ -381,7 +393,6 @@ hosts: nextcloud gather_facts: true become: true - become_exe: "{{ 'sudo.ws' if ansible_facts.packages['sudo-rs'] is defined else 'sudo' }}" # Temporary workaround for sudo-rs on Ubuntu 25.10 or later including 26.04 LTS (Lunar Lobster). vars_files: - vars/shared_vars.yml