build/env/windows
Roland Shoemaker ac62432324 env/darwin,env/windows: add platform testing root
Adds notes to env/darwin/setup-notes.md on how to install the
crypto/x509 testing root, and adds a stanza to env/windows/startup.ps1
to do the same thing.

This change assumes that the platform root has been added to the
go-builder-data GCS bucket.

Updates golang/go#52108

Change-Id: Ieb4d6461c4ee96ddc6c00c18213e5447ba9ab273
Reviewed-on: https://go-review.googlesource.com/c/build/+/503836
TryBot-Bypass: Dmitri Shuralyov <dmitshur@golang.org>
Reviewed-by: Heschi Kreinick <heschi@google.com>
2023-06-30 15:20:42 +00:00
..
.gitignore env/windows: automate buildlet image creation 2017-04-27 23:11:12 +00:00
README.md env/windows: update VM images to latest non-deprecated versions 2017-10-25 01:46:10 +00:00
build.bash env/windows: more network selection fixes 2022-05-31 12:08:04 +00:00
make.bash env/windows: fix buglet in windows versions 2022-06-03 20:51:57 +00:00
rdp.bash env/windows: enable telnet access 2017-07-27 01:46:11 +00:00
ssh.bash env/windows: add ssh to builders instead of telnet 2017-07-30 02:47:15 +00:00
startup.ps1 env/darwin,env/windows: add platform testing root 2023-06-30 15:20:42 +00:00
test_buildlet.bash env/windows: more fixes to test_buildlet.bash 2022-06-23 12:48:58 +00:00

README.md

Windows buildlet images

Windows images are built by creating and configuring VMs in GCP then capturing the image to the GCP Project.

Prerequisite: Access internal network

The scripts assume the internal GCP network is accessible. To do this, create a linux VM in the project and SSH into the machine or use a VPN like sshuttle.

Examples/Tools

Build and test a single base image

Builds a buildlet from the BASE_IMAGE and sets it up with and An image is captured and then a new VM is created from that image and validated with test_buildlet.bash.

export PROJECT_ID=YOUR_GCP_PROJECT
export BASE_IMAGE=windows-server-2016-dc-core-v20171010
export IMAGE_PROJECT=windows-cloud

./build.bash

Build all targets

PROJECT_ID=YOUR_GCP_PROJECT ./make.bash

Build/test golang

instance_name=golang-buildlet-test
external_ip=$(gcloud compute instances describe golang-buildlet-test --project=${PROJECT_ID} --zone=${ZONE} --format="value(networkInterfaces[0].accessConfigs[0].natIP)")
./test_buildlet.bash $external_ip

Troubleshoot via remote access

./rdp.bash <instance_name>
./ssh.bash <instance_name>