@@ -275,6 +275,21 @@ def package_arguments_builder(is_zypper_install):
275275 elif line .startswith ("Architecture=" ):
276276 arch = line .split ("=" , 1 )[1 ].rstrip ()
277277
278+ elif line .startswith ("options=" ):
279+ global zypper_options
280+ option = line .split ("=" , 1 )[1 ].rstrip ()
281+
282+ if option :
283+ if option .startswith ("env:" ):
284+ env_option = option .split (":" , 1 )[1 ]
285+ env_var = env_option .split ("=" , 1 )
286+ if len (env_var ) == 2 :
287+ env_name = env_var [0 ]
288+ env_value = env_var [1 ]
289+ os .environ [env_name ] = env_value
290+ else :
291+ zypper_options .append (option )
292+
278293 if name :
279294 single_list , multi_list = one_package_argument (name , arch , version , is_zypper_install )
280295 single_cmd_args += single_list
@@ -405,6 +420,18 @@ def file_install():
405420 found = True
406421 cmd_line .append (line .split ("=" , 1 )[1 ].rstrip ())
407422
423+ elif line .startswith ("options=" ):
424+ global zypper_options
425+ option = line .split ("=" , 1 )[1 ].rstrip ()
426+ if option :
427+ if option .startswith ("env:" ):
428+ env_option = option .split (":" , 1 )[1 ]
429+ env_var = env_option .split ("=" , 1 )
430+ if len (env_var ) == 2 :
431+ env_name = env_var [0 ]
432+ env_value = env_var [1 ]
433+ os .environ [env_name ] = env_value
434+
408435 if not found :
409436 return 0
410437
0 commit comments