name: netbox-token-und-rename
description: NetBox — Token steckt in einem export-Schnipsel; Geräte-Rename muss in-place per API
metadata:
node_type: memory
type: project
originSessionId: 73a2568a-f76d-4f0a-9431-129dc27b0519


Zwei Fallen bei NetBox (seeds.crumbforest.io) im Ansible-Crumbforest:

1. Token-Format. credentials/netbox_api_token enthält keinen blanken Token,
sondern einen Shell-Schnipsel export NETBOX_TOKEN=<40 Zeichen> (+ URL-Notiz).
Die Playbooks lasen ihn roh per lookup('file', ...) → alle netbox-.yml liefen
in
403 "Invalid token header"*. Seit 2026-07-14 ziehen sie ihn heraus mit:
lookup('file', ...) | regex_search('[A-Za-z0-9]{40}') — format-agnostisch,
funktioniert mit export-Schnipsel UND blankem Token. Die Credentials-Datei wurde
bewusst NICHT angefasst (der User sourced sie evtl. selbst).

2. Geräte-Rename. netbox_device matcht auf name. Wer im Playbook nur den
Namen ändert, legt ein ZWEITES Gerät an; das alte bleibt als Waise samt
IP-Zuordnung/Interface/Historie zurück. Richtig: einmalig in-place per API
PATCH /api/dcim/devices/<id>/ {"name": "neu"}, danach passt das Playbook wieder
idempotent. So gemacht bei imac → crumbdesktop (id 21, IP 10.42.0.52/32).

How to apply: Vor NetBox-Läufen kurz prüfen, ob der Token 40 Zeichen auflöst.
Bei Umbenennungen immer erst die id holen und in-place patchen, nie den Namen im
Playbook "einfach ändern".

crumbdesktop = der iMac im Container (Krümel/Meister-Workstation, Crew-Segment
10.42.0.52). Kein SSH-Key hinterlegt → Hardware-Fakten in NetBox bewusst offen,
obwohl Port 22 offen und vom Hub (nullfeld) erreichbar ist. Der Control-Node-Mac
ist selbst NICHT im VPN — Crew-Hosts nur per ProxyCommand über den Hub erreichbar.