Yes. As of HTCondor 8.2.x you can do this. The 8.2.x and late
config parser supports include scripts. Include : $(LIBEXEC)/test_for_my_software.sh | The trailing | tells the include statement that test_for_my_software.sh is an executable. The script should write to stdout statements in config syntax. So it might be something like #!/bin/sh if [ -e my_software ]; then echo MY_SOFTWARE=true; fi Note that this script will run *every* time that a HTCondor daemon starts or reconfigs, and also whenever a condor tool such as condor_status or condor_submit executes. With tools The current directory can vary so the path to the script must be absolute. You can have the script execute only when the startd is parsing the config, by wrapping it in a if/else config statements. if $(IsStartd) Include : $(LIBEXEC)/test_for_my_software.sh | endif But be aware, if you do this, the script will not execute when you run condor_config_val unless you use the -subsystem argument to condor_config_val so that it reads the config as if it were the startd. Run these commands to see what I mean. condor_config_val -dump ^Is ^My condor_config_val -subsystem startd -dump ^Is ^My -tj On 7/2/2015 11:00 AM, Mary Romelfanger
wrote:
|