moved post-installation reboots to task blocks from each software's associated handler to reduce power cycle; fixed semantic errors with varables and fixed repository addition issues
This commit is contained in:
@@ -27,6 +27,6 @@
|
||||
- julia
|
||||
- julialauncher
|
||||
- juliaup
|
||||
- name: Reboot machine for shell environment change
|
||||
ansible.builtin.reboot:
|
||||
msg: Rebooting machine
|
||||
# - name: Reboot machine for shell environment change
|
||||
# ansible.builtin.reboot:
|
||||
# msg: Rebooting machine
|
||||
@@ -89,7 +89,7 @@
|
||||
group: root
|
||||
state: link
|
||||
loop: "{{ prebuilt_nodepaths | product(['node']) }}"
|
||||
- name: Reboot machine for shell environment change
|
||||
ansible.builtin.reboot:
|
||||
msg: Rebooting machine
|
||||
# - name: Reboot machine for shell environment change
|
||||
# ansible.builtin.reboot:
|
||||
# msg: Rebooting machine
|
||||
|
||||
|
||||
@@ -46,6 +46,6 @@
|
||||
- git-remote-rad
|
||||
- rad-id
|
||||
- rad-patch
|
||||
- name: Reboot machine for shell environment change
|
||||
ansible.builtin.reboot:
|
||||
msg: Rebooting machine
|
||||
# - name: Reboot machine for shell environment change
|
||||
# ansible.builtin.reboot:
|
||||
# msg: Rebooting machine
|
||||
@@ -23,6 +23,6 @@
|
||||
state: link
|
||||
loop:
|
||||
- rustup
|
||||
- name: Reboot machine for shell environment change
|
||||
ansible.builtin.reboot:
|
||||
msg: Rebooting machine
|
||||
# - name: Reboot machine for shell environment change
|
||||
# ansible.builtin.reboot:
|
||||
# msg: Rebooting machine
|
||||
@@ -24,6 +24,6 @@
|
||||
loop:
|
||||
- uv
|
||||
- uvx
|
||||
- name: Reboot machine for shell environment change
|
||||
ansible.builtin.reboot:
|
||||
msg: Rebooting machine
|
||||
# - name: Reboot machine for shell environment change
|
||||
# ansible.builtin.reboot:
|
||||
# msg: Rebooting machine
|
||||
@@ -45,9 +45,55 @@
|
||||
when: ansible_facts["os_family"] == "Debian"
|
||||
become: true
|
||||
block:
|
||||
- name: Creating core OS repository sources for package manager
|
||||
when: ansible_facts["os_family"] == "Debian"
|
||||
ansible.builtin.deb822_repository:
|
||||
name: "{{ item.name }}"
|
||||
uris: "{{ item.sources }}"
|
||||
types: "{{ item.types }}"
|
||||
suites: "{{ item.suites }}"
|
||||
components: "{{ item.comps }}"
|
||||
signed_by: "{{ item.sigkey }}"
|
||||
state: present
|
||||
loop:
|
||||
- name: debian-trixie
|
||||
sources: "http://deb.debian.org/debian/"
|
||||
sigkey: /usr/share/keyrings/debian-archive-keyring.gpg
|
||||
types:
|
||||
- deb-src
|
||||
- deb
|
||||
suites:
|
||||
- trixie
|
||||
- trixie-updates
|
||||
comps:
|
||||
- main
|
||||
- non-free-firmware
|
||||
- contrib
|
||||
- name: debian-trixie-security
|
||||
sources: "http://security.debian.org/debian-security"
|
||||
sigkey: /usr/share/keyrings/debian-archive-keyring.gpg
|
||||
types:
|
||||
- deb-src
|
||||
- deb
|
||||
suites: trixie-security
|
||||
comps:
|
||||
- main
|
||||
- non-free-firmware
|
||||
- contrib
|
||||
- name: Remove previous core OS repository sources for package manager
|
||||
ansible.builtin.file:
|
||||
path: /etc/apt/sources.list
|
||||
state: absent
|
||||
# @TODO uncomment below before continuing with testing previous task
|
||||
# - name: Premature end of play
|
||||
# ansible.builtin.meta: end_play
|
||||
- name: Updating package cache
|
||||
ansible.builtin.apt:
|
||||
update_cache: true
|
||||
- name: Updating package cache
|
||||
ansible.builtin.apt:
|
||||
upgrade: dist
|
||||
autoremove: true
|
||||
- name: Registering a package source
|
||||
when: item.sources != None
|
||||
ansible.builtin.deb822_repository:
|
||||
@@ -59,24 +105,22 @@
|
||||
signed_by: "{{ item.sigkey }}"
|
||||
state: present
|
||||
loop: "{{ ((pkgs.mngr.core | default([]))) }}"
|
||||
- name: Updating package cache
|
||||
ansible.builtin.apt:
|
||||
update_cache: true
|
||||
- name: Installing a local package in managed node
|
||||
when: item.uri != None
|
||||
ansible.builtin.apt:
|
||||
deb: "{{ item.uri }}"
|
||||
state: present
|
||||
# @TODO add a default value for notify
|
||||
# notify: "{{ item.name }}"
|
||||
notify: "{{ item.handler | default('default') }}"
|
||||
loop: "{{ (pkgs.mngr.core | default([])) | selectattr('uri', 'search', '\\.deb$') }}"
|
||||
- name: Updating package cache
|
||||
ansible.builtin.apt:
|
||||
update_cache: true
|
||||
- name: Installing a package
|
||||
when: item.name != None and item.uri == None
|
||||
ansible.builtin.package:
|
||||
name: "{{ item.name }}"
|
||||
state: latest
|
||||
# @TODO add a default value for notify
|
||||
# notify: "{{ item.name }}"
|
||||
state: present
|
||||
notify: "{{ item.handler | default('default') }}"
|
||||
loop: "{{ ((pkgs.mngr.core | default([]))) | rejectattr('uri', 'search', '\\.deb$') }}"
|
||||
tags:
|
||||
- get_mngr_pkgs
|
||||
@@ -94,12 +138,15 @@
|
||||
group: "{{ ansible_user }}"
|
||||
force: true
|
||||
mode: "744"
|
||||
# @TODO add a default value for notify
|
||||
notify: "{{ ((pkgs.script.core | default([])))[idx].name }}"
|
||||
notify: "{{ ((pkgs.script.core | default([])))[idx].handler | default('default') }}"
|
||||
loop: "{{ (pkgs.script.core | default([])) }}"
|
||||
loop_control:
|
||||
index_var: idx
|
||||
register: install_scripts
|
||||
- name: Reboot machine for shell environment change
|
||||
become: true
|
||||
ansible.builtin.reboot:
|
||||
msg: Rebooting machine
|
||||
tags:
|
||||
- get_script_pkgs
|
||||
- name: Installing software by building it from source archives
|
||||
@@ -131,16 +178,21 @@
|
||||
loop_control:
|
||||
index_var: idx
|
||||
- name: Unarchiving software build archive
|
||||
become: true
|
||||
become_user: "{{ current_user.stdout }}"
|
||||
when: item.dest != None and (((pkgs.script.core | default([]))) | length) > 0
|
||||
ansible.builtin.unarchive:
|
||||
src: "{{ item.dest }}"
|
||||
remote_src: true
|
||||
dest: "{{ ansible_user_home.stdout }}/downloads/archives/released/{{ ((pkgs.archive.core | default([])))[idx].name }}/"
|
||||
# @TODO add a default value for notify
|
||||
notify: "{{ ((pkgs.archive.core | default([])))[idx].name }}"
|
||||
notify: "{{ ((pkgs.archive.core | default([])))[idx].handler | default('default') }}"
|
||||
loop: "{{ archived_builds.results }}"
|
||||
loop_control:
|
||||
index_var: idx
|
||||
- name: Reboot machine for shell environment change
|
||||
become: true
|
||||
ansible.builtin.reboot:
|
||||
msg: Rebooting machine
|
||||
tags:
|
||||
- get_archive_pkgs
|
||||
- name: Installing software from source git repositories
|
||||
@@ -155,9 +207,12 @@
|
||||
version: "{{ item.branch }}"
|
||||
clone: true
|
||||
single_branch: true
|
||||
# @TODO add a default value for notify
|
||||
notify: "{{ item.name }}"
|
||||
notify: "{{ item.handler | default('default') }}"
|
||||
loop: "{{ (pkgs.git_repos.core | default([])) }}"
|
||||
register: installation_repos
|
||||
- name: Reboot machine for shell environment change
|
||||
become: true
|
||||
ansible.builtin.reboot:
|
||||
msg: Rebooting machine
|
||||
tags:
|
||||
- get_git_pkgs
|
||||
|
||||
@@ -46,9 +46,55 @@
|
||||
when: ansible_facts["os_family"] == "Debian"
|
||||
become: true
|
||||
block:
|
||||
- name: Creating core OS repository sources for package manager
|
||||
when: ansible_facts["os_family"] == "Debian"
|
||||
ansible.builtin.deb822_repository:
|
||||
name: "{{ item.name }}"
|
||||
uris: "{{ item.sources }}"
|
||||
types: "{{ item.types }}"
|
||||
suites: "{{ item.suites }}"
|
||||
components: "{{ item.comps }}"
|
||||
signed_by: "{{ item.sigkey }}"
|
||||
state: present
|
||||
loop:
|
||||
- name: debian-trixie
|
||||
sources: "http://deb.debian.org/debian/"
|
||||
sigkey: /usr/share/keyrings/debian-archive-keyring.gpg
|
||||
types:
|
||||
- deb-src
|
||||
- deb
|
||||
suites:
|
||||
- trixie
|
||||
- trixie-updates
|
||||
comps:
|
||||
- main
|
||||
- non-free-firmware
|
||||
- contrib
|
||||
- name: debian-trixie-security
|
||||
sources: "http://security.debian.org/debian-security"
|
||||
sigkey: /usr/share/keyrings/debian-archive-keyring.gpg
|
||||
types:
|
||||
- deb-src
|
||||
- deb
|
||||
suites: trixie-security
|
||||
comps:
|
||||
- main
|
||||
- non-free-firmware
|
||||
- contrib
|
||||
- name: Remove previous core OS repository sources for package manager
|
||||
ansible.builtin.file:
|
||||
path: /etc/apt/sources.list
|
||||
state: absent
|
||||
# @TODO uncomment below before continuing with testing previous task
|
||||
# - name: Premature end of play
|
||||
# ansible.builtin.meta: end_play
|
||||
- name: Updating package cache
|
||||
ansible.builtin.apt:
|
||||
update_cache: true
|
||||
- name: Updating package cache
|
||||
ansible.builtin.apt:
|
||||
upgrade: dist
|
||||
autoremove: true
|
||||
- name: Registering a package source
|
||||
when: item.sources != None
|
||||
ansible.builtin.deb822_repository:
|
||||
@@ -60,32 +106,30 @@
|
||||
signed_by: "{{ item.sigkey }}"
|
||||
state: present
|
||||
loop: "{{ (pkgs.mngr.userspace | default([])) }}"
|
||||
- name: Updating package cache
|
||||
ansible.builtin.apt:
|
||||
update_cache: true
|
||||
- name: Installing a local package in managed node
|
||||
when: item.uri != None
|
||||
ansible.builtin.apt:
|
||||
deb: "{{ item.uri }}"
|
||||
state: present
|
||||
# @TODO add a default value for notify
|
||||
# notify: "{{ item.name }}"
|
||||
notify: "{{ item.handler | default('default') }}"
|
||||
loop: "{{ (pkgs.mngr.userspace | default([])) | selectattr('uri', 'search', '\\.deb$') }}"
|
||||
- name: Updating package cache
|
||||
ansible.builtin.apt:
|
||||
update_cache: true
|
||||
- name: Installing a package
|
||||
when: item.name != None and item.uri == None
|
||||
ansible.builtin.package:
|
||||
name: "{{ item.name }}"
|
||||
state: latest
|
||||
# @TODO add a default value for notify
|
||||
# notify: "{{ item.name }}" # @TODO create corresponding roles/init-vps handlers
|
||||
notify: "{{ item.handler | default('default') }}" # @TODO create corresponding roles/init-vps handlers
|
||||
loop: "{{ (pkgs.mngr.userspace | default([])) | rejectattr('uri', 'search', '\\.deb$') }}"
|
||||
tags:
|
||||
- get_mngr_pkgs
|
||||
- name: Installing software by executing installation shell scripts
|
||||
become: true
|
||||
become_user: "{{ current_user.stdout }}"
|
||||
block:
|
||||
- name: Acquiring installation shell script
|
||||
become_user: "{{ current_user.stdout }}"
|
||||
when: item.src != None and ((pkgs.script.userspace | default([])) | length) > 0
|
||||
ansible.builtin.uri:
|
||||
url: "{{ item.src }}"
|
||||
@@ -95,12 +139,14 @@
|
||||
group: "{{ ansible_user }}"
|
||||
force: true
|
||||
mode: "744"
|
||||
# @TODO add a default value for notify
|
||||
notify: "{{ (pkgs.script.userspace | default([]))[idx].name }}"
|
||||
notify: "{{ (pkgs.script.userspace | default([]))[idx].handler | default('default') }}"
|
||||
loop: "{{ (pkgs.script.userspace | default([])) }}"
|
||||
loop_control:
|
||||
index_var: idx
|
||||
register: install_scripts
|
||||
- name: Reboot machine for shell environment change
|
||||
ansible.builtin.reboot:
|
||||
msg: Rebooting machine
|
||||
tags:
|
||||
- get_script_pkgs
|
||||
- name: Installing software by building it from source archives
|
||||
@@ -139,37 +185,35 @@
|
||||
dest: "{{ ansible_user_home.stdout }}/downloads/archives/released/{{ (pkgs.archive.userspace | default([]))[idx].name }}/"
|
||||
owner: "{{ ansible_user }}"
|
||||
group: "{{ ansible_user }}"
|
||||
# @TODO add a default value for notify
|
||||
notify: "{{ (pkgs.archive.userspace | default([]))[idx].name }}"
|
||||
notify: "{{ (pkgs.archive.userspace | default([]))[idx].handler | default('default') }}"
|
||||
loop: "{{ archived_builds.results }}"
|
||||
loop_control:
|
||||
index_var: idx
|
||||
- name: Reboot machine for shell environment change
|
||||
become: true
|
||||
ansible.builtin.reboot:
|
||||
msg: Rebooting machine
|
||||
tags:
|
||||
- get_archive_pkgs
|
||||
- name: Installing software from source git repositories
|
||||
block:
|
||||
- name: Clone git bare repository
|
||||
when: item.src != None
|
||||
become: true
|
||||
become_user: "{{ current_user.stdout }}"
|
||||
when: item.src != None
|
||||
ansible.builtin.git:
|
||||
repo: "{{ item.src }}"
|
||||
dest: "{{ ansible_user_home.stdout }}/repos/.foreign/{{ item.name }}"
|
||||
version: "{{ item.branch }}"
|
||||
clone: true
|
||||
single_branch: true
|
||||
notify: "{{ item.handler | default('default') }}"
|
||||
loop: "{{ (pkgs.git_repos.userspace | default([])) }}"
|
||||
register: installation_repos
|
||||
# - name: Changing ownership of specific repo subdirectory
|
||||
# become: true
|
||||
# become_user: "{{ current_user.stdout }}"
|
||||
# ansible.builtin.file:
|
||||
# path: "{{ ansible_user_home.stdout }}/repos/.foreign/{{ item.name }}"
|
||||
# recurse: true
|
||||
# owner: "{{ ansible_user }}"
|
||||
# group: "{{ ansible_user }}"
|
||||
# notify: "{{ item.name }}"
|
||||
# loop: "{{ (pkgs.git_repos.userspace | default([])) }}"
|
||||
- name: Reboot machine for shell environment change
|
||||
become: true
|
||||
ansible.builtin.reboot:
|
||||
msg: Rebooting machine
|
||||
tags:
|
||||
- get_git_pkgs
|
||||
# @TODO add a reboot either here or in any of the handlers potentially notified from here in
|
||||
|
||||
Reference in New Issue
Block a user