[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Condor-users] Only run when logged of?



On 09/29/2010 08:53 AM, Dave STREET wrote:
Hi

I got a bit stuck with this.

I added the following lines to my condor_local.config



STARTD_CRON_JOBLIST = LOGINCHECKER
STARTD_CRON_LOGINCHECKER_PREFIX = LoginChecker
STARTD_CRON_LOGINCHECKER_EXECUTABLE = c:\condor\login.vbs
STARTD_CRON_LOGINCHECKER_PERIOD = 1m
STARTD_CRON_LOGINCHECKER_MODE = Periodic
STARTD_CRON_LOGINCHECKER_RECONFIG = True


START = $(LoginCheckerUsersLoggedIn) =!= True

but I don't ever see this running in the "StartLog" file. only an error
about the syntax "=!= True"

I tried removing this to have only

START = $(LoginCheckerUsersLoggedIn)

but still get nothing and condor does not start?

Are there any other config entries that I need to make to get this
working. Currently all out Startd setting in the global config are as
default set to always run. Or are there any config changes I need to
make to enable Startd_cron?

Cheers

Aaron

Aaron,

Quick comment. I've not been following your entire thread, but you probably want

	START = LoginCheckerUsersLoggedIn =!= True

There are a few layers of processing at work here. First, the config layer (Condor params) is reading the rhs and expanding it. The config layer expands $() to the rhs of other configs, e.g.

	A = 1
	B = $(A)

And you get B = 1.

Second, the config expanded value is then turned into a ClassAd expression, start policy. The policy evaluation follows ClassAd rules, which actually don't use $() at all for expansion.

Now, if LoginCheckerusersLoggedIn is being set by STARTD_CRON, then it is an attribute in the ad where your START expression is evaluated via ClassAd rules, not via configuration. So, don't use $() for it.

Side note, I bet the Startd (StartLog) is complaining about the START policy being equal to "=!= True" because $(LoginCheckerUsersLoggedIn) is expanding on the config level to the empty string.

Best,


matt