Skip to end of banner
Go to start of banner

How to setup WoA machine for python buildbot

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

This page describes how to setup WoA machine to run python buildbot.

Credentials

Login/password is allocated by python buildbot administrators.

You can contact the three maintainers (together) for python buildbot server:

Register worker

To be able to connect worker, even with a password allocated, you need to add configuration on this project: https://github.com/python/buildmaster-config

Examples:

Install Visual Studio Build Tools

This is the command line portion of visual studio, download it from https://visualstudio.microsoft.com/downloads/ . (“Tools for Visual Studio 2019” → “Build Tools for Visual Studio 2019”)

The following components need to be selected from “Individual Components” during the installation

  • MSVC v142 - VS 2019 C++ x64/x86 build tools (latest)

  • MSVC v142 - VS 2019 C++ ARM64 build tools (latest)

  • C++ ATL for latest v142 build tools (ARM64)

  • Windows 10 SDK

    • Versions 18362 and 19041 are known to work

See How to setup LLVM buildbots for Windows on Arm also if you run into any issues

Install Python

Install python 3.9.x ( 32-bit or x64, but not ARM64) from the python release page. Earlier or later versions of python might also work without issues.

Note: If Python is not added by default to environment variable PATH, please go to “System Properties” -> “Environment Variables” and add the path

Deactivate Windows Firewall

To run python tests, the compiled python must be able to access network. Either you can run it once manually (and add exception when asked), or simply deactivate windows firewall.

Install and setup Buildbot

Buildbot can be installed in any location but it is preferable to install in C:\ to avoid hitting the maximum path limit on windows. Please run following commands to install buildbot-worker

:: Create Directory for buildbot installation
mkdir C:\Workspace
cd C:\Workspace

:: Create virtual venv
python -m venv venv

:: Activate venv
.\venv\Scripts\activate

:: Install buildbot-worker in virtual env
python -m pip install pypiwin32 buildbot-worker

Now create a worker using the following command

buildbot-worker create-worker buildarea buildbot.python.org:9020 linaro-win-arm64 <PASSWORD> 

Edit following files to add admin email address and host information

C:\Workspace\buildarea\info\admin

Linaro Windows on Arm Support <woa-support@op-lists.linaro.org>

C:\Workspace\buildarea\info\host

Microsoft Surface X Pro; RAM 16GB
 
OS: Windows 10 Pro (ARM64)

Now create a batch file to run as a service

C:\Workspace\buildbot.bat

:: Initialise ARM64 environment

call "C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Auxiliary\Build\vcvarsx86_arm64.bat"

:: Add debug runtime DLL to path

set PATH=C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\arm64\ucrt\;%PATH%

set PATH=C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Redist\MSVC\14.29.30133\onecore\debug_nonredist\arm64\Microsoft.VC142.DebugCRT\;%PATH%

:: Activate virtual environment

call "C:\Workspace\buildarea\venv\Scripts\activate"

cd C:\Workspace

:: Start buildbot-worker

echo Starting buildbot-workder

buildbot-worker start buildarea

:: Repeat buildbot-worker restart in a loop in case if it ever terminates due to an error

:start

buildbot-worker restart buildarea

goto :start


You can automate service launch by following those instructions: Service management . You need a user which can execute winget.exe (needed in a python test). Local SYSTEM account can’t.

  • No labels

0 Comments

You are not logged in. Any changes you make will be marked as anonymous. You may want to Log In if you already have an account.