I set the worker properties with the following:
self._properties['env'] = {'APPVER': '6.1', 'CL': '/AI C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319', 'CommandPromptType': 'Native', 'Configuration': 'Release', 'CURRENT_CPU': 'x64', 'FrameworkVersion': 'v4.0.30319', 'INCLUDE': ['C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC\\INCLUDE', 'C:\\Program Files\\Microsoft SDKs\\Windows\\v7.1\\INCLUDE', 'C:\\Program Files\\Microsoft SDKs\\Windows\\v7.1\\INCLUDE\\gl'], 'LIB': ['C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC\\Lib\\amd64', 'C:\\Program Files\\Microsoft SDKs\\Windows\\v7.1\\Lib\\X64'], 'LIBPATH': ['C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319', 'C:\\Windows\\Microsoft.NET\\Framework\\v4.0.30319', 'C:\\Windows\\Microsoft.NET\\Framework64\\v3.5', 'C:\\Windows\\Microsoft.NET\\Framework\\v3.5', 'C:\\Program Files (x80\\VC\\Lib\\amd64'], 'PATH': ['C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319', 'C:\\Windows\\Microsoft.NET\\Framework\\v4.0.30319', 'C:\\Windows\\Microsoft.NET\\Framework64\\v3.5', 'C:\\Windows\\Microsoft.NET\\Framework\\v3.5', 'C:\\Program Files (x86)\\ommon7\\IDE', 'C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\Common7\\Tools', 'C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC\\Bin\\amd64', 'C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC\\Bin\\VCPacoft SDKs\\Windows\\v7.1\\Bin\\NETFX 4.0 Tools\\x64', 'C:\\Program Files\\Microsoft SDKs\\Windows\\v7.1\\Bin\\x64', 'C:\\Program Files\\Microsoft SDKs\\Windows\\v7.1\\Bin', 'C:\\python27', 'C:\\python27\\Scripts', 'C:\\python34', 'C:\\python34\\Scripts', 'C:\\cygwin64\\bin', '${PATH}'], 'PlatformToolset': 'Windows7.1SDK', 'sdkdir': 'C:\\Program Files\\Microsoft SDKs\\Windows\\v7.1\\', 'TARGET_CPU': 'x64', 'TARGET_PLATFORM': 'WIN7', 'ToolsVersion': '4.0', 'WindowsSDKDir': 'C:\\Program Files\\Microsoft SDKs\\Windows\\v7.1\\', 'WindowsSDKVersionOverride': 'v7.1'} It is a bit of a pain getting it done initially but then the environment is well controlled under the execution of the factory build steps. I have found this to be the best way for me. It is much better than trying to run vcvarsall.bat at every step. ________________________________ From: users <users-boun...@buildbot.net> on behalf of Greg Bullock <g...@nwra.com> Sent: Wednesday, May 8, 2019 8:55 AM To: users@buildbot.net Subject: Re: [us...@bb.net] Question on passing state between steps I faced a similar problem. To work around it, I have a batch file (see below) to run consecutively all the steps that need to share the environment. It's not perfect. In particular, I've had trouble getting useful stdout/stderr logs and error code back to the builder when one of the steps fails. I'd appreciate your sharing back any improvements you make on this. echo off setlocal set THREAD_CFG=%~1 if /i "%~1"=="" set THREAD_CFG=single set LIB_LINKING=%~2 if /i "%~2"=="" set LIB_LINKING=shared set CMAKE_BUILD_TYPE=%~3 if /i "%~3"=="" set CMAKE_BUILD_TYPE=Release set PROJ_FOLDER=%~4 if /i "%~4"=="" set PROJ_FOLDER=Main_Project :: For the log, show the command line we're about to run set a_cmd=cd ..\build_out echo %a_cmd% %a_cmd% :: For the log, show the command line we're about to run set a_cmd=set path=C:\Program Files (x86)\CMake\bin;G:\TDM-GCC-64\bin;%path% :: set a_cmd=set path=C:\Program Files (x86)\CMake\bin;%path% echo %a_cmd% %a_cmd% echo %path% :: set path=G:\TDM-GCC-64\bin;%path% -- The TDM builds cause a runtime error. Disable for now. :: set path=G:\mingw-w64\x86_64-5.4.0-posix-seh-rt_v5-rev0\mingw64\bin;%path% -- Should not be necessary, as it's on the buildbot BuilderConfig PATH environment variable. :: For the log, show the command line we're about to run set a_cmd=cmake -G "MinGW Makefiles" -DCMAKE_Threading="%THREAD_CFG%" -DLIB_LINKING="%LIB_LINKING%" -DCMAKE_BUILD_TYPE="%CMAKE_BUILD_TYPE%" ..\build\Projects\cmake\%PROJ_FOLDER% echo %a_cmd% %a_cmd% :: For the log, show the command line we're about to run set a_cmd=mingw32-make echo %a_cmd% %a_cmd% endlocal On 5/7/2019 1:22 PM, Trung Tran wrote: I current doing a simple build steps that include "Setup enviroments" (running vcvarsall.bat") "Run Cmake" "Run MsBuild" I notice that all steps are not sharing any state between them. This is the issue for my setup environment steps because I need that for both sub sequence step. What is the right way to do this? _______________________________________________ users mailing list users@buildbot.net<mailto:users@buildbot.net> https://lists.buildbot.net/mailman/listinfo/users -- Greg Bullock NorthWest Research Associates 301 Webster St. Monterey, CA 93940 (831) 582-4907 g...@nwra.com<mailto:g...@nwra.com>
_______________________________________________ users mailing list users@buildbot.net https://lists.buildbot.net/mailman/listinfo/users