在调试控制台中在运行时自动为Python应用程序初始化环境变量

问题描述

Python 3.7.5, Visual Studio代码, 调试

我的应用程序中有用于访问Azure Key Vault的环境变量。必须在执行之前将它们初始化,否则key_vault对象内部将发生身份验证错误。我正在使用DefaultAzureCredential()方法进行调试,并且在部署到Azure时不会有问题。

以前,我将进行调试,等待错误发生,然后将环境变量粘贴到终端中并重新运行。这行得通,但不理想。

我有两个任务的 launch.json tasks.json 。初始化变量的任务是在错误的终端上执行的,因此调试器无法访问变量。

需要 Python调试器控制台中执行这些命令语句。

tasks.json中的相关任务(我将值替换为a_value

  {
    "label": "environmentVariables","type": "shell","windows": {
      "command": [
        "set AZURE_CLIENT_ID=a_value","set AZURE_CLIENT_SECRET=a_value","set AZURE_TENANT_ID=a_value","set KEY_VAULT_NAME=a_value"
      ]
    }
  }

您可以在此屏幕截图中看到,另一个终端中有一个独立的任务:

enter image description here

注意: 我不喜欢保存这样的秘密,它仅用于调试,在部署时我将撤销此原则。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)