Skip to content

Commit 0ec49ea

Browse files
authored
Merge pull request #788 from konstruktoid/reboot
ensure rebooting works after masking ctrl-alt-del
2 parents 4a3f3c4 + 828cdcc commit 0ec49ea

File tree

2 files changed

+40
-18
lines changed

2 files changed

+40
-18
lines changed

molecule/default/verify.yml

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -194,18 +194,22 @@
194194
- DefaultLimitNOFILE={{ limit_nofile_hard }}
195195
- DefaultLimitNPROC={{ limit_nproc_hard }}
196196

197-
- name: Verify masked Ctrl-Alt-Del
198-
become: true
199-
ansible.builtin.systemd:
200-
name: ctrl-alt-del.target
201-
masked: true
202-
enabled: false
203-
state: stopped
204-
check_mode: true
205-
register: ctrl_alt_del_target
206-
failed_when: ctrl_alt_del_target is changed
197+
- name: Verify Ctrl-Alt-Del
207198
when:
208199
- ansible_virtualization_type not in ["container", "docker", "podman"]
200+
block:
201+
- name: Get Ctrl-Alt-Del target status
202+
ansible.builtin.systemd:
203+
name: ctrl-alt-del.target
204+
register: ctrl_alt_del_target
205+
206+
- name: Verify Ctrl-Alt-Del target LoadState
207+
ansible.builtin.systemd:
208+
name: ctrl-alt-del.target
209+
register: ctrl_alt_del_target
210+
failed_when:
211+
- ctrl_alt_del_target.status.LoadState != "masked"
212+
- not "reboot.target" in ctrl_alt_del_target.status.FragmentPath
209213

210214
- name: Verify systemd user.conf
211215
become: true

tasks/ctrlaltdel.yml

Lines changed: 26 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,33 @@
11
---
2-
- name: Get ctrl-alt-del systemd information
2+
- name: Get ctrl-alt-del.target information
33
ansible.builtin.systemd:
44
name: ctrl-alt-del.target
55
register: ctrl_alt_del_target
66

7+
- name: Comment out ctrl-alt-del alias
8+
become: true
9+
ansible.builtin.lineinfile:
10+
regexp: ^Alias=ctrl-alt-del.target
11+
line: "# Alias=ctrl-alt-del.target"
12+
dest: "{{ ctrl_alt_del_target.status.FragmentPath }}"
13+
mode: "0644"
14+
state: present
15+
create: false
16+
backrefs: true
17+
18+
- name: Reload systemd
19+
become: true
20+
ansible.builtin.systemd:
21+
daemon_reload: true
22+
723
- name: Disable systemd ctrl-alt-del
824
become: true
9-
ansible.builtin.file:
10-
src: /dev/null
11-
path: "{{ ctrl_alt_del_target.status.FragmentPath }}"
12-
state: link
13-
owner: root
14-
group: root
15-
force: true
25+
ansible.builtin.systemd:
26+
name: ctrl-alt-del.target
27+
masked: true
28+
enabled: false
29+
state: stopped
30+
register: ctrl_alt_del_target_state
31+
failed_when:
32+
- ctrl_alt_del_target_state.failed
33+
- not "already exists and is a symlink" in ctrl_alt_del_target_state.msg

0 commit comments

Comments
 (0)