-function remove_baremetal_operator {
- kubectl delete -f bmo/operator/no_ironic/operator.yaml -n metal3
- kubectl delete -f bmo/crds/metal3.io_baremetalhosts_crd.yaml
- kubectl delete -f bmo/rbac/role_binding.yaml
- kubectl delete -f bmo/rbac/role.yaml -n metal3
- kubectl delete -f bmo/rbac/service_account.yaml -n metal3
- kubectl delete -f bmo/namespace/namespace.yaml
-}
-
-function cloud_init_scripts {
- # The "intel_iommu=on iommu=pt" kernel command line is necessary
- # for QAT support.
- cat << 'EOF'
-write_files:
-- path: /var/lib/cloud/scripts/per-instance/set_kernel_cmdline.sh
- owner: root:root
- permissions: '0777'
- content: |
- #!/usr/bin/env bash
- set -eux -o pipefail
- grub_file=${1:-"/etc/default/grub"}
- kernel_parameters="intel_iommu=on iommu=pt"
- sed -i~ "/^GRUB_CMDLINE_LINUX=/{h;s/\(=\".*\)\"/\1 ${kernel_parameters}\"/};\${x;/^$/{s//GRUB_CMDLINE_LINUX=\"${kernel_parameters}\"/;H};x}" "$grub_file"
- update-grub
- reboot
-EOF
- cat << 'EOF'
-- path: /var/lib/cloud/scripts/per-boot/run_dhclient.sh
- owner: root:root
- permissions: '0777'
- content: |
- #!/usr/bin/env bash
- set -xe
- for intf in /sys/class/net/*; do
- sudo ifconfig `basename $intf` up
- sudo dhclient -nw `basename $intf`
- done
-EOF
- cat << EOF
-- path: /var/lib/cloud/scripts/per-boot/set_provider_network.sh
- owner: root:root
- permissions: '0777'
- content: |
- #!/usr/bin/env bash
- set -xe
- route add default gw $PROVIDER_NETWORK_GATEWAY
- sed -i -e 's/^#DNS=.*/DNS=$PROVIDER_NETWORK_DNS/g' /etc/systemd/resolved.conf
- systemctl daemon-reload
- systemctl restart systemd-resolved
-EOF
-}
-
-function apply_userdata_credential {