On 05/13/2012 11:03 AM, Hao Liu wrote:
Hi,
My predecessor configured condor by using environment variables, such as
export _condor_START_owner=${USER}.
I understand this is to config START expression with owner attribute.
But how does this work?
This is only ref I found: "Some Condor tools utilize environment
variables to set their configuration. These tools search for
specifically-named environment variables. The variables are prefixed by
the string_CONDOR_or _condor_. The tools strip off the prefix, and
utilize what remains as configuration."
Following the format I made some change, but some worked some did not work:
export _condor_START=true (work, allow any one to run jobs)
export _condor_START=((Owner="xxx")||(Owner="yyy")) - doesn't work,
error "Required attribute "START" is not defined"
export _condor_START_owner="xxx"||"yyy" - "Required attribute "START" is
not defined"
so how to configure condor by environment variables, this prefix suffix way?
Thanks,
Hao
Wow, that's a gem. START_owner is a param just as START is. START_owner should probably fade into history, if it hasn't already.
'START_owner = ""xyz""' will generate 'START = Owner == "xyz"', or in your case 'START = Owner == ""xxx"|"yyy""', which has no hope of working. I recommend purging START_owner from your memory.
That illustrated the problem though,
export _condor_START=((Owner=="xxx")||(Owner=="yyy"))
should work. Given the appropriate shell escaping. Note == vs =.
You are correct in thinking "_condor_" is the prefix Condor will use to pick up configuration from the environment.
Best,
matt