更新 playbook.yml,优化 APT 模块配置,添加缓存有效时间和自动清理选项;新增确保 ~/.bash_aliases 存在及添加别名 dps 的任务

This commit is contained in:
严浩
2024-10-29 10:40:26 +08:00
parent bccee66a57
commit e57a9adce3

View File

@ -1,13 +1,30 @@
--- # ansible-playbook -i hosts.ini playbook.yml -vv --- # ansible-playbook -i hosts.ini playbook.yml -v # -vv
- hosts: debian_servers - hosts: debian_servers
become: true # 的作用是提升任务的执行权限。具体来说它允许任务在目标主机上以不同于当前用户的身份运行通常是以超级用户root的身份。这在需要执行需要更高权限的操作时非常有用例如安装软件包、修改系统配置文件等。 become: true # 的作用是提升任务的执行权限。具体来说它允许任务在目标主机上以不同于当前用户的身份运行通常是以超级用户root的身份。这在需要执行需要更高权限的操作时非常有用例如安装软件包、修改系统配置文件等。
vars: # Python 解释器警告: 输出中有关于 Python 解释器的警告。这并不影响 Ansible 的执行,但提醒你未来可能会因安装不同版本的 Python 而导致路径变更。若需消除警告,可以显式指定使用的 Python 解释器。在 Playbook 中添加如下变量: vars: # Python 解释器警告: 输出中有关于 Python 解释器的警告。这并不影响 Ansible 的执行,但提醒你未来可能会因安装不同版本的 Python 而导致路径变更。若需消除警告,可以显式指定使用的 Python 解释器。在 Playbook 中添加如下变量:
ansible_python_interpreter: /usr/bin/python3 ansible_python_interpreter: /usr/bin/python3
tasks: tasks:
- name: Update and upgrade all packages - name: Update and upgrade all packages
ansible.builtin.apt: # 这是 Ansible 的一个模块,用于管理 APT 包管理系统。 ansible.builtin.apt: # 这是 Ansible 的一个模块,用于管理 APT 包管理系统。(https://docs.ansible.com/ansible/latest/collections/ansible/builtin/apt_module.html)
update_cache: yes # 这会更新 APT 包管理系统的缓存,相当于运行 sudo apt-get update。 update_cache: true # 这会更新 APT 包管理系统的缓存,相当于运行 sudo apt-get update。
upgrade: dist # 这会执行一个发行版升级,相当于运行 sudo apt-get dist-upgrade。 upgrade: dist # 这会执行一个发行版升级,相当于运行 sudo apt-get dist-upgrade。
cache_valid_time: 3600 # 缓存有效时间为 1 小时 cache_valid_time: 3600 # 缓存有效时间为 1 小时
autoremove: yes # 这会删除不再需要的软件包,相当于运行 sudo apt-get autoremove。 autoremove: true # 这会删除不再需要的软件包,相当于运行 sudo apt-get autoremove。
autoclean: yes # 这会删除所有已下载的软件包,但仍保留软件包的索引文件,相当于运行 sudo apt-get autoclean。 autoclean: true # 这会删除所有已下载的软件包,但仍保留软件包的索引文件,相当于运行 sudo apt-get autoclean。
- name: Ensure ~/.bash_aliases exists
file:
path: ~/.bash_aliases
state: touch
- name: Check if alias dps is defined
shell: grep 'alias dps=' ~/.bash_aliases
register: alias_check
ignore_errors: true # 忽略错误,以便在未找到时继续执行
- name: Add alias dps to ~/.bash_aliases if not defined
lineinfile:
path: ~/.bash_aliases
line: "alias dps=\"docker ps --format 'table {{.ID}}\\t{{.Names}}'\""
state: present
when: alias_check.rc != 0 # 只有在未找到时执行 (checks if the alias is not already defined)