This is an automated email from the ASF dual-hosted git repository.

harikrishna pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/cloudstack.git


The following commit(s) were added to refs/heads/main by this push:
     new 5da7d2d01ef scripts: fix external provision to use correct power state 
& hyperv powersync (#11504)
5da7d2d01ef is described below

commit 5da7d2d01ef49ff87ba0837f3002eb0696a2109f
Author: Rohit Yadav <[email protected]>
AuthorDate: Fri Aug 29 12:09:23 2025 +0530

    scripts: fix external provision to use correct power state & hyperv 
powersync (#11504)
    
    * scripts: fix external provision to use correct power state
    
    The valid states are poweron and poweroff.
    
    Signed-off-by: Rohit Yadav <[email protected]>
    
    * strip string while processing powerstate for HyperV
    
    Signed-off-by: Rohit Yadav <[email protected]>
    
    * ignore warning that spills over to exten output string
    
    Signed-off-by: Rohit Yadav <[email protected]>
    
    ---------
    
    Signed-off-by: Rohit Yadav <[email protected]>
---
 extensions/HyperV/hyperv.py                               | 10 ++++++----
 scripts/vm/hypervisor/external/provisioner/provisioner.sh |  2 +-
 2 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/extensions/HyperV/hyperv.py b/extensions/HyperV/hyperv.py
index 83109ebb03a..8ae2c7ff797 100755
--- a/extensions/HyperV/hyperv.py
+++ b/extensions/HyperV/hyperv.py
@@ -16,6 +16,9 @@
 # specific language governing permissions and limitations
 # under the License.
 
+import warnings
+warnings.filterwarnings('ignore')
+
 import json
 import sys
 import winrm
@@ -200,12 +203,11 @@ class HyperVManager:
     def status(self):
         command = f'(Get-VM -Name "{self.data["vmname"]}").State'
         state = self.run_ps(command)
-        if state.lower() == "running":
+        power_state = "unknown"
+        if state.strip().lower() == "running":
             power_state = "poweron"
-        elif state.lower() == "off":
+        elif state.strip().lower() == "off":
             power_state = "poweroff"
-        else:
-            power_state = "unknown"
         succeed({"status": "success", "power_state": power_state})
 
     def delete(self):
diff --git a/scripts/vm/hypervisor/external/provisioner/provisioner.sh 
b/scripts/vm/hypervisor/external/provisioner/provisioner.sh
index 6aa96610ef4..63d07653c0f 100755
--- a/scripts/vm/hypervisor/external/provisioner/provisioner.sh
+++ b/scripts/vm/hypervisor/external/provisioner/provisioner.sh
@@ -96,7 +96,7 @@ reboot() {
 
 status() {
     parse_json "$1" || exit 1
-    echo '{"status": "success", "power_state": "running"}'
+    echo '{"status": "success", "power_state": "poweron"}'
 }
 
 action=$1

Reply via email to