The is no official way to pass variables from Build to Release. The only way to accomplish this is to store the values in a file (json, xml, yaml, what have you) and attach that as a Build Artifact. That way you can read the file in the release and set the variable again.
Martin Hinshelwood seems to have gotten frustrated enough by this problem and turned that functionality into an extension for Azure DevOps Pipelines.
- Variable Save Task – During your build you can save the variables to a json file stored with your other build assets
- Variable Load Task – During your Release you can load the saved variables and gain access to them.