n00*_*00b 6 visual-studio-code
我正在使用 VSCode 调试器并通过env属性设置环境变量。我也有需要设置为环境变量的数据库密码和机密,但我想签入launch.json以便调试设置可以在团队等之间共享。
有没有一种方法可以设置这些敏感的环境变量进行调试,而无需将其实际检查到源代码管理中?
Sam*_*Sam 12
有多种方法可以在 launch.json 内引用 Visual Studio Code (vscode) 中的敏感数据,而无需将数据包含在 launch.json 文件中。
vscode变量参考很好地记录了这些解决方案。
您可以将敏感变量放入环境变量中(可能通过 shell 配置文件加载,例如.bash_profile)。${env:Name}然后,您可以“通过语法(例如, )”引用它${env:USERNAME}。
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"program": "${workspaceFolder}/app.js",
"cwd": "${workspaceFolder}",
"args": ["${env:USERNAME}"]
}
Run Code Online (Sandbox Code Playgroud)
您可以通过定义输入类型来在启动时提示输入敏感信息promptString,如从文档中提取的以下配置所示。下面${input:componentName}用作参数,并在下面的inputs部分中定义,用于promptString在运行关联任务时提示您输入值。
{
"version": "2.0.0",
"tasks": [
{
"label": "ng g",
"type": "shell",
"command": "ng",
"args": ["g", "${input:componentType}", "${input:componentName}"]
}
],
"inputs": [
/** skipping componentType definition for brevity -- see docs for that */
{
"type": "promptString",
"id": "componentName",
"description": "Name your component.",
"default": "my-new-component"
}
]
}
Run Code Online (Sandbox Code Playgroud)
a的定义promptString如下:
- 描述:显示在快速输入中,提供输入的上下文。
- default:如果用户没有输入其他内容,将使用默认值。
- password:设置为 true 以使用密码提示输入,但不会显示键入的值。
您还可以运行自定义命令来获取输入。文档使用以下配置作为示例。请注意,与其他输入类型一样,该命令必须在inputs带有type.
{
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Run specific test",
"program": "${workspaceFolder}/${input:pickTest}"
}
],
"inputs": [
{
"id": "pickTest",
"type": "command",
"command": "extension.mochaSupport.testPicker",
"args": {
"testFolder": "/out/tests"
}
}
]
}
Run Code Online (Sandbox Code Playgroud)
该command类型的其他选项有:
- command:在变量插值上运行的命令。
- args:传递给命令实现的可选选项包。
| 归档时间: |
|
| 查看次数: |
979 次 |
| 最近记录: |