I had to support plenty of linux based platforms automating some trivial tasks. Originally capturing photos from analog camera and uploading it to the server. So basically a webcam functionality. Later on some customers wanted to support thermometers, meteorological stations, images storage... So the longer I was supporting it the more differences were introduced between linux boxes.
Finally I was spending more time to maintain the servers than to develop new functionality.
So at the and I packed all into squashfs on flash based linux distribution and added a command line based management console.
What you see here
is a framework providing universal management consoles for embedded platforms. I must admit that it's mostly inspired by Cisco IOS.
The structure of console, default/possible values are defined in one xml file. The configuration of platform is defined in second xml file. So basically user is provided with an daemon editor for specific xml structure binded to tcp port. As a backup plan this configuration file can be edited from any text editor.
Each time daemon starts it executes all registered exporters. Exporters and Actions are defined as
java classes beanshell scripts. So if you put it at runlevel just after you mount root as writeable it can be used to create whole /etc structure.
Additionally actions can be executed from user console if you allow it in definition xml.
Sorry for developing it in java. I guess it can be simply ported to python but in my case RAM size was not an issue.
Have fun :)