One Ansible role to update them all.
- APT: Update all Debian packages to the latest version.
Tags:
apt
,cleanup
- Composer: Update Composer executable and globally installed packages.
Tags:
composer
- Docker: Pull latest version of Docker images from repositories.
Tags:
docker
,cleanup
- Flatpak: Update all system-wide installed flatpaks, including applications and runtimes.
Tags:
flatpak
- Homebrew: Upgrade outdated brews and casks.
Tags:
homebrew
,cleanup
- macOS: Update MacOS apps via the official system software update tool cli.
Tags:
osx
- NPM: Upgrade globally installed npm packages.
Tags:
npm
- Phive: Update Phive executable and installed phars.
Tags:
phive
- Rust: Update Rust toolchains, rustup and globally installed cargo packages.
Tags:
rust
- Snaps: Referesh all installed Snaps.
Tags:
snap
List of used Ansible modules:
ansible.builtin.apt
ansible.builtin.command
ansible.builtin.debug
ansible.builtin.set_fact
ansible.builtin.stat
community.docker.docker_host_info
community.docker.docker_image_info
community.docker.docker_image
community.general.cargo
community.general.composer
community.general.homebrew_cask
community.general.homebrew
community.general.npm
None.
None.
ansible-galaxy role install slashsbin.mega_update
An example how to include this role:
- hosts: your-servers
roles:
- { role: slashsbin.mega_update }
Clone the project and execute:
ansible-playbook --inventory tests/inventory --ask-become-pass tests/test.yml
or, simply use the make recipe:
make run
make list-tasks
ansible-playbook --inventory tests/inventory --ask-become-pass tests/test.yml --tags apt
ansible-playbook --inventory tests/inventory --ask-become-pass tests/test.yml --tags apt --skip-tags cleanup
Run Ansible syntax check and lint:
make lint
The Code is licensed under the MIT License.
This role was created by Mohammad Shokri Khanghah.