From e10d00d114031a7b76c0d14e5d9cf3e1332a1af4 Mon Sep 17 00:00:00 2001 From: Josh Patterson Date: Tue, 26 Aug 2025 14:54:37 -0400 Subject: [PATCH] support for managerhype --- salt/libvirt/bridge.sls | 7 ++++--- salt/salt/minion.sls | 2 +- setup/so-functions | 23 +++++++++++++---------- 3 files changed, 18 insertions(+), 14 deletions(-) diff --git a/salt/libvirt/bridge.sls b/salt/libvirt/bridge.sls index c9e8650a3..b8f720993 100644 --- a/salt/libvirt/bridge.sls +++ b/salt/libvirt/bridge.sls @@ -5,9 +5,6 @@ # We do not import GLOBALS in this state because it is called during setup -{% from 'libvirt/map.jinja' import LIBVIRTMERGED %} -{% from 'salt/map.jinja' import SYSTEMD_UNIT_FILE %} - down_original_mgmt_interface: cmd.run: - name: "nmcli con down {{ pillar.host.mainint }}" @@ -32,6 +29,8 @@ wait_for_br0_ip: - onchanges: - cmd: down_original_mgmt_interface +{% if grains.role == 'so-hypervisor' %} + update_mine_functions: file.managed: - name: /etc/salt/minion.d/mine_functions.conf @@ -53,3 +52,5 @@ restart_salt_minion_service: - enable: True - listen: - file: update_mine_functions + +{% endif %} diff --git a/salt/salt/minion.sls b/salt/salt/minion.sls index b0e078e79..b85fad1c0 100644 --- a/salt/salt/minion.sls +++ b/salt/salt/minion.sls @@ -95,7 +95,7 @@ enable_startup_states: - unless: pgrep so-setup # prior to 2.4.30 this managed file would restart the salt-minion service when updated -# since this file is currently only adding a sleep timer on service start +# since this file is currently only adding a delay service start # it is not required to restart the service salt_minion_service_unit_file: file.managed: diff --git a/setup/so-functions b/setup/so-functions index 522446be4..4b84b752b 100755 --- a/setup/so-functions +++ b/setup/so-functions @@ -1187,15 +1187,18 @@ get_minion_type() { } hypervisor_local_states() { - # these states need to run before the first highstate so that we dont deal with the salt-minion restarting - # and we need these setup prior to the highstate - info "Check if hypervisor or managerhype" - if [ $is_hypervisor ] || [ $is_managerhype ]; then - info "Running libvirt states for hypervisor" - logCmd "salt-call state.apply libvirt.64962 --local --file-root=../salt/ -l info" - info "Setting up bridge for $MNIC" - salt-call state.apply libvirt.bridge --local --file-root=../salt/ -l info pillar="{\"host\": {\"mainint\": \"$MNIC\"}}" - fi + # these states need to run before the first highstate so that we dont deal with the salt-minion restarting + # and we need these setup prior to the highstate + info "Check if hypervisor or managerhype" + if [ $is_hypervisor ] || [ $is_managerhype ]; then + info "Running libvirt states for hypervisor" + logCmd "salt-call state.apply libvirt.64962 --local --file-root=../salt/ -l info queue=True" + info "Setting up bridge for $MNIC" + salt-call state.apply libvirt.bridge --local --file-root=../salt/ -l info pillar="{\"host\": {\"mainint\": \"$MNIC\"}} queue=True" + if [ $is_managerhype ]; then + logCmd "salt-call state.apply salt.minion queue=True" + fi + fi } install_cleanup() { @@ -1642,7 +1645,7 @@ reserve_ports() { reinstall_init() { info "Putting system in state to run setup again" - if [[ $install_type =~ ^(MANAGER|EVAL|MANAGERSEARCH|STANDALONE|FLEET|IMPORT)$ ]]; then + if [[ $install_type =~ ^(MANAGER|EVAL|MANAGERSEARCH|MANAGERHYPE|STANDALONE|FLEET|IMPORT)$ ]]; then local salt_services=( "salt-master" "salt-minion" ) else local salt_services=( "salt-minion" )