From f2f652953344d6ccfb8eb44eba966cc8dae2cc5e Mon Sep 17 00:00:00 2001 From: Trilochan Pandey Date: Fri, 3 Oct 2025 21:05:27 +0530 Subject: [PATCH 1/3] chore:add delay between SCC-WP and monitoring, and Handle reboot properly --- modules/powervs-vpc-landing-zone/README.md | 1 + modules/powervs-vpc-landing-zone/monitoring.tf | 5 ++++- ...playbook-configure-monitoring-instance.yml.tftpl | 13 ++++++++----- modules/powervs-vpc-landing-zone/versions.tf | 4 ++++ 4 files changed, 17 insertions(+), 6 deletions(-) diff --git a/modules/powervs-vpc-landing-zone/README.md b/modules/powervs-vpc-landing-zone/README.md index b89cb770..9593b477 100644 --- a/modules/powervs-vpc-landing-zone/README.md +++ b/modules/powervs-vpc-landing-zone/README.md @@ -102,6 +102,7 @@ Creates VPC Landing Zone | Performs VPC VSI OS Config | Creates PowerVS Infrastr |------|---------| | [terraform](#requirement\_terraform) | >= 1.9 | | [ibm](#requirement\_ibm) | >=1.65.0 | +| [time](#requirement\_time) | >= 0.9.1 | ### Modules diff --git a/modules/powervs-vpc-landing-zone/monitoring.tf b/modules/powervs-vpc-landing-zone/monitoring.tf index 2afe6ae5..702d3529 100644 --- a/modules/powervs-vpc-landing-zone/monitoring.tf +++ b/modules/powervs-vpc-landing-zone/monitoring.tf @@ -22,6 +22,9 @@ locals { monitoring_host_ip = local.monitoring_vsi_ip } } +resource "time_sleep" "wait_for_2min" { + create_duration = "120s" +} ##################################################### # Configure monitoring VSI @@ -31,7 +34,7 @@ locals { module "configure_monitoring_host" { source = "./submodules/ansible" - depends_on = [module.configure_network_services] + depends_on = [module.configure_network_services, time_sleep.wait_for_2min] count = var.enable_monitoring ? 1 : 0 bastion_host_ip = local.access_host_or_ip diff --git a/modules/powervs-vpc-landing-zone/submodules/ansible/templates-ansible/configure-monitoring-instance/playbook-configure-monitoring-instance.yml.tftpl b/modules/powervs-vpc-landing-zone/submodules/ansible/templates-ansible/configure-monitoring-instance/playbook-configure-monitoring-instance.yml.tftpl index a42a78b1..aaf7595d 100644 --- a/modules/powervs-vpc-landing-zone/submodules/ansible/templates-ansible/configure-monitoring-instance/playbook-configure-monitoring-instance.yml.tftpl +++ b/modules/powervs-vpc-landing-zone/submodules/ansible/templates-ansible/configure-monitoring-instance/playbook-configure-monitoring-instance.yml.tftpl @@ -20,8 +20,11 @@ register: update_result when: "'SLES' in ansible_distribution" - - name: Reboot system with delay - shell: "(sleep 2 && reboot) &" - async: 1 - poll: 0 - when: update_result is defined and update_result.changed + - name: Reboot system (SLES) + ansible.builtin.reboot: + msg: "Reboot initiated by Ansible" + connect_timeout: 5 # SSH connect timeout + reboot_timeout: 600 # wait up to 10 min for the node to come back + pre_reboot_delay: 2 # wait 2s before sending reboot + post_reboot_delay: 30 # wait 30s after system comes back before marking success + when: update_result is defined and update_result.changed \ No newline at end of file diff --git a/modules/powervs-vpc-landing-zone/versions.tf b/modules/powervs-vpc-landing-zone/versions.tf index e5a85e55..b8f167ab 100644 --- a/modules/powervs-vpc-landing-zone/versions.tf +++ b/modules/powervs-vpc-landing-zone/versions.tf @@ -10,5 +10,9 @@ terraform { version = ">=1.65.0" configuration_aliases = [ibm.ibm-is, ibm.ibm-pi, ibm.ibm-sm] } + time = { + source = "hashicorp/time" + version = ">= 0.9.1" + } } } From 524ef68343cb2ece384920ae39f485455d9187f0 Mon Sep 17 00:00:00 2001 From: Trilochan Pandey Date: Fri, 3 Oct 2025 21:12:06 +0530 Subject: [PATCH 2/3] chore:add delay between SCC-WP and monitoring, and Handle reboot properly(readme update) --- modules/powervs-vpc-landing-zone/README.md | 1 + .../playbook-configure-monitoring-instance.yml.tftpl | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/powervs-vpc-landing-zone/README.md b/modules/powervs-vpc-landing-zone/README.md index 9593b477..7df885cd 100644 --- a/modules/powervs-vpc-landing-zone/README.md +++ b/modules/powervs-vpc-landing-zone/README.md @@ -137,6 +137,7 @@ Creates VPC Landing Zone | Performs VPC VSI OS Config | Creates PowerVS Infrastr | [ibm_resource_instance.ibm_dns_instance](https://registry.terraform.io/providers/IBM-Cloud/ibm/latest/docs/resources/resource_instance) | resource | | [ibm_resource_instance.monitoring_instance](https://registry.terraform.io/providers/IBM-Cloud/ibm/latest/docs/resources/resource_instance) | resource | | [ibm_resource_instance.secrets_manager](https://registry.terraform.io/providers/IBM-Cloud/ibm/latest/docs/resources/resource_instance) | resource | +| [time_sleep.wait_for_2min](https://registry.terraform.io/providers/hashicorp/time/latest/docs/resources/sleep) | resource | ### Inputs diff --git a/modules/powervs-vpc-landing-zone/submodules/ansible/templates-ansible/configure-monitoring-instance/playbook-configure-monitoring-instance.yml.tftpl b/modules/powervs-vpc-landing-zone/submodules/ansible/templates-ansible/configure-monitoring-instance/playbook-configure-monitoring-instance.yml.tftpl index aaf7595d..78404dfb 100644 --- a/modules/powervs-vpc-landing-zone/submodules/ansible/templates-ansible/configure-monitoring-instance/playbook-configure-monitoring-instance.yml.tftpl +++ b/modules/powervs-vpc-landing-zone/submodules/ansible/templates-ansible/configure-monitoring-instance/playbook-configure-monitoring-instance.yml.tftpl @@ -27,4 +27,4 @@ reboot_timeout: 600 # wait up to 10 min for the node to come back pre_reboot_delay: 2 # wait 2s before sending reboot post_reboot_delay: 30 # wait 30s after system comes back before marking success - when: update_result is defined and update_result.changed \ No newline at end of file + when: update_result is defined and update_result.changed From f4e569bd0b202c0b713cfcb9d0ef3330ad9573a6 Mon Sep 17 00:00:00 2001 From: Trilochan Pandey Date: Mon, 6 Oct 2025 14:19:03 +0530 Subject: [PATCH 3/3] chore: remove time_sleep --- modules/powervs-vpc-landing-zone/README.md | 2 -- modules/powervs-vpc-landing-zone/monitoring.tf | 5 +---- modules/powervs-vpc-landing-zone/versions.tf | 4 ---- 3 files changed, 1 insertion(+), 10 deletions(-) diff --git a/modules/powervs-vpc-landing-zone/README.md b/modules/powervs-vpc-landing-zone/README.md index 7df885cd..b89cb770 100644 --- a/modules/powervs-vpc-landing-zone/README.md +++ b/modules/powervs-vpc-landing-zone/README.md @@ -102,7 +102,6 @@ Creates VPC Landing Zone | Performs VPC VSI OS Config | Creates PowerVS Infrastr |------|---------| | [terraform](#requirement\_terraform) | >= 1.9 | | [ibm](#requirement\_ibm) | >=1.65.0 | -| [time](#requirement\_time) | >= 0.9.1 | ### Modules @@ -137,7 +136,6 @@ Creates VPC Landing Zone | Performs VPC VSI OS Config | Creates PowerVS Infrastr | [ibm_resource_instance.ibm_dns_instance](https://registry.terraform.io/providers/IBM-Cloud/ibm/latest/docs/resources/resource_instance) | resource | | [ibm_resource_instance.monitoring_instance](https://registry.terraform.io/providers/IBM-Cloud/ibm/latest/docs/resources/resource_instance) | resource | | [ibm_resource_instance.secrets_manager](https://registry.terraform.io/providers/IBM-Cloud/ibm/latest/docs/resources/resource_instance) | resource | -| [time_sleep.wait_for_2min](https://registry.terraform.io/providers/hashicorp/time/latest/docs/resources/sleep) | resource | ### Inputs diff --git a/modules/powervs-vpc-landing-zone/monitoring.tf b/modules/powervs-vpc-landing-zone/monitoring.tf index 702d3529..2afe6ae5 100644 --- a/modules/powervs-vpc-landing-zone/monitoring.tf +++ b/modules/powervs-vpc-landing-zone/monitoring.tf @@ -22,9 +22,6 @@ locals { monitoring_host_ip = local.monitoring_vsi_ip } } -resource "time_sleep" "wait_for_2min" { - create_duration = "120s" -} ##################################################### # Configure monitoring VSI @@ -34,7 +31,7 @@ resource "time_sleep" "wait_for_2min" { module "configure_monitoring_host" { source = "./submodules/ansible" - depends_on = [module.configure_network_services, time_sleep.wait_for_2min] + depends_on = [module.configure_network_services] count = var.enable_monitoring ? 1 : 0 bastion_host_ip = local.access_host_or_ip diff --git a/modules/powervs-vpc-landing-zone/versions.tf b/modules/powervs-vpc-landing-zone/versions.tf index b8f167ab..e5a85e55 100644 --- a/modules/powervs-vpc-landing-zone/versions.tf +++ b/modules/powervs-vpc-landing-zone/versions.tf @@ -10,9 +10,5 @@ terraform { version = ">=1.65.0" configuration_aliases = [ibm.ibm-is, ibm.ibm-pi, ibm.ibm-sm] } - time = { - source = "hashicorp/time" - version = ">= 0.9.1" - } } }