aboutsummaryrefslogtreecommitdiffstats
path: root/roles/grub
diff options
context:
space:
mode:
Diffstat (limited to 'roles/grub')
-rw-r--r--roles/grub/defaults/main.yml2
-rw-r--r--roles/grub/tasks/main.yml23
2 files changed, 25 insertions, 0 deletions
diff --git a/roles/grub/defaults/main.yml b/roles/grub/defaults/main.yml
new file mode 100644
index 0000000..9f919d4
--- /dev/null
+++ b/roles/grub/defaults/main.yml
@@ -0,0 +1,2 @@
+# grub_cmdline: quiet ro
+grub_timeout: 1
diff --git a/roles/grub/tasks/main.yml b/roles/grub/tasks/main.yml
new file mode 100644
index 0000000..ea82ab1
--- /dev/null
+++ b/roles/grub/tasks/main.yml
@@ -0,0 +1,23 @@
+- name: set grub timeout
+ lineinfile:
+ path: /etc/default/grub
+ regexp: ^GRUB_TIMEOUT=
+ line: 'GRUB_TIMEOUT={{ grub_timeout }}'
+ register: grub_timeout_line
+
+- name: set kernel cmdline
+ lineinfile:
+ path: /etc/default/grub
+ regexp: ^GRUB_CMDLINE_LINUX=
+ line: 'GRUB_CMDLINE_LINUX="{{ grub_cmdline }}"'
+ when: grub_cmdline is defined
+ register: grub_cmdline_line
+
+- name: rebuild grub config
+ command: grub2-mkconfig -o /boot/grub2/grub.cfg
+ when: grub_timeout_line.changed or grub_cmdline_line.changed
+
+- name: warn if reboot needed
+ debug:
+ msg: A reboot is required for changes to kernel cmdline to take effect.
+ when: grub_cmdline_line.changed