X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=plc-config-tty;h=1e45cdcbee50a7b22050127778eef84f6832411e;hb=22584cd5928950d82106f43965add51da366cb49;hp=67ebe619e8ed62d7ad0df827f8ca4c0575a2e534;hpb=3d5b576cb47133841a4880c6648210363a431851;p=myplc.git diff --git a/plc-config-tty b/plc-config-tty index 67ebe61..1e45cdc 100755 --- a/plc-config-tty +++ b/plc-config-tty @@ -18,6 +18,7 @@ import readline import getopt from plc_config import PLCConfiguration +from plc_config import ConfigurationException #################### release_id = "$Id$" @@ -360,8 +361,14 @@ def mainloop (cdef, cread, cwrite, default_config, site_config, consolidated_con return elif (command in "wW"): try: + # Confirm that various constraints are met before saving file. + cwrite.verify(cdef, cread) cwrite.save(site_config) + except ConfigurationException, e: + print "Save failed due to a configuration exception: %s" % e + break; except: + import traceback; print traceback.print_exc() print ("Could not save -- fix write access on %s" % site_config) break print ("Wrote %s" % site_config)