ESPO-01 nimmt die Company Unique Id statt des Firmennamens

Die Unique Id ist in den Stammdaten ein Pflichtfeld und laut Dialog eindeutig -
kurz, stabil und vom Firmennamen unabhaengig: glasfaktor statt
glasfaktor-ingenieure-gmbh. Der Task uebergibt kuenftig %companyuniqueid%.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
gordon.zimm 2026-09-24 17:49:09 +02:00
parent 5c15ac3f0b
commit df6c3c530d

View File

@ -1,23 +1,25 @@
#!/bin/bash #!/bin/bash
# ESPO-01-Grundeinrichtung – schliesst die Basis-VM ab. # ESPO-01-Grundeinrichtung – schliesst die Basis-VM ab.
# Laeuft als root, ist idempotent und kann jederzeit wiederholt werden. # Laeuft als root, ist idempotent und kann jederzeit wiederholt werden.
# Aufruf: bash ESPO-01-Grundeinrichtung.sh "<Kundenname>" # Aufruf: bash ESPO-01-Grundeinrichtung.sh "<Kundenkuerzel>"
# Der RMM-Task ist nur ein duenner Ausloeser, der dieses Skript holt und mit %companyname% aufruft. # Der RMM-Task ist nur ein duenner Ausloeser, der dieses Skript holt und mit %companyuniqueid%
# aufruft - der "Company Unique Id" aus den Stammdaten. Sie ist Pflichtfeld und eindeutig,
# im Gegensatz zum Firmennamen kurz und stabil (glasfaktor statt glasfaktor Ingenieure GmbH).
# Ob der Lauf erlaubt ist, entscheidet der Task selbst per If/Then auf espo_zustand. # Ob der Lauf erlaubt ist, entscheidet der Task selbst per If/Then auf espo_zustand.
set -u set -u
# Standzeile: zeigt im Protokoll, welche Fassung tatsaechlich gelaufen ist. # Standzeile: zeigt im Protokoll, welche Fassung tatsaechlich gelaufen ist.
echo "ESPO-01-Grundeinrichtung, Skriptstand 2026-09-24" echo "ESPO-01-Grundeinrichtung, Skriptstand 2026-09-24"
KUNDE_ROH="${1:-}" KUERZEL_ROH="${1:-}"
FEHLER=0 FEHLER=0
# 1. Hostname aus dem Kundennamen ableiten (klein, nur a-z 0-9 und Bindestrich), damit die # 1. Hostname aus dem Kundenkuerzel ableiten (klein, nur a-z 0-9 und Bindestrich), damit die
# Flotte im RMM und in Logs eindeutig benannt ist. # Flotte im RMM und in Logs eindeutig benannt ist.
KUNDE=$(printf '%s' "$KUNDE_ROH" | tr '[:upper:]' '[:lower:]' | tr -c 'a-z0-9' '-' | sed 's/-\+/-/g; s/^-//; s/-$//') KUERZEL=$(printf '%s' "$KUERZEL_ROH" | tr '[:upper:]' '[:lower:]' | tr -c 'a-z0-9' '-' | sed 's/-\+/-/g; s/^-//; s/-$//')
SOLL="crm-${KUNDE}" SOLL="crm-${KUERZEL}"
IST=$(hostnamectl --static) IST=$(hostnamectl --static)
if [ -z "$KUNDE" ]; then if [ -z "$KUERZEL" ]; then
echo "FEHLER: Kundenname leer - Hostname nicht gesetzt"; FEHLER=1 echo "FEHLER: Kundenkuerzel leer - ist die Company Unique Id im RMM gesetzt?"; FEHLER=1
elif [ "$IST" != "$SOLL" ]; then elif [ "$IST" != "$SOLL" ]; then
hostnamectl set-hostname "$SOLL" && sed -i "s/\b${IST}\b/${SOLL}/g" /etc/hosts hostnamectl set-hostname "$SOLL" && sed -i "s/\b${IST}\b/${SOLL}/g" /etc/hosts
echo "Hostname: $IST -> $SOLL" echo "Hostname: $IST -> $SOLL"