- virtual_nodes_ram[$node]=${!virtual_custom_ram:-$virtual_default_ram}
- virtual_nodes_vcpus[$node]=${!virtual_custom_vcpus:-$virtual_default_vcpus}
+ virtual_nodes_data+="${node},"
+ virtual_nodes_data+="${!virtual_custom_ram:-$virtual_default_ram},"
+ virtual_nodes_data+="${!virtual_custom_vcpus:-$virtual_default_vcpus}|"
+done
+virtual_nodes_data=${virtual_nodes_data%|}
+
+# Serialize repos, packages to (pre-)install/remove for:
+# - foundation node VM base image (virtual: all VMs, baremetal: cfg01|mas01)
+# - virtualized control plane VM base image (only when VCP is used)
+base_image_flavors=common
+if [[ "${cluster_states[*]}" =~ virtual_control ]]; then
+ base_image_flavors+=" control"
+fi
+for sc in ${base_image_flavors}; do
+ for va in apt_keys apt_repos pkg_install pkg_remove; do
+ key=virtual_${sc}_${va}
+ eval "${key}=\${${key}[@]// /|}"
+ eval "${key}=\${${key}// /,}"
+ virtual_repos_pkgs+="${!key}^"
+ done