This Terraform configuration installs Temurin on a matrix of GCE machine types and OS boot images. The tests are split into three batches to prevent hitting standard compute quotas, and are enabled using three boolean input variables:
enable_arm: Performs testing onarm_machine_typesxarm_boot_imagesenable_linux: Performs testing onx86_machine_typesxx86_boot_imagesenable_windows: Performs testing onx86_machine_typesxx86_windows_boot_images
Defaults for the above values are found in variables.tf.
The startup.sh and startup.ps1 files have region tags used to identify the boundaries of the
snippets to include in Temurin installation documentation.
-
Create a file named
private.auto.tfvarsin this folder with contents:user_email = "[gcloud account email]" project_id = "[gcp project id]" bucket = "[cloud storage bucket id for results]"
-
Invoke the tests
- To invoke the full test suite, execute
terraform init, then./test-all.sh - To invoke a single test batch, modify
inputs.auto.tfvarsto enable one batch, then executeterraform apply. To destroy these resources later, set the batch variable back to false and executeterraform applyagain.cd- (Optional) Review the input matrix for the batch you've enabled in
variables.tf.
- (Optional) Review the input matrix for the batch you've enabled in
- To invoke the full test suite, execute
-
(Parsing Results) Test results are uploaded to the specified GCS bucket at
gs://[BUCKET]/[TIMESTAMP]/[MACHINE TYPE]and full logs are available atgs://[BUCKET]/[TIMESTAMP]/logs. -
(Debugging) To SSH into a created VM instance:
- Find the VM instance name by either navigating to
https://console.cloud.google.com/compute/instances, or by looking at Terraform's console
output.
- Example Terraform output:
Where
google_compute_instance.default["n2-standard-2-centos-stream-8"]: Creation complete after 14s [id=projects/PROJECT_ID/zones/ZONE_ID/instances/n2-standard-2-centos-stream-8]n2-standard-2-centos-stream-8is the VM instance name.
- Example Terraform output:
- Invoke the
connect.shhelper script with the VM instance name:Example:./connect.sh [VM_INSTANCE_NAME]
./connect.sh n2-standard-2-centos-stream-8
- Find the VM instance name by either navigating to
https://console.cloud.google.com/compute/instances, or by looking at Terraform's console
output.
This repository is not intended for public consumption.
For source code and support for Google cloud libraries, start here: