diff --git a/roles/common/defaults/main.yml b/roles/common/defaults/main.yml index 560c336..9b71a98 100644 --- a/roles/common/defaults/main.yml +++ b/roles/common/defaults/main.yml @@ -118,4 +118,7 @@ system_base_bash_aliases: system_extra_bash_aliases: {} system_bash_aliases: "{{ system_base_bash_aliases | combine(system_extra_bash_aliases, recursive=True) }}" +# shell scriplet to exec on boot +system_rc_local_cmd: [] + ... diff --git a/roles/common/tasks/system.yml b/roles/common/tasks/system.yml index b5d9266..89999ed 100644 --- a/roles/common/tasks/system.yml +++ b/roles/common/tasks/system.yml @@ -136,4 +136,14 @@ - name: Deploy bash aliases template: src=bash_aliases.sh.j2 dest=/etc/profile.d/ansible_aliases.sh mode=755 +- name: Ensure /etc/rc.d exists + file: path=/etc/rc.d state=directory + +- name: Deploy rc.local script + template: src=rc.local.j2 dest=/etc/rc.d/rc.local mode=755 + + # Debian is using /etc/rc.local while RHEL is using /etc/rc.d/rc.local +- name: Link /etc/rc.local to /etc/rc.d/rc.local + file: src=/etc/rc.d/rc.local path=/etc/rc.local state=link force=True + ... diff --git a/roles/common/templates/rc.local.j2 b/roles/common/templates/rc.local.j2 new file mode 100644 index 0000000..b7c1d86 --- /dev/null +++ b/roles/common/templates/rc.local.j2 @@ -0,0 +1,9 @@ +#!/bin/bash + +# {{ ansible_managed }} + +{% for cmd in system_rc_local_cmd %} +{{ cmd }} +{% endfor %} + +exit 0