Attempt to update win11 finish with error
Open
Nobody has claimed this yet.
bug
needs-triage
- Dominant language
- Python
- Stars
- 15.7k
- Forks
- 5.6k
- Avg merge
- 2d 44m
- Merged PRs (30d)
- 80
Description
Description
Attempt to update win11 finish with error:
[root@tmv2007 ~]# salt 'tml1111*' win_wua.list drivers=True summary=True install=True
tml1111.minion:
The minion function caused an exception: Traceback (most recent call last):
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\minion.py", line 1982, in _thread_return
return_data = minion_instance._execute_job_function(
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\minion.py", line 1941, in _execute_job_function
return_data = self.executors[fname](opts, data, func, args, kwargs)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\loader\lazy.py", line 159, in __call__
ret = self.loader.run(run_func, *args, **kwargs)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\loader\lazy.py", line 1245, in run
return self._last_context.run(self._run_as, _func_or_method, *args, **kwargs)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\loader\lazy.py", line 1260, in _run_as
return _func_or_method(*args, **kwargs)
File "C:\Program Files\Salt Project\Salt\Lib\site-packages\salt\executors\direct_call.py", line 10, in execute
return func(*args, **kwargs)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\loader\lazy.py", line 159, in __call__
ret = self.loader.run(run_func, *args, **kwargs)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\loader\lazy.py", line 1245, in run
return self._last_context.run(self._run_as, _func_or_method, *args, **kwargs)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\loader\lazy.py", line 1260, in _run_as
return _func_or_method(*args, **kwargs)
File "C:\Program Files\Salt Project\Salt\Lib\site-packages\salt\modules\win_wua.py", line 541, in list
ret["Download"] = wua.download(updates)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\utils\win_update.py", line 691, in download
ret["Updates"][uid]["AlreadyDownloaded"] = bool(update.IsDownloaded)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\win32com\client\dynamic.py", line 628, in __getattr__
ret = self._oleobj_.Invoke(retEntry.dispid, 0, invoke_type, 1)
pywintypes.com_error: (-2147352567, 'Exception occurred.', (0, None, None, None, 0, -2147024809), None)
ERROR: Minions returned with non-zero exit code
[root@tmv2007 ~]#
[root@tmv2007 ~]# salt --versions-report
Salt Version:
Salt: 3006.5
Python Version:
Python: 3.10.13 (main, Nov 15 2023, 04:34:27) [GCC 11.2.0]
Dependency Versions:
cffi: 1.14.6
cherrypy: unknown
dateutil: 2.8.1
docker-py: Not Installed
gitdb: 4.0.10
gitpython: 3.1.32
Jinja2: 3.1.2
libgit2: Not Installed
looseversion: 1.0.2
M2Crypto: Not Installed
Mako: Not Installed
msgpack: 1.0.2
msgpack-pure: Not Installed
mysql-python: Not Installed
packaging: 22.0
pycparser: 2.21
pycrypto: Not Installed
pycryptodome: 3.9.8
pygit2: Not Installed
python-gnupg: 0.4.8
PyYAML: 6.0.1
PyZMQ: 23.2.0
relenv: 0.14.2
smmap: 5.0.0
timelib: 0.2.4
Tornado: 4.5.3
ZMQ: 4.3.4
System Versions:
dist: oracle 8.9 n/a
locale: utf-8
machine: x86_64
release: 4.18.0-513.11.0.1.el8_9.x86_64
system: Linux
version: Oracle Linux Server 8.9 n/a
[root@tmv2007 ~]# salt 'tml1111*' cmd.run 'salt-call.exe -l debug win_wua.list drivers=True summary=True install=True'
tml1111.minion:
[DEBUG ] Reading configuration from C:\ProgramData\Salt Project\Salt\conf\minion
[DEBUG ] Including configuration from 'C:\ProgramData\Salt Project\Salt\conf\minion.d\_schedule.conf'
[DEBUG ] Reading configuration from C:\ProgramData\Salt Project\Salt\conf\minion.d\_schedule.conf
[WARNING ] Insecure logging configuration detected! Sensitive data may be logged.
[DEBUG ] Configuration file path: C:\ProgramData\Salt Project\Salt\conf\minion
[DEBUG ] Grains refresh requested. Refreshing grains.
[DEBUG ] Reading configuration from C:\ProgramData\Salt Project\Salt\conf\minion
[DEBUG ] Including configuration from 'C:\ProgramData\Salt Project\Salt\conf\minion.d\_schedule.conf'
[DEBUG ] Reading configuration from C:\ProgramData\Salt Project\Salt\conf\minion.d\_schedule.conf
[DEBUG ] The functions from module 'core' are being loaded by dir() on the loaded module
[DEBUG ] The functions from module 'disks' are being loaded by dir() on the loaded module
[DEBUG ] The functions from module 'extra' are being loaded by dir() on the loaded module
[DEBUG ] The functions from module 'lvm' are being loaded by dir() on the loaded module
[DEBUG ] The functions from module 'mdadm' are being loaded by dir() on the loaded module
[DEBUG ] The functions from module 'minion_process' are being loaded by dir() on the loaded module
[DEBUG ] The functions from module 'opts' are being loaded by dir() on the loaded module
[DEBUG ] The functions from module 'pending_reboot' are being loaded by dir() on the loaded module
[DEBUG ] Override __utils__: <module 'salt.loaded.int.grains.zfs' from 'C:\\Program Files\\Salt Project\\Salt\\Lib\\site-packages\\salt\\grains\\zfs.py'>
[DEBUG ] Connecting to master. Attempt 1 (infinite attempts)
[DEBUG ] "tmv2007.home.net" Not an IP address? Assuming it is a hostname.
[DEBUG ] Master URI: tcp://192.168.100.9:4506
[DEBUG ] Initializing new AsyncAuth for ('C:\\ProgramData\\Salt Project\\Salt\\conf\\pki\\minion', 'tml1111.minion', 'tcp://192.168.100.9:4506')
[DEBUG ] Generated random reconnect delay between '1000ms' and '11000ms' (6951)
[DEBUG ] Setting zmq_reconnect_ivl to '6951ms'
[DEBUG ] Setting zmq_reconnect_ivl_max to '11000ms'
[DEBUG ] salt.crypt.get_rsa_key: Loading private key
[DEBUG ] salt.crypt._get_key_with_evict: Loading private key
[DEBUG ] Loaded minion key: C:\ProgramData\Salt Project\Salt\conf\pki\minion\minion.pem
[DEBUG ] SaltEvent PUB socket URI: 4510
[DEBUG ] SaltEvent PULL socket URI: 4511
[DEBUG ] salt.crypt.get_rsa_pub_key: Loading public key
[DEBUG ] Decrypting the current master AES key
[DEBUG ] salt.crypt.get_rsa_key: Loading private key
[DEBUG ] Loaded minion key: C:\ProgramData\Salt Project\Salt\conf\pki\minion\minion.pem
[DEBUG ] salt.crypt.get_rsa_pub_key: Loading public key
[DEBUG ] salt.crypt.verify_signature: Loading public key
[DEBUG ] salt.crypt.get_rsa_pub_key: Loading public key
[DEBUG ] salt.crypt.verify_signature: Verifying signature
[DEBUG ] <salt.crypt.AsyncAuth object at 0x0000022FA82D4820> Got new master aes key.
[DEBUG ] Closing AsyncReqChannel instance
[DEBUG ] Connecting the Minion to the Master publish port, using the URI: tcp://192.168.100.9:4505
[DEBUG ] <salt.transport.zeromq.PublishClient object at 0x0000022FA82D4160> connecting to tcp://192.168.100.9:4505
[DEBUG ] Sending event: tag = __master_connected; data = {'master': 'tmv2007.home.net', '_stamp': '2024-01-16T16:20:21.539807'}
[DEBUG ] salt.crypt.get_rsa_key: Loading private key
[DEBUG ] Loaded minion key: C:\ProgramData\Salt Project\Salt\conf\pki\minion\minion.pem
[DEBUG ] Closing IPCMessageClient instance
[DEBUG ] Determining pillar cache
[DEBUG ] Initializing new AsyncAuth for ('C:\\ProgramData\\Salt Project\\Salt\\conf\\pki\\minion', 'tml1111.minion', 'tcp://192.168.100.9:4506')
[DEBUG ] salt.crypt.get_rsa_key: Loading private key
[DEBUG ] Loaded minion key: C:\ProgramData\Salt Project\Salt\conf\pki\minion\minion.pem
[DEBUG ] salt.crypt.verify_signature: Loading public key
[DEBUG ] salt.crypt.get_rsa_pub_key: Loading public key
[DEBUG ] salt.crypt.verify_signature: Verifying signature
[DEBUG ] Closing AsyncReqChannel instance
[DEBUG ] The functions from module 'jinja' are being loaded by dir() on the loaded module
[DEBUG ] LazyLoaded jinja.render
[DEBUG ] The functions from module 'yaml' are being loaded by dir() on the loaded module
[DEBUG ] LazyLoaded yaml.render
[DEBUG ] The functions from module 'win_wua' are being loaded by dir() on the loaded module
[DEBUG ] LazyLoaded win_wua.list
[DEBUG ] The functions from module 'direct_call' are being loaded by dir() on the loaded module
[DEBUG ] LazyLoaded direct_call.execute
[DEBUG ] To Be Downloaded: 39a16871-d41a-4df1-9eac-a7cbc0af7498
[DEBUG ] Title: Intel - Other hardware - Intel(R) Celeron(R)/Pentium(R) SM Bus Controller - 2292
[DEBUG ] To Be Downloaded: 63d8f13b-284e-4ff0-a34f-b91f96892863
[DEBUG ] Title: Realtek Semiconduct Corp. - MTD - 8/25/2015 12:00:00 AM - 6.3.9600.29088
[DEBUG ] To Be Downloaded: 7008eca0-db9c-4382-9898-179d27fabda8
[DEBUG ] Title: Intel(R) Corporation - MEDIA - 5/10/2016 12:00:00 AM - 6.16.0.3197
[DEBUG ] To Be Downloaded: 1ccb92db-0d71-4e37-8ca2-b9f5af9ceb03
[DEBUG ] Title: Elan - Other hardware - Lenovo pointing device
[ERROR ] An un-handled exception was caught by Salt's global exception handler:
com_error: (-2147352567, 'Exception occurred.', (0, None, None, None, 0, -2147024809), None)
Traceback (most recent call last):
File "C:\Program Files\Salt Project\Salt\lib\runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "C:\Program Files\Salt Project\Salt\lib\runpy.py", line 86, in _run_code
exec(code, run_globals)
File "C:\Program Files\Salt Project\Salt\salt-call.exe\__main__.py", line 7, in <module>
sys.exit(salt_call())
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\scripts.py", line 443, in salt_call
client.run()
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\cli\call.py", line 50, in run
caller.run()
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\cli\caller.py", line 95, in run
ret = self.call()
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\cli\caller.py", line 202, in call
ret["return"] = self.minion.executors[fname](
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\loader\lazy.py", line 159, in __call__
ret = self.loader.run(run_func, *args, **kwargs)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\loader\lazy.py", line 1245, in run
return self._last_context.run(self._run_as, _func_or_method, *args, **kwargs)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\loader\lazy.py", line 1260, in _run_as
return _func_or_method(*args, **kwargs)
File "C:\Program Files\Salt Project\Salt\Lib\site-packages\salt\executors\direct_call.py", line 10, in execute
return func(*args, **kwargs)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\loader\lazy.py", line 159, in __call__
ret = self.loader.run(run_func, *args, **kwargs)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\loader\lazy.py", line 1245, in run
return self._last_context.run(self._run_as, _func_or_method, *args, **kwargs)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\loader\lazy.py", line 1260, in _run_as
return _func_or_method(*args, **kwargs)
File "C:\Program Files\Salt Project\Salt\Lib\site-packages\salt\modules\win_wua.py", line 541, in list
ret["Download"] = wua.download(updates)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\utils\win_update.py", line 691, in download
ret["Updates"][uid]["AlreadyDownloaded"] = bool(update.IsDownloaded)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\win32com\client\dynamic.py", line 628, in __getattr__
ret = self._oleobj_.Invoke(retEntry.dispid, 0, invoke_type, 1)
pywintypes.com_error: (-2147352567, 'Exception occurred.', (0, None, None, None, 0, -2147024809), None)
Traceback (most recent call last):
File "C:\Program Files\Salt Project\Salt\lib\runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "C:\Program Files\Salt Project\Salt\lib\runpy.py", line 86, in _run_code
exec(code, run_globals)
File "C:\Program Files\Salt Project\Salt\salt-call.exe\__main__.py", line 7, in <module>
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\scripts.py", line 443, in salt_call
client.run()
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\cli\call.py", line 50, in run
caller.run()
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\cli\caller.py", line 95, in run
ret = self.call()
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\cli\caller.py", line 202, in call
ret["return"] = self.minion.executors[fname](
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\loader\lazy.py", line 159, in __call__
ret = self.loader.run(run_func, *args, **kwargs)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\loader\lazy.py", line 1245, in run
return self._last_context.run(self._run_as, _func_or_method, *args, **kwargs)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\loader\lazy.py", line 1260, in _run_as
return _func_or_method(*args, **kwargs)
File "C:\Program Files\Salt Project\Salt\Lib\site-packages\salt\executors\direct_call.py", line 10, in execute
return func(*args, **kwargs)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\loader\lazy.py", line 159, in __call__
ret = self.loader.run(run_func, *args, **kwargs)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\loader\lazy.py", line 1245, in run
return self._last_context.run(self._run_as, _func_or_method, *args, **kwargs)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\loader\lazy.py", line 1260, in _run_as
return _func_or_method(*args, **kwargs)
File "C:\Program Files\Salt Project\Salt\Lib\site-packages\salt\modules\win_wua.py", line 541, in list
ret["Download"] = wua.download(updates)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\salt\utils\win_update.py", line 691, in download
ret["Updates"][uid]["AlreadyDownloaded"] = bool(update.IsDownloaded)
File "C:\Program Files\Salt Project\Salt\lib\site-packages\win32com\client\dynamic.py", line 628, in __getattr__
ret = self._oleobj_.Invoke(retEntry.dispid, 0, invoke_type, 1)
pywintypes.com_error: (-2147352567, 'Exception occurred.', (0, None, None, None, 0, -2147024809), None)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with salt/modules/win_wua.py around line 541 and salt/utils/win_update.py around line 691, where the traceback reaches update.IsDownloaded. Reproduce the win_wua.list command on Windows with driver downloads enabled, then determine how this COM error should be handled. Done means the command no longer terminates with an unhandled exception for the reported update set.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- infrastructure, operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100