Can you define an _expression_ that queries a different machines attributes?
Not from within a Job or Machine's ad. During matchmaking you only have access to the machine's ad and the job's ad. You could write a Startd cron that queries your filer for that value and imports it in to the machine's ad.
For example:
The main file server publishes an attribute PercentUtilization.Partition1
Can another machine query the attribute for instance FileServer.PercentUtilization.Partion1? Or would I need to use an external script to push the attribute into each machines local ClassAd?
You'd need to pull it in to the startd's ad on the machine where you're trying to decide if a job should run or not using a startd cron.
But: seriously cool idea to be able to reference other machine's ads. Especially if the other ad is for something like a common resource, a filer in your case. Something for Miron and his crew to consider I suppose...
- Ian