Optimized .mds and meta/main.yml for update roles

This commit is contained in:
Kevin Veen-Birkenbach 2025-03-14 13:07:11 +01:00
parent 4c186a4204
commit 2dbaad04d5
No known key found for this signature in database
GPG Key ID: 44D8F11FD62F878E
10 changed files with 237 additions and 34 deletions

View File

@ -1,5 +1,22 @@
# role update-apt
This role updates the packages
# Update Debian-based Systems
# upgrade
Keep in mind that you have to do the upgrade manual because debian based distributions are no runing release
## Description
This role updates packages on Debian-based systems. It refreshes the apt cache and performs a distribution upgrade to ensure all packages are at their latest version.
## Overview
Designed for Debian and Ubuntu systems, this role:
- Updates the package cache using apt.
- Upgrades all packages to their latest available versions.
- Notes that full upgrades must be performed manually on nonrolling release systems.
## Purpose
The role is intended to keep Debian-based systems up-to-date by automating the package update process, ensuring that security patches and software improvements are applied promptly.
## Features
- **Apt Cache Refresh:** Updates the package index.
- **Distribution Upgrade:** Performs a dist-upgrade to update all installed packages.
- **Debian-Specific:** Tailored for Debian-based distributions.

View File

@ -0,0 +1,25 @@
---
galaxy_info:
author: "Kevin Veen-Birkenbach"
description: "Updates packages on Debian-based systems by refreshing the apt cache and performing a distribution upgrade."
license: "CyMaIS NonCommercial License (CNCL)"
license_url: "https://s.veen.world/cncl"
company: |
Kevin Veen-Birkenbach
Consulting & Coaching Solutions
https://www.veen.world
min_ansible_version: "2.9"
platforms:
- name: Debian
versions:
- all
galaxy_tags:
- apt
- update
- debian
- system
- maintenance
repository: "https://s.veen.world/cymais"
issue_tracker_url: "https://s.veen.world/cymaisissues"
documentation: "https://s.veen.world/cymais"
dependencies: []

View File

@ -1,5 +1,27 @@
# Update-Docker Role
# Update Docker
This Ansible role is used to update Docker Compose instances. It includes a Python script that checks for updates to Docker images and applies them if necessary.
## Description
This role updates Docker Compose instances by checking for changes in Docker image digests and applying updates if necessary. It utilizes a Python script to handle git pulls and Docker image pulls, and rebuilds containers when changes are detected.
## Overview
The role performs the following:
- Deploys a Python script to check for Docker image updates.
- Configures a systemd service to run the update script.
- Restarts the Docker update service upon configuration changes.
- Supports additional procedures for specific Docker applications (e.g., Discourse, Mastodon, Nextcloud).
## Purpose
The role is designed to ensure that Docker images remain current by automatically detecting changes and rebuilding containers as needed. This helps maintain a secure and efficient container environment.
## Features
- **Docker Image Monitoring:** Checks for changes in image digests.
- **Automated Updates:** Pulls new images and rebuilds containers when necessary.
- **Service Management:** Configures and restarts a systemd service to handle updates.
- **Application-Specific Procedures:** Includes hooks for updating specific Docker applications.
## Credits
It was created with the help of ChatGPT. The conversation is available [here](https://chat.openai.com/share/165418b8-25fa-433b-baca-caded941e22a)

View File

@ -1,2 +1,30 @@
---
galaxy_info:
author: "Kevin Veen-Birkenbach"
description: "Updates Docker Compose instances by detecting changes in Docker image digests and rebuilding containers when necessary. This role automates Docker image pulls and container rebuilds."
license: "CyMaIS NonCommercial License (CNCL)"
license_url: "https://s.veen.world/cncl"
company: |
Kevin Veen-Birkenbach
Consulting & Coaching Solutions
https://www.veen.world
min_ansible_version: "2.9"
platforms:
- name: Archlinux
versions:
- rolling
- name: Ubuntu
versions:
- all
galaxy_tags:
- docker
- update
- compose
- images
- systemd
- maintenance
repository: "https://s.veen.world/cymais"
issue_tracker_url: "https://s.veen.world/cymaisissues"
documentation: "https://s.veen.world/cymais"
dependencies:
- system-maintenance-lock

View File

@ -0,0 +1,19 @@
# Update-Pacman Role
## Description
This role updates the package cache and upgrades installed packages on Arch Linux systems using [pacman](https://wiki.archlinux.org/title/Pacman).
## Overview
Optimized for Arch Linux, this role uses pacman to refresh the package cache and upgrade all installed packages to their latest available versions. It automates system updates to ensure that the system remains secure and up-to-date with the latest software improvements and security patches.
## Purpose
The primary purpose of this role is to streamline system maintenance on Arch Linux systems. By automating the package update process, it helps maintain system stability and security without manual intervention.
## Features
- **Package Cache Refresh:** Automatically updates the pacman cache to retrieve the latest package lists.
- **Full System Upgrade:** Upgrades all installed packages to the latest versions.
- **Arch Linux Focused:** Specifically tailored for Arch Linux environments using pacman.

View File

@ -0,0 +1,25 @@
---
galaxy_info:
author: "Kevin Veen-Birkenbach"
description: "Updates the package cache and upgrades all installed packages on Arch Linux systems using pacman."
license: "CyMaIS NonCommercial License (CNCL)"
license_url: "https://s.veen.world/cncl"
company: |
Kevin Veen-Birkenbach
Consulting & Coaching Solutions
https://www.veen.world
min_ansible_version: "2.9"
platforms:
- name: Archlinux
versions:
- rolling
galaxy_tags:
- pacman
- update
- archlinux
- system
- maintenance
repository: "https://s.veen.world/cymais"
issue_tracker_url: "https://s.veen.world/cymaisissues"
documentation: "https://s.veen.world/cymais"
dependencies: []

View File

@ -1,33 +1,22 @@
# Ansible Role: update-yay
# Update-Yay Role
This Ansible role is designed for updating AUR packages on Arch Linux systems using `yay`. It automates the process of upgrading AUR packages, ensuring that your system stays up-to-date with the latest versions available in the Arch User Repository (AUR).
## Description
## Requirements
This role updates AUR packages on Arch Linux systems using [yay](https://wiki.archlinux.org/title/Yay). It automates the process of upgrading AUR packages, ensuring that your system stays current with the latest software available in the Arch User Repository.
The role requires that `yay` (Yet Another Yaourt) - an AUR helper - is already installed on the system. If `yay` is not installed, the role `system-aur-helper` should handle its installation.
## Overview
## Role Dependencies
The role performs the following:
- Checks if the [yay](https://wiki.archlinux.org/title/Yay) AUR helper is installed.
- Upgrades AUR packages using the `kewlfft.aur.aur` module with yay.
- Works exclusively on Arch Linux systems.
- `system-aur-helper`: This dependency is essential for ensuring that `yay` is available on the system. If `yay` is not installed, this role will manage its installation.
## Purpose
## Role Variables
The primary purpose of this role is to ensure that AUR packages on Arch Linux are updated automatically. This helps maintain system stability and ensures that the latest features and fixes from the AUR are applied.
There are no specific variables that need to be defined by the user for this role. The role utilizes the `kewlfft.aur.aur` module with predefined parameters to manage AUR packages.
## Features
## Role Tasks
- **Upgrade AUR Packages**: The main task of this role is to upgrade the system using `yay`, focusing solely on AUR packages. This task does not require elevated privileges (become: false).
## Example Playbook
Here's an example of how to include the `update-yay` role in your playbook:
```yaml
- hosts: all
roles:
- role: update-yay
```
## Author Information
This role was created by Kevin Veen-Birkenbach.
- **AUR Package Upgrades:** Uses yay to upgrade AUR packages.
- **Conditional Execution:** Only runs if yay is installed on the system.
- **Arch Linux Focused:** Specifically designed for Arch Linux systems.

View File

@ -1,2 +1,27 @@
---
galaxy_info:
author: "Kevin Veen-Birkenbach"
description: "Updates AUR packages on Arch Linux systems using yay. This role automates the upgrade process for AUR packages, ensuring that the system remains up-to-date with the latest versions available in the Arch User Repository."
license: "CyMaIS NonCommercial License (CNCL)"
license_url: "https://s.veen.world/cncl"
company: |
Kevin Veen-Birkenbach
Consulting & Coaching Solutions
https://www.veen.world
min_ansible_version: "2.9"
platforms:
- name: Archlinux
versions:
- rolling
galaxy_tags:
- aur
- update
- archlinux
- yay
- system
- maintenance
repository: "https://s.veen.world/cymais"
issue_tracker_url: "https://s.veen.world/cymaisissues"
documentation: "https://s.veen.world/cymais"
dependencies:
- system-aur-helper
- system-aur-helper

View File

@ -0,0 +1,29 @@
---
galaxy_info:
author: "Kevin Veen-Birkenbach"
description: "Centralizes system update operations by conditionally invoking platform-specific update roles and Docker image updates."
license: "CyMaIS NonCommercial License (CNCL)"
license_url: "https://s.veen.world/cncl"
company: |
Kevin Veen-Birkenbach
Consulting & Coaching Solutions
https://www.veen.world
min_ansible_version: "2.9"
platforms:
- name: Archlinux
versions:
- rolling
- name: Debian
versions:
- all
galaxy_tags:
- update
- system
- maintenance
- docker
- apt
- pacman
repository: "https://s.veen.world/cymais"
issue_tracker_url: "https://s.veen.world/cymaisissues"
documentation: "https://s.veen.world/cymais"
dependencies: []

View File

@ -1,2 +1,26 @@
# update
starts all of the different system update roles based on conditions
# Update System
## Description
This role serves as a central orchestrator for system updates. It conditionally executes various update roles based on the target system and available directories, ensuring that packages and Docker images are kept up-to-date.
## Overview
This role performs the following tasks:
- Checks if the Docker Compose instances directory exists.
- Executes system updates using platform-specific methods:
- Uses [pacman](https://wiki.archlinux.org/title/Pacman) for Arch Linux.
- Uses [apt](https://en.wikipedia.org/wiki/APT_(software)) for Debian-based systems.
- Invokes the Docker update role if Docker Compose instances are found.
- Checks for the presence of the [yay](https://wiki.archlinux.org/title/Yay) AUR helper and, if installed, triggers an update for AUR packages.
## Purpose
The primary purpose of this role is to streamline system maintenance by delegating updates to the appropriate update roles based on the systems platform and current configuration.
## Features
- **Conditional Execution:** Runs update roles based on the operating system and available directories.
- **Multi-Platform Support:** Supports both Arch Linux and Debian-based distributions.
- **Docker Image Updates:** Triggers Docker image updates when applicable.
- **AUR Package Updates:** Checks for the AUR helper and updates AUR packages if present.