Skip to content

Commit

Permalink
Role: package_manager:: upgrade completed
Browse files Browse the repository at this point in the history
  • Loading branch information
aybarsm committed Jul 7, 2024
1 parent 16c18ac commit 4a0e42b
Show file tree
Hide file tree
Showing 16 changed files with 48 additions and 170 deletions.
2 changes: 1 addition & 1 deletion roles/package_manager/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,4 +32,4 @@ package_manager__repo_list_use_regex: true
package_manager__default: []
package_manager__group: []
package_manager__host: []
package_manager__all: "{{ package_manager__default + package_manager__group + package_manager__host }}"
package_manager__all: "{{ package_manager__host + package_manager__group + package_manager__default }}"
8 changes: 4 additions & 4 deletions roles/package_manager/tasks/common_packages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
name: "{{ item.name }}"
state: "{{ item.state | default(omit) }}"
use: "{{ item.use | default(omit) }}"
register: package_manager__common_packages_apply
register: package_manager__packages_common_apply
when:
- linux_packages_all | type_debug == 'list'
- linux_packages_all | length > 0
loop: "{{ linux_packages_all }}"
- package_manager__packages_all | type_debug == 'list'
- package_manager__packages_all | length > 0
loop: "{{ package_manager__packages_all }}"
2 changes: 1 addition & 1 deletion roles/package_manager/tasks/deb_packages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
update_cache_retry_max_delay: "{{ item.update_cache_retry_max_delay | default(omit) }}"
upgrade: "{{ item.upgrade | default(omit) }}"
loop: "{{ package_manager__packages_all }}"
register: package_manager__deb_packages_apply
register: package_manager__packages_deb_apply
when:
- package_manager__packages_all | type_debug == 'list'
- package_manager__packages_all | length > 0
6 changes: 3 additions & 3 deletions roles/package_manager/tasks/deb_repo.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
url: "{{ item.url | default(omit) }}"
validate_certs: "{{ item.validate_certs | default(omit) | bool }}"
loop: "{{ package_manager__repo_keys_all }}"
register: package_manager__deb_repo_keys_apply
register: package_manager__repo_keys_deb_apply
when:
- package_manager__repo_keys_all | type_debug == 'list'
- package_manager__repo_keys_all | length > 0
Expand All @@ -28,7 +28,7 @@
update_cache_retry_max_delay: "{{ item.update_cache_retry_max_delay | default(omit) }}"
validate_certs: "{{ item.validate_certs | default(omit) | bool }}"
loop: "{{ package_manager__repos_all }}"
register: package_manager__deb_repos_apply
register: package_manager__repos_deb_apply
when:
- package_manager__repos_all | type_debug == 'list'
- package_manager__repos_all | length > 0
- package_manager__repos_all | length > 0
13 changes: 0 additions & 13 deletions roles/package_manager/tasks/deb_upgrade.yml

This file was deleted.

63 changes: 29 additions & 34 deletions roles/package_manager/tasks/main.yml
Original file line number Diff line number Diff line change
@@ -1,37 +1,26 @@
---
- name: Import aybarsm linux ansible role
ansible.builtin.import_role:
name: aybarsm.linux.ansible

- name: Load OS family related variables
ansible.builtin.include_vars: "{{ ansible_os_family | lower }}.yml"

- name: Load common variables structured on OS related variables
ansible.builtin.include_vars: common.yml

# FIXME: Commented out for testing. Uncomment after testing.
# - name: Set facts for package manager
# ansible.builtin.import_tasks:
# file: set_facts.yml
# when: package_manager__role_enabled | default(false) | bool

- name: Include DEB repository and repository key tasks (APT)
- name: Include DEB repository key and repository tasks (APT)
ansible.builtin.include_tasks:
file: deb_repo.yml
when:
- package_manager__role_enabled | default(false) | bool
- ansible_os_family | default('') | lower == 'debian'

# FIXME: Commented out for testing. Uncomment after testing.
# - name: Check upgrade strategy once compliance
# ansible.builtin.fail:
# msg: "Upgrade strategy has been set to 'once' but the required conditions are not met. Please enable the role and manage local facts to use 'once' strategy."
# TODO: Implement RPM repository tasks
# - name: Include RPM repository repository tasks (YUM)
# ansible.builtin.include_tasks:
# file: rpm_repo.yml
# when:
# - package_manager__upgrade_strategy == 'once'
# - __package_manager__upgrade_once_eligible is defined
# - not __package_manager__upgrade_once_eligible
# - package_manager__role_enabled | default(false) | bool
# - ansible_os_family | default('') | lower == 'redhat'

- name: Import upgrade tasks
- name: Include upgrade tasks
ansible.builtin.include_tasks:
file: upgrade.yml
when:
Expand All @@ -42,19 +31,25 @@
skipping: [{{ inventory_hostname }}]
msg: {{ __package_manager__upgrade_execute.reason }}
# FIXME: Commented out for testing. Uncomment after testing.
# - name: Import DEB package tasks (APT)
# ansible.builtin.import_tasks:
# file: deb_packages.yml
# when:
# - package_manager__role_enabled | default(false) | bool
# - package_manager__package_strategy | lower == 'specific'
# - ansible_os_family | default('') | lower == 'debian'
- name: Include DEB package tasks (APT)
ansible.builtin.include_tasks:
file: deb_packages.yml
when:
- package_manager__role_enabled | default(false) | bool
- package_manager__package_strategy | lower == 'specific'
- ansible_os_family | default('') | lower == 'debian'

# FIXME: Commented out for testing. Uncomment after testing.
# - name: Import common package manager tasks
# ansible.builtin.import_tasks:
# file: common_packages.yml
# when:
# - package_manager__role_enabled | default(false) | bool
# - package_manager__package_strategy | lower == 'common'
- name: Include RPM package tasks (DNF)
ansible.builtin.include_tasks:
file: rpm_packages.yml
when:
- package_manager__role_enabled | default(false) | bool
- package_manager__package_strategy | lower == 'specific'
- ansible_os_family | default('') | lower == 'redhat'

- name: Include common package manager tasks
ansible.builtin.include_tasks:
file: common_packages.yml
when:
- package_manager__role_enabled | default(false) | bool
- package_manager__package_strategy | lower == 'common'
2 changes: 1 addition & 1 deletion roles/package_manager/tasks/rpm_packages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
use_backend: "{{ item.use_backend | default(omit) }}"
validate_certs: "{{ item.validate_certs | default(omit) | bool }}"
loop: "{{ package_manager__packages_all }}"
register: package_manager__rpm_packages_apply
register: package_manager__packages_rpm_apply
when:
- package_manager__packages_all | type_debug == 'list'
- package_manager__packages_all | length > 0
7 changes: 0 additions & 7 deletions roles/package_manager/tasks/rpm_upgrade.yml

This file was deleted.

21 changes: 0 additions & 21 deletions roles/package_manager/tasks/set_facts.yml

This file was deleted.

8 changes: 5 additions & 3 deletions roles/package_manager/tasks/upgrade.yml
Original file line number Diff line number Diff line change
Expand Up @@ -82,18 +82,20 @@
state: latest
register: package_manager__rpm_upgrade
when: ansible_os_family | lower == 'redhat'

- name: Include update local facts tasks
- name: Include update local facts tasks when upgrade is successful
ansible.builtin.include_role:
name: aybarsm.linux.ansible
tasks_from: update_local_facts.yml
vars:
ansible__local_fact_updates:
package_manager:
upgrade: ["{{ now().utcnow().strftime('%Y-%m-%dT%H:%M:%S.%fZ') }}"]
is_deb_upgrade_success: "{{ ansible_os_family | lower == 'debian' and not package_manager__upgrade_deb.failed }}"
is_rpm_upgrade_success: "{{ ansible_os_family | lower == 'redhat' and not package_manager__rpm_upgrade.failed }}"
when:
- __package_manager__upgrade_once
- package_manager__upgrade_deb.success or package_manager__rpm_upgrade.success
- is_deb_upgrade_success or is_rpm_upgrade_success
rescue:
- name: Inform when errors
ansible.builtin.debug:
Expand Down
2 changes: 0 additions & 2 deletions roles/package_manager/vars/debian.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@ __package_manager__upgrade_modes: ['full', 'safe', 'yes', 'dist']

package_manager__repo_list_dir: /etc/apt/sources.list.d
package_manager__repo_list_patterns: [".*\\.list$"]
package_manager__upgrade_dpkg_options: ''
__package_manager__upgrade_update_cache_handler: package_manager__deb_update_repo_cache

__package_manager__config:
packages:
Expand Down
2 changes: 1 addition & 1 deletion roles/package_manager/vars/redhat.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# TODO: Implement all redhat family variables
__package_manager__upgrade_modes: ['full']

__package_manager__has_main_repo_list: false
package_manager__repo_list_dir: /etc/yum.repos.d
package_manager__repo_list_use_regex: true
package_manager__repo_list_patterns: [".*\\.repo$"]
__package_manager__upgrade_update_cache_handler: package_manager__rpm_clean_metadata_cache

__package_manager__clean_upgrade_modes: "{{ ['clean_'] | product(__package_manager__upgrade_modes) | map('join') }}"

Expand Down
76 changes: 0 additions & 76 deletions roles/package_manager/vars/test.yml

This file was deleted.

4 changes: 2 additions & 2 deletions roles/posix/tasks/main.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
- name: Import posix sysctl tasks
ansible.builtin.import_tasks:
- name: Include posix sysctl tasks
ansible.builtin.include_tasks:
file: sysctl.yml
when: posix_sysctl__role_enabled | bool
2 changes: 1 addition & 1 deletion roles/posix/tasks/sysctl.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
sysctl_file: "{{ item.sysctl_file | default(omit) }}"
sysctl_set: "{{ item.sysctl_set | default(omit) | bool }}"
loop: "{{ posix__sysctl_all }}"
register: posix__sysctl_deploy
register: posix__sysctl_apply
when:
- posix__sysctl_all | type_debug == 'list'
- posix__sysctl_all | length > 0
File renamed without changes.

0 comments on commit 4a0e42b

Please sign in to comment.