Generic way for retrieving version info of execs
louisponet opened this issue · comments
Dear All,
For code developers that provide tools to create input files programmatically, it is sometimes needed to know what the version is of a given code in order to correctly format them. For reading output files this is not such a big problem since the code/formatting of those itself determines the version.
Would it be possible through FireCrest to automate the process of finding out the version of an executable? Usually the only way of doing this is through something similar to
exec -v
, or e.g. in the case of Quantum-Espresso to run the code with an empty input and reading the output.
Right now, this automation can be achieved through ssh
with a shell command to execute. Would there be any way to do something similar through FirecREST?
Cheers,
Louis
Dear Louis,
Currently FirecREST does not provide arbitrary command execution like SSH, only the endpoints on utilities
.
For this case, I think there are some options:
- submit a job to get QE version and other information related to the cluster. Maybe submitting to a
debug
partition (queue) could assure to get it executed quickly. - If the cluster uses
modules
to load QE, you could load the desired version when submitting a job.
Best regards,
Alejandro
Hi Alejandro,
Thank you, I think indeed the only way is submitting a job to debug, or requiring the user to specify the version manually.
Just so I understand, is the reason why it would be hard/impossible to allow for arbitrary shell execution because the firecrest service is not running on a frontend? Or is it a design decision for another reason?
Best,
Louis
Hi Louis,
It was more a design decision agreed with the Security Officer. I understand it would be easier to have similar capabilities to SSH but executing it securely in a shared machine is more tricky (considering a malicious user).
This can change in the future, but so far the decision is not to provide it.
Best,
Alejandro
Hi Alejandro,
I see, that makes sense.
Best,
Louis