Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

modules/compute-vm end-to-end tests and fixes #2819

Merged
merged 1 commit into from
Jan 16, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
207 changes: 123 additions & 84 deletions modules/compute-vm/README.md

Large diffs are not rendered by default.

8 changes: 4 additions & 4 deletions tests/modules/compute_vm/examples/alias-ips.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,15 +18,15 @@ values:
network_interface:
- access_config: []
alias_ip_range:
- ip_cidr_range: 10.16.0.10/32
subnetwork_range_name: alias1
- ip_cidr_range: 100.71.1.123/32
subnetwork_range_name: services
ipv6_access_config: []
network: projects/xxx/global/networks/aaa
nic_type: null
queue_count: null
subnetwork: subnet_self_link
project: my-project
zone: europe-west1-b
project: project-id
zone: europe-west8-b

counts:
google_compute_instance: 1
Expand Down
4 changes: 2 additions & 2 deletions tests/modules/compute_vm/examples/confidential.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,13 @@ values:
- enable_confidential_compute: true
name_prefix: confidential-template-
project: project-id
region: europe-west1
region: europe-west8
module.vm-confidential-example.google_compute_instance.default[0]:
confidential_instance_config:
- enable_confidential_compute: true
name: confidential-vm
project: project-id
zone: europe-west1-b
zone: europe-west8-b

counts:
google_compute_instance: 1
Expand Down
2 changes: 1 addition & 1 deletion tests/modules/compute_vm/examples/defaults.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ values:
shielded_instance_config: []
tags: null
timeouts: null
zone: europe-west1-b
zone: europe-west8-b

counts:
google_compute_instance: 1
Expand Down
10 changes: 5 additions & 5 deletions tests/modules/compute_vm/examples/disk-options.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ values:
size: 20
snapshot: snapshot-2
type: pd-ssd
zone: europe-west1-b
zone: europe-west8-b
module.vm-disk-options-example.google_compute_instance.default[0]:
attached_disk:
- device_name: data2
Expand All @@ -41,14 +41,14 @@ values:
description: Managed by the compute-vm Terraform module.
name: test
project: project-id
zone: europe-west1-b
zone: europe-west8-b
module.vm-disk-options-example.google_compute_region_disk.disks["data1"]:
name: test-data1
project: project-id
region: europe-west1
region: europe-west8
replica_zones:
- europe-west1-b
- europe-west1-c
- europe-west8-b
- europe-west8-c
size: 10
type: pd-balanced

Expand Down
4 changes: 2 additions & 2 deletions tests/modules/compute_vm/examples/group.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,9 @@ values:
name: ilb-test
named_port: []
network: projects/xxx/global/networks/aaa
project: my-project
project: project-id
timeouts: null
zone: europe-west1-b
zone: europe-west8-b

counts:
google_compute_instance: 1
Expand Down
6 changes: 3 additions & 3 deletions tests/modules/compute_vm/examples/gvnic.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ values:
- type: UEFI_COMPATIBLE
- type: VIRTIO_SCSI_MULTIQUEUE
name: my-image
project: my-project
project: project-id
source_image: https://www.googleapis.com/compute/v1/projects/cos-cloud/global/images/cos-89-16108-534-18
module.vm-with-gvnic.google_compute_instance.default[0]:
name: test
Expand All @@ -32,8 +32,8 @@ values:
nic_type: GVNIC
queue_count: null
subnetwork: subnet_self_link
project: my-project
zone: europe-west1-b
project: project-id
zone: europe-west8-b

counts:
google_compute_image: 1
Expand Down
5 changes: 2 additions & 3 deletions tests/modules/compute_vm/examples/iam.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,10 @@ values:
condition: []
instance_name: webserver
members:
- group:admin@example.com
- group:webserver@example.com
- group:organization-admins@example.org
project: project-id
role: roles/compute.instanceAdmin
zone: europe-west1-b
zone: europe-west8-b

counts:
google_compute_instance: 1
Expand Down
4 changes: 2 additions & 2 deletions tests/modules/compute_vm/examples/independent-boot-disk.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ values:
source_snapshot_encryption_key: []
timeouts: null
type: pd-balanced
zone: europe-west1-b
zone: europe-west8-b
module.simple-vm-example.google_compute_instance.default[0]:
advanced_machine_features: []
allow_stopping_for_update: true
Expand Down Expand Up @@ -75,7 +75,7 @@ values:
- https://www.googleapis.com/auth/userinfo.email
shielded_instance_config: []
tags: null
zone: europe-west1-b
zone: europe-west8-b
module.simple-vm-example.google_service_account.service_account[0]:
account_id: tf-vm-test
display_name: Terraform VM test.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,10 @@
# limitations under the License.

values:
module.sole-tenancy.google_compute_instance.default[0]:
boot_disk:
- initialize_params:
- image: projects/cos-cloud/global/images/family/cos-stable
module.instance.google_compute_resource_policy.schedule[0]:
description: Schedule policy for schedule-test.
instance_schedule_policy:
Expand All @@ -24,7 +28,7 @@ values:
vm_stop_schedule:
- schedule: 0 17 * * *
name: schedule-test
region: europe-west1
region: europe-west8

counts:
google_compute_instance: 1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
values:
module.instance.google_compute_instance.default[0]:
resource_policies:
- projects/my-project/regions/europe-west1/resourcePolicies/test
- projects/project-id/regions/europe-west8/resourcePolicies/test

counts:
google_compute_instance: 1
8 changes: 4 additions & 4 deletions tests/modules/compute_vm/examples/ips.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ values:
nic_type: null
queue_count: null
subnetwork: subnet_self_link
project: my-project
zone: europe-west1-b
project: project-id
zone: europe-west8-b
module.vm-internal-ip.google_compute_instance.default[0]:
name: vm-internal-ip
network_interface:
Expand All @@ -38,8 +38,8 @@ values:
nic_type: null
queue_count: null
subnetwork: subnet_self_link
project: my-project
zone: europe-west1-b
project: project-id
zone: europe-west8-b

counts:
google_compute_instance: 2
2 changes: 1 addition & 1 deletion tests/modules/compute_vm/examples/metadata.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ values:
apt-get install -y nginx
name: nginx-server
project: project-id
zone: europe-west1-b
zone: europe-west8-b
labels:
env: dev
system: crm
Expand Down
8 changes: 4 additions & 4 deletions tests/modules/compute_vm/examples/sa-custom.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -62,18 +62,18 @@ values:
provisioning_model: STANDARD
scratch_disk: []
service_account:
- email: sa-0@myproj.iam.gserviceaccount.com
- email: fixture-service-account@project-id.iam.gserviceaccount.com
scopes:
- https://www.googleapis.com/auth/cloud-platform
- https://www.googleapis.com/auth/userinfo.email
shielded_instance_config: []
tags: null
timeouts: null
zone: europe-west1-b
zone: europe-west8-b

counts:
google_compute_instance: 1
modules: 1
resources: 1
modules: 2
resources: 2

outputs: {}
2 changes: 1 addition & 1 deletion tests/modules/compute_vm/examples/sa-default.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ values:
shielded_instance_config: []
tags: null
timeouts: null
zone: europe-west1-b
zone: europe-west8-b

counts:
google_compute_instance: 1
Expand Down
2 changes: 1 addition & 1 deletion tests/modules/compute_vm/examples/sa-managed.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ values:
shielded_instance_config: []
tags: null
timeouts: null
zone: europe-west1-b
zone: europe-west8-b
module.vm-managed-sa-example2.google_service_account.service_account[0]:
account_id: tf-vm-test2
description: null
Expand Down
2 changes: 1 addition & 1 deletion tests/modules/compute_vm/examples/sa-none.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ values:
shielded_instance_config: []
tags: null
timeouts: null
zone: europe-west1-b
zone: europe-west8-b

counts:
google_compute_instance: 1
Expand Down
41 changes: 41 additions & 0 deletions tests/modules/compute_vm/examples/snapshot-schedule-create.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,47 @@
# See the License for the specific language governing permissions and
# limitations under the License.

values:
module.instance.google_compute_disk.disks["disk-1"]:
name: schedule-test-disk-1
project: project-id
size: 10
type: pd-balanced
zone: europe-west8-b
module.instance.google_compute_disk_resource_policy_attachment.attached["disk-1-boot"]:
disk: schedule-test-disk-1
name: schedule-test-boot
project: project-id
timeouts: null
zone: europe-west8-b
module.instance.google_compute_disk_resource_policy_attachment.boot["boot"]:
disk: schedule-test
name: schedule-test-boot
project: project-id
zone: europe-west8-b
module.instance.google_compute_instance.default[0]:
attached_disk:
- device_name: disk-1
disk_encryption_key_raw: null
mode: READ_WRITE
source: schedule-test-disk-1
boot_disk:
- initialize_params:
- image: projects/cos-cloud/global/images/family/cos-stable
module.instance.google_compute_resource_policy.snapshot["boot"]:
description: Schedule policy boot for schedule-test.
name: schedule-test-boot
project: project-id
region: europe-west8
snapshot_schedule_policy:
- schedule:
- daily_schedule:
- days_in_cycle: 1
start_time: 03:00
hourly_schedule: []
weekly_schedule: []
snapshot_properties: []

counts:
google_compute_disk: 1
google_compute_disk_resource_policy_attachment: 2
Expand Down
4 changes: 2 additions & 2 deletions tests/modules/compute_vm/examples/sole-tenancy.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ values:
enable_display: false
hostname: null
labels: null
machine_type: f1-micro
machine_type: n1-standard-1
metadata: null
metadata_startup_script: null
name: test
Expand Down Expand Up @@ -79,7 +79,7 @@ values:
shielded_instance_config: []
tags: null
timeouts: null
zone: europe-west1-b
zone: europe-west8-b

counts:
google_compute_instance: 1
Expand Down
2 changes: 1 addition & 1 deletion tests/modules/compute_vm/examples/spot.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ values:
on_host_maintenance: TERMINATE
preemptible: true
provisioning_model: SPOT
zone: europe-west1-b
zone: europe-west8-b

counts:
google_compute_instance: 1
2 changes: 1 addition & 1 deletion tests/modules/compute_vm/examples/tag-bindings.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ values:
shielded_instance_config: []
tags: null
timeouts: null
zone: europe-west1-b
zone: europe-west8-b

counts:
google_compute_instance: 1
Expand Down
6 changes: 3 additions & 3 deletions tests/modules/compute_vm/examples/template.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -52,10 +52,10 @@ values:
nic_type: null
queue_count: null
subnetwork: subnet_self_link
project: my-project
region: europe-west1
project: project-id
region: europe-west8
service_account:
- email: vm-default@my-project.iam.gserviceaccount.com
- email: fixture-service-account@project-id.iam.gserviceaccount.com
scopes:
- https://www.googleapis.com/auth/cloud-platform
- https://www.googleapis.com/auth/userinfo.email
Expand Down
Loading