I ended up printing information to the build log in the build step, and then parsing it in the post-build Groovy plugin.
A bit ugly workaround, I know, sometimes I miss TeamCity with it's simplicity...
Regex pattern below is obviously specific to my own build...
def matcher = manager.getLogMatcher("^Build Found: [\\w\\s-]+_(\\d+\\.\\d+\\.\\d+)_\\d{8}(\\.\\d+)?\$")
if (matcher?.matches()) {
def Version = matcher.group(1)
manager.addShortText(Version, "grey", "white", "0px", "white")
manager.createSummary("fingerprint.gif").appendText("Version: " + Version, false)
} else {
manager.listener.logger.println("ERROR: Version number is not found in the build log")
manager.buildFailure()
}