Closed
Description
I'm trying to use azure keyvault in my python azure function.
When importing azure.keyvault.secrets
, everything works fine.
However, when I add from azure.identity import DefaultAzureCredential
, build fails with (slightly redacted for privacy):
[2021-07-29T12:41:02.772Z] Result: Failure
Exception: AssertionError:
Stack: File "C:\Users\Username\AppData\Roaming\npm\node_modules\azure-functions-core-tools\bin\workers\python\3.9/WINDOWS/X64\azure_functions_worker\dispatcher.py", line 301, in _handle__function_load_request
func = loader.load_function(
File "C:\Users\Username\AppData\Roaming\npm\node_modules\azure-functions-core-tools\bin\workers\python\3.9/WINDOWS/X64\azure_functions_worker\utils\wrappers.py", line 40, in call
return func(*args, **kwargs)
File "C:\Users\Username\AppData\Roaming\npm\node_modules\azure-functions-core-tools\bin\workers\python\3.9/WINDOWS/X64\azure_functions_worker\loader.py", line 83, in load_function
mod = importlib.import_module(fullmodname)
File "C:\Users\Username\AppData\Local\Programs\Python\Python39\lib\importlib\__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 850, in exec_module
File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
File "D:\Users\Username\Source\Repos\ProjectName\ProjectName\Balance\__init__.py", line 5, in <module>
from ..shared_code import utility
File "D:\Users\Username\Source\Repos\ProjectName\ProjectName\shared_code\utility.py", line 4, in <module>
from azure.identity import DefaultAzureCredential
File "D:\Users\Username\Source\Repos\ProjectName\ProjectName\.venv\lib\site-packages\azure\identity\__init__.py", line 10, in <module>
from ._credentials import (
File "D:\Users\Username\Source\Repos\ProjectName\ProjectName\.venv\lib\site-packages\azure\identity\_credentials\__init__.py", line 5, in <module>
from .authorization_code import AuthorizationCodeCredential
File "D:\Users\Username\Source\Repos\ProjectName\ProjectName\.venv\lib\site-packages\azure\identity\_credentials\authorization_code.py", line 8, in <module>
from .._internal.aad_client import AadClient
File "D:\Users\Username\Source\Repos\ProjectName\ProjectName\.venv\lib\site-packages\azure\identity\_internal\__init__.py", line 52, in <module>
from .interactive import InteractiveCredential
File "D:\Users\Username\Source\Repos\ProjectName\ProjectName\.venv\lib\site-packages\azure\identity\_internal\interactive.py", line 20, in <module>
from .msal_credentials import MsalCredential
File "D:\Users\Username\Source\Repos\ProjectName\ProjectName\.venv\lib\site-packages\azure\identity\_internal\msal_credentials.py", line 11, in <module>
from .._persistent_cache import _load_persistent_cache, TokenCachePersistenceOptions
File "D:\Users\Username\Source\Repos\ProjectName\ProjectName\.venv\lib\site-packages\azure\identity\_persistent_cache.py", line 9, in <module>
import msal_extensions
File "D:\Users\Username\Source\Repos\ProjectName\ProjectName\.venv\lib\site-packages\msal_extensions\__init__.py", line 12, in <module>
from .cache_lock import CrossPlatLock
File "D:\Users\Username\Source\Repos\ProjectName\ProjectName\.venv\lib\site-packages\msal_extensions\cache_lock.py", line 5, in <module>
import portalocker
File "D:\Users\Username\Source\Repos\ProjectName\ProjectName\.venv\lib\site-packages\portalocker\__init__.py", line 4, in <module>
from . import portalocker
File "D:\Users\Username\Source\Repos\ProjectName\ProjectName\.venv\lib\site-packages\portalocker\portalocker.py", line 10, in <module>
import pywintypes
File "D:\Users\Username\Source\Repos\ProjectName\ProjectName\.venv\lib\site-packages\win32\lib\pywintypes.py", line 105, in <module>
__import_pywin32_system_module__("pywintypes", globals())
File "D:\Users\Username\Source\Repos\ProjectName\ProjectName\.venv\lib\site-packages\win32\lib\pywintypes.py", line 99, in __import_pywin32_system_module__
assert sys.modules[modname] is not old_mod
.
This stack overflow question seems to deal with the same issue, but sadly does not have an answer :(