apiVersion: apps/v1 kind: DaemonSet metadata: name: longhorn-iscsi-installation labels: app: longhorn-iscsi-installation annotations: command: &cmd OS=$(grep -E "^ID_LIKE=" /etc/os-release | cut -d '=' -f 2); if [[ -z "${OS}" ]]; then OS=$(grep -E "^ID=" /etc/os-release | cut -d '=' -f 2); fi; if [[ "${OS}" == *"debian"* ]]; then sudo apt-get update -q -y && sudo apt-get install -q -y open-iscsi && sudo systemctl -q enable iscsid && sudo systemctl start iscsid && sudo modprobe iscsi_tcp; elif [[ "${OS}" == *"suse"* ]]; then sudo zypper --gpg-auto-import-keys -q refresh && sudo zypper --gpg-auto-import-keys -q install -y open-iscsi && sudo systemctl -q enable iscsid && sudo systemctl start iscsid && sudo modprobe iscsi_tcp; else sudo yum makecache -q -y && sudo yum --setopt=tsflags=noscripts install -q -y iscsi-initiator-utils && echo "InitiatorName=$(/sbin/iscsi-iname)" > /etc/iscsi/initiatorname.iscsi && sudo systemctl -q enable iscsid && sudo systemctl start iscsid && sudo modprobe iscsi_tcp; fi && if [ $? -eq 0 ]; then echo "iscsi install successfully"; else echo "iscsi install failed error code $?"; fi spec: selector: matchLabels: app: longhorn-iscsi-installation template: metadata: labels: app: longhorn-iscsi-installation spec: hostNetwork: true hostPID: true initContainers: - name: iscsi-installation command: - nsenter - --mount=/proc/1/ns/mnt - -- - bash - -c - *cmd image: alpine:3.17 securityContext: privileged: true containers: - name: sleep image: registry.k8s.io/pause:3.1 updateStrategy: type: RollingUpdate