Thanks for working on this Ravi. PFB some comments on the design:
save_configuration() will save the following from the PBS cluster:
Commands output:
qmgr print server
qmgr print sched
qmgr print hook
qmgr export hook <each hook> application/x-python default
qmgr export hook <each hook> application/x-config default
qmgr print resource
qmgr list pbshook
qmgr export pbshook <each pbshook> application/x-config default
pbsnodes
Configuration files:
sched_priv/sched_config
sched_priv/holidays
sched_priv/resource_group
sched_priv/dedicated_time
multiple schedulers directories if any
mom_priv/config (files of each hosts listed in pbsnodes)
mom_priv/config.d/ (saves vnode definition files listed with āpbs_mom -s listā)
/etc/pbs.conf (all nodes)
Was save_configuration already capturing all of this before? Is yes then please mention that save_configuration will continue capturing all of this. If you are changing it to capture something new then please highlight that in the doc.
Also, it will be very helpful to know what information will be captured for each daemon. So, can you please break this down into what info will be captured for each daemon?
A Single file per host to be used to save all the configurations,
So, for a multi-node configuration, we will capture multiple files, where will those files go? is there going to be a parent directory inside which they will be stored? Also, on which host will they be accumulated?
File name with the prefix as āpbsptl_confā and suffix as ā. jsonā.
Where does the hostname go in the filename? I think in later examples you mention pbsptl_<hostname>_conf.json, so please correct it here.
File contents can be encoded in base64 & that base64 is added to json file.
So will there be an argument to save_configuration() which decides whether to encrypt the data or not?
Different file to be used for each host, to handle multinode cluster pbs configuration. Each file to have a prefix of hostname to identify between configuration of different hosts.
e.g, pbsptl_host1_versionNumber.json, pbsptl_host2_versionNumber,json
You already talk about file name in bullet 1, so I suggest that you merge the two
Different versions of files to be maintained, every time save_configuration() is called.
then why do you need to do this:
When user invokes pbs_benchpress, cleanup of tempdir is performed in case file with same name is present.