I would like to set a variable of some description in one step of by build configuration that I can use in another step.
So in step 1 I set the variable and in step 2 i read the variable
Is this possible?
To do it within the same build configuration you would need to use service messages
To share between build configurations within the same project you can do it via Project parameters. Currently as of TeamCity 8.1, to set it in the build you would need to add a step to run curl.exe utility and set parameter value via TeamCity REST API.
C:\Path\To\curl.exe -v --request PUT -d "YourParamValue" --Header "Content-Type: text/plain" http://YourUser:YourPassword@YourTeamcity.server.local:port/httpAuth/app/rest/projects/YourProjectName/parameters/YourParameter
Related: Teamcity, set configuration parameter for next build
TeamCity, passing an id generated in one build step to a later build step