Dein Setup wächst ja so langsam in Bereiche, in denen du dir so langsam mal cfengine2 anschauen solltest.
Dort kannst du ganz einfach sagen, dass der Host ClientAti-15 in den cfengine2-Klassen X, ATI, LVM und LiDE60_Scanner ist.
In diesen Klassen kannst du dann configs bearbeiten, Pakete installieren - oder einfach nur deine Shellscripte aufrufen.
Deine Lösung mit der csv-Liste ist pragrmatisch und funktioniert jetzt anscheinend. Wenn du aber dieses System über Jahre pflegen und erweitern willst, kommst du irgendwann an einen Punkt, wo cf2 einfacher gewesen wäre.
Lass dich nicht abschrecken, du musst nicht unbedingt ein server/client Setup aufsetzen für cf2. Du kannst die Dateien im late-Bereich deines Installers auch per wget kopieren und auf dem Client unter /var/lib/cfengine/inputs entpacken. Beim 1. Boot rufst du dann cfagent auf und der rödelt einmal über alles drüber.
Seinen großen Vorteil gegenüber deinem Setup spielt cf2 dann aus, wenn du bei allen Clients nachustieren willst.
I.d.R sind cf Anweisungen indempotent, d.h. auch nach 15 maliger Ausführung ändert sich der Zustand nicht weiter. Auf gut Deutsch: Wenn die config nach dem ersten Lauf der Vorgabe entspricht, wird sie danach nicht mehr angefast oder erweitert.
Es gibt Leute, die lassen cfengine2 stündlich laufen und sammeln nebenher noch Daten ein um Anomalien zu erkennen und reporten darüber. Das wäre dann aber schon ein großes Setup
Hier ist ein Praxissetup beschrieben:
http://kaldor.vwl.uni-hannover.de/karl/ ... engine.php