How do I access a custom lock value as a build parameter?

I am trying to use a Shared Resource, myLock, with custom values (a list of names), but I do not see how to expose the lock value in my build steps.

My build steps lock on the resource using any available value. I expect this means that whichever value was chosen for locking becomes available to the build as a parameter. From the docs, "a custom value (e.g. a URL) is passed to the build that has acquired a lock on such a resource."

I tried using system.locks.writeLock.myLock, but TeamCity would not assign any agents because an implicit parameter (the writeLock) was not defined.
I tried defining the build parameter system.locks.writeLock.myLock, but I was required to give it a value.
I tried giving it an empty string as a value - now the build runs, but I do not see it being given the acutally name that should have been assigned from the list of custom values in the Shared Resource. In a command line build step where I echo the value, the value is the empty string that I assigned (or whatever value I assigned when I overrode the parameter as another test).

This issue looks like it may apply. Is this something that should work in TC 8.0.4? Should I be able to get the Shared Resource value that was locked? How can I do this?

thank you in advance for any help you might provide

1 comment
Comment actions Permalink

The answer is teamcity.locks.readLock.myLock
The documentation should be updated to reflect this.


Please sign in to leave a comment.