From: Massimiliano Minella <[email protected]> By default Popen expects all the streams to be bytes-like objects but, in the Popen.communicate() function call, the "input" argument is a string, making the call fail with the error:
qemu hook error: a bytes-like object is required, not 'str' Fix the error by setting text mode to True in the subprocess creation. Also fix the "SyntaxWarning: invalid escape sequence '\w'" in the regex used to match script names. Signed-off-by: Massimiliano Minella <[email protected]> --- recipes-extended/libvirt/libvirt/hook_support.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git recipes-extended/libvirt/libvirt/hook_support.py recipes-extended/libvirt/libvirt/hook_support.py index 7c5e2a94..63e78b79 100755 --- recipes-extended/libvirt/libvirt/hook_support.py +++ recipes-extended/libvirt/libvirt/hook_support.py @@ -35,7 +35,7 @@ def main(): stdin_save = sys.stdin.readlines() # Match the name name of the hook + a dash + atleast # one alpha-numeric character. - matcher = re.compile( "%s-\w+" % hook_name ) + matcher = re.compile( rf"%s-\w+" % hook_name ) for file_name in sorted( os.listdir( hook_dir ) ): file_path = os.path.join( hook_dir, file_name ) if matcher.match( file_name ) \ @@ -43,7 +43,7 @@ def main(): and os.path.isfile( file_path ) \ and return_value == 0: cmd = [ file_path ] + hook_args - p = subprocess.Popen( cmd, stdin=subprocess.PIPE ) + p = subprocess.Popen( cmd, stdin=subprocess.PIPE, text=True ) p.communicate( input = ''.join( stdin_save ) )[0] return_value = p.wait() except Exception as e: --- base-commit: 28d26fd95397bf575e65fcca0cbb302b1e9bc7ff change-id: 20260107-fix_libvirt_hook_script-c31e952080e9 Best regards, -- Massimiliano Minella <[email protected]>
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#9530): https://lists.yoctoproject.org/g/meta-virtualization/message/9530 Mute This Topic: https://lists.yoctoproject.org/mt/117137254/21656 Group Owner: [email protected] Unsubscribe: https://lists.yoctoproject.org/g/meta-virtualization/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
