GitHub Self-Hosted Agent Setup¶
We are using GitHub Self-Hosted Agents for Windows and macOS testing. The build machines and agents must be set up before use.
Windows Agent Setup¶
- Create the user “testbot” on the machine. Use the password for
ddevtestbot@gmail.com
, available in 1Password. - In admin PowerShell,
Set-ExecutionPolicy -Scope "CurrentUser" -ExecutionPolicy "RemoteSigned"
. - In admin Powershell, download and run windows_buildkite_start.ps1 with
curl <url> -O windows_buildkite_start.ps1
. - After restart, in administrative Git Bash window,
Rename-Computer <testbot-win10(home|pro)-<description>-1
. - Now download and run windows_github_agent_setup.sh.
- Launch Docker. It may require you to take further actions.
- Log into Chrome with the user
ddevtestbot
and enable Chrome Remote Desktop. - Enable
gd
,fileinfo
, andcurl
extensions in/c/tools/php*/php.ini
. - If a laptop, set the “lid closing” setting in settings to do nothing.
- Set the “Sleep after time” setting in settings to never.
- Install
winaero tweaker
and “Enable user autologin checkbox”. Set up the machine to automatically log in on boot. Then runnetplwiz
, provide the password for the main user, uncheck the “require a password to log in”. - Add the path
C:\Program Files\git\bin
to the very front of the system environment variables. Otherwise Windows will try to use its ownbash.exe
or PowerShell. - Install the GitHub self-hosted runner software using the “Add New” instructions on https://github.com/organizations/ddev/settings/actions. When it asks if you want it as a service: yes, you do.
- Run
.buildkite/sanetestbot.sh
to check your work. - Reboot the machine and do a test run. (On Windows, the machine name only takes effect on reboot.)