From 65948ed0d3ec7d3505b3d4e27a0ca041b43a5e2d Mon Sep 17 00:00:00 2001 From: Menno van Leeuwen Date: Mon, 20 Jan 2025 23:43:35 +0100 Subject: [PATCH] fix: improve Ansible installation and upgrade process in update script --- bin/actions/update.sh | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/bin/actions/update.sh b/bin/actions/update.sh index 325e090..4e8a6d2 100755 --- a/bin/actions/update.sh +++ b/bin/actions/update.sh @@ -65,16 +65,21 @@ if [[ "$RUN_HA" == true ]]; then fi if [[ "$RUN_ANSIBLE" == true ]]; then - if command -v ansible-playbook &> /dev/null; then - printfe "%s\n" "cyan" "Upgrading Ansible packages..." - cd $HOME/dotfiles/config/ansible && ansible-playbook -i $HOME/dotfiles/config/ansible/inventory.ini $HOME/dotfiles/config/ansible/main.yml --extra-vars "hostname=$DOTF_HOSTNAME" --limit $DOTF_HOSTNAME --ask-become-pass - + if ! command -v ansible-playbook &> /dev/null; then + printfe "%s\n" "yellow" "Ansible is not installed, installing it with pipx..." + pipx install --include-deps ansible ansible-lint + if [[ $? -ne 0 ]]; then - printfe "%s\n" "red" "Failed to upgrade Ansible packages." + printfe "%s\n" "red" "Failed to install Ansible." exit 1 fi - else - printfe "%s\n" "red" "Ansible is not installed." + fi + + printfe "%s\n" "cyan" "Upgrading Ansible packages..." + cd $HOME/dotfiles/config/ansible && ansible-playbook -i $HOME/dotfiles/config/ansible/inventory.ini $HOME/dotfiles/config/ansible/main.yml --extra-vars "hostname=$DOTF_HOSTNAME" --extra-vars "ansible_user=$USER" --limit $DOTF_HOSTNAME --ask-become-pass + + if [[ $? -ne 0 ]]; then + printfe "%s\n" "red" "Failed to upgrade Ansible packages." exit 1 fi fi \ No newline at end of file