Create an 'update_motd' role
This commit is contained in:
parent
7cc478b1ad
commit
7e92fdfab7
5 changed files with 101 additions and 0 deletions
10
roles/update_motd/handlers/main.yml
Normal file
10
roles/update_motd/handlers/main.yml
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
---
|
||||||
|
- name: Remove cached motd
|
||||||
|
become: true
|
||||||
|
file:
|
||||||
|
path: "{{ item }}"
|
||||||
|
state: absent
|
||||||
|
loop:
|
||||||
|
- /var/run/motd.dynamic
|
||||||
|
- /var/run/motd.dynamic.new
|
||||||
|
...
|
44
roles/update_motd/tasks/main.yml
Normal file
44
roles/update_motd/tasks/main.yml
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
---
|
||||||
|
- name: Customize motd
|
||||||
|
become: true
|
||||||
|
template:
|
||||||
|
src: "{{ item }}"
|
||||||
|
dest: "/etc/update-motd.d/{{ item }}"
|
||||||
|
mode: u=rwx,g=rx,o=rx
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
loop:
|
||||||
|
- 00-logo
|
||||||
|
- 10-messages
|
||||||
|
- 20-uname
|
||||||
|
notify: Remove cached motd
|
||||||
|
|
||||||
|
- name: Remove Debian warranty motd
|
||||||
|
become: true
|
||||||
|
file:
|
||||||
|
path: /etc/motd
|
||||||
|
state: absent
|
||||||
|
notify: Remove cached motd
|
||||||
|
|
||||||
|
- name: Ensure motd-messages exists
|
||||||
|
become: true
|
||||||
|
file:
|
||||||
|
path: /etc/motd-messages
|
||||||
|
state: directory
|
||||||
|
mode: u=rwx,g=rx,o=rx
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
notify: Remove cached motd
|
||||||
|
|
||||||
|
- name: Install additionnal motd messages
|
||||||
|
become: true
|
||||||
|
copy:
|
||||||
|
content: "✨ {{ item.message }}\n"
|
||||||
|
dest: "/etc/motd-messages/{{ item.key }}"
|
||||||
|
mode: u=rwx,g=rx,o=rx
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
loop: "{{ motd_messages }}"
|
||||||
|
notify: Remove cached motd
|
||||||
|
when: motd_messages is defined
|
||||||
|
...
|
39
roles/update_motd/templates/00-logo
Normal file
39
roles/update_motd/templates/00-logo
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
#!/bin/sh
|
||||||
|
{{ ansible_managed | comment }}
|
||||||
|
|
||||||
|
# Pretty uptime
|
||||||
|
upSeconds="$(/usr/bin/cut -d. -f1 /proc/uptime)"
|
||||||
|
mins="$((upSeconds / 60 % 60))"
|
||||||
|
hours="$((upSeconds / 3600 % 24))"
|
||||||
|
days="$((upSeconds / 86400))"
|
||||||
|
UPTIME="$(printf "%d jours, %02dh%02dm" "$days" "$hours" "$mins")"
|
||||||
|
|
||||||
|
# RAM
|
||||||
|
RAM="$(free -m | awk 'NR==2{printf "%s/%sMB (%.2f%%)\n", $3,$2,$3*100/$2}')"
|
||||||
|
DISK="$(df -h | awk '$NF=="/"{printf "%d/%dGB (%s)\n", $3,$2,$5}')"
|
||||||
|
|
||||||
|
# Text font
|
||||||
|
bold="$(tput bold)"
|
||||||
|
normal="$(tput sgr0)"
|
||||||
|
|
||||||
|
# Logo
|
||||||
|
cat <<EOF
|
||||||
|
[49m[K[0m
|
||||||
|
[0m [48;5;160m[38;5;160m [48;5;124m[38;5;124m [48;5;160m[38;5;160m [0m [49m ${bold}Uptime${normal} : ${UPTIME}
|
||||||
|
[0m [48;5;160m[38;5;160m [0m [49m ${bold}Mémoire${normal} : ${RAM}
|
||||||
|
[0m [48;5;160m[38;5;160m [0m [48;5;231m[38;5;232m [0m [48;5;160m[38;5;160m [0m [49m ${bold}Disque racine${normal} : ${DISK}
|
||||||
|
[0m [48;5;160m[38;5;160m [0m [48;5;231m[38;5;232m [0m [48;5;160m[38;5;160m [0m [49m
|
||||||
|
[0m [48;5;160m[38;5;160m [48;5;124m[38;5;124m [48;5;160m[38;5;160m [0m [48;5;231m[38;5;232m [0m [48;5;160m[38;5;160m [48;5;52m[38;5;196m [0m [49m
|
||||||
|
[0m [48;5;124m[38;5;124m [0m [48;5;160m[38;5;160m [0m [48;5;231m[38;5;232m [0m [48;5;231m[38;5;232m [0m [48;5;160m[38;5;160m [0m [49m
|
||||||
|
[0m [48;5;160m[38;5;160m [0m [48;5;231m[38;5;232m [0m [48;5;231m[38;5;232m [0m [48;5;160m[38;5;160m [0m [48;5;124m[38;5;124m [0m[49m
|
||||||
|
[0m [48;5;124m[38;5;124m [48;5;160m[38;5;160m [0m [48;5;188m[38;5;188m [48;5;231m[38;5;232m [0m [48;5;231m[38;5;232m [0m [48;5;160m[38;5;160m [0m[49m
|
||||||
|
[0m [48;5;160m[38;5;160m [0m [48;5;160m[38;5;160m [48;5;231m[38;5;232m [0m [48;5;160m[38;5;160m [0m[49m
|
||||||
|
[0m [48;5;160m[38;5;160m [0m [48;5;160m[38;5;160m [48;5;231m[38;5;232m [0m [48;5;160m[38;5;160m [0m[49m
|
||||||
|
[0m [48;5;160m[38;5;160m [0m [48;5;231m[38;5;232m [0m [48;5;231m[38;5;232m [0m [48;5;160m[38;5;160m [0m [49m
|
||||||
|
[0m [48;5;160m[38;5;160m [0m [48;5;231m[38;5;232m [0m [48;5;231m[38;5;232m [0m [48;5;160m[38;5;160m [0m [49m
|
||||||
|
[0m [48;5;160m[38;5;160m [0m [48;5;231m[38;5;232m [0m [48;5;231m[38;5;232m [0m [48;5;160m[38;5;160m [0m [49m
|
||||||
|
[0m [48;5;124m[38;5;124m [0m [48;5;160m[38;5;160m [0m [48;5;231m[38;5;232m [0m [48;5;231m[38;5;232m [0m [48;5;160m[38;5;160m [0m [49m
|
||||||
|
[0m [48;5;160m[38;5;160m [0m [48;5;231m[38;5;232m [0m [48;5;231m[38;5;232m [48;5;160m[38;5;160m [0m [49m
|
||||||
|
[0m [48;5;160m[38;5;160m [0m ${bold}Aurore${normal} [48;5;231m[38;5;232m [48;5;160m[38;5;160m [0m [49m
|
||||||
|
|
||||||
|
EOF
|
4
roles/update_motd/templates/10-messages
Normal file
4
roles/update_motd/templates/10-messages
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/sh
|
||||||
|
set -euf
|
||||||
|
|
||||||
|
find /etc/motd-messages -type f -exec cat -- {} +
|
4
roles/update_motd/templates/20-uname
Normal file
4
roles/update_motd/templates/20-uname
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/sh
|
||||||
|
{{ ansible_managed | comment }}
|
||||||
|
|
||||||
|
uname -snrvm
|
Loading…
Reference in a new issue