在Visual Studio Code中反向工程Azure资源为.bicep文件时出错。

huangapple go评论61阅读模式
英文:

Error reverse engineering Azure resource to .bicep file in Visual Studio Code

问题

我有一个Azure ASP.NET Core应用程序和各种Azure组件(应用服务、功能应用、SQL数据库),这些都是通过Azure门户界面手动创建的。我想要将Azure资源反向工程成.bicep文件,但在VSC中出现了错误。理想情况下,我会使用Visual Studio(我一直在用于开发),但似乎没有这个选项。

我在VSC中进行以下操作:
1)创建一个空文件myresource.bicep
2)从Azure扩展中获取资源的ID,方法是选择实体的“查看属性”。例如,对于应用服务,“Id”属性。
2)按下ctrl+shift+p / “Bicep: 插入资源” / 粘贴资源ID。

错误如下:
捕获到检索资源时的异常:ChainedTokenCredential未能从包含的凭据中检索令牌。

- 未安装Azure CLI
- 未安装 Az.Account 模块 >= 2.2.0

我已检查了以下内容:
1)今天安装的扩展:Azure Account、Azure App Service、Azure CLI工具、Azure Contain Apps、Azure Databases、Azure Developer CLI、Azure Functions、Azure Resource。
2)确保我已安装了各种在线教程中提到的所有扩展。
3)我可以使用Azure扩展查看每个Azure资源。

我做错了什么?我没有输入任何终端/控制台消息。我应该吗?

英文:

I have an Azure ASP.NET Core app and various Azure components (App Service, Function App, SQL DB) that were created manually via the Azure Portal UI. I want to reverse engineer the Azure resources to .bicep files but I get an error in VSC. Ideally I'd use Visual Studio (What I've been using for development) but there doesn't seem to be an option.

I do the following in VSC:

  1. Create an empty file myresource.bicep
  2. Get the Resource Id from the Azure extension by selecting "View properties" for the entity. E.g. "Id" property for App Service.
  3. Press ctrl+shift+p / "Bicep: Insert resource" / Paste in the Resource Id.

The error is as follows:
Caught exception fetching resource: The ChainedTokenCredential failed to retrieve a token from the included credentials.

- Azure CLI not installed
- Az.Account module >= 2.2.0 is not installed.

I've checked the following:

  1. Extensions installed today: Azure Account, Azure App Service, Azure CLI Tools, Azure Contain Apps, Azure Databases, Azure Developer CLI, Azure Functions, Azure Resource.
  2. Checked that I've installed all extensions mentioned with various online tutorials.
  3. I can view each Azure resource with the Azure extension.

What am I doing wrong? I haven't typed any terminal/console messages. Am I supposed to?

答案1

得分: 0

要将 Azure 资源反向工程到 .bicep 文件中,无需终端/控制台消息。您可以在 Visual Studio Code 中创建一个空的 .bicep 文件,然后使用 Azure 扩展 获取您想要反向工程的实体的 资源 ID。随后,您可以使用 “Bicep: 插入资源” 命令通过指定现有资源的 资源 ID 将资源声明插入到 .bicep 文件中。

如果模块问题经常发生,这表明模块未正确安装。

VScode 终端中使用 Install-module az.accounts 命令安装 Az 账户模块,如果已经安装,它将显示以下警告输出。

在Visual Studio Code中反向工程Azure资源为.bicep文件时出错。

当我在我的环境中尝试时,我也遇到了类似的异常。

在Visual Studio Code中反向工程Azure资源为.bicep文件时出错。

尽管您在 VScode 中添加了 Azure CLI 扩展,但它不起作用。所以我在我的本地 Windows 上安装了 Azure CLI 最新版本。安装完成后,我从 下载 中将 cli 文件夹 复制到了文件资源管理器中的 .VScode 中。

在Visual Studio Code中反向工程Azure资源为.bicep文件时出错。

我将其添加到相应文件夹后重新启动了 Visual Studio Code。为了检查它是否正常工作,我在 VScode 终端中输入 az 并显示所有命令如下。

在Visual Studio Code中反向工程Azure资源为.bicep文件时出错。

然后使用以下命令为 Azure 帐户授权:

az login --scope https://management.azure.com//.default

在Visual Studio Code中反向工程Azure资源为.bicep文件时出错。

通过从命令面板中选择 Bicep: 插入资源 成功插入了一个现有资源。

在Visual Studio Code中反向工程Azure资源为.bicep文件时出错。

英文:

To reverse engineer Azure resources to .bicep files, no terminal/console messages are required. You can create an empty .bicep file in Visual Studio Code and then use the Azure extension to acquire the Resource Id of the entity you want to reverse engineer. Following that, you can use the "Bicep: Insert resource" command to insert the resource declaration into the .bicep file by specifying the Resource Id of an existing resource.

And if the module issue occurs frequently, it indicates that a module was not properly installed.

Install Az accounts module in the VScode terminal using
Install-module az.accounts command and if it is already installed it shows output warning as below.

在Visual Studio Code中反向工程Azure资源为.bicep文件时出错。

I also got the similar caught exception when I tried in my environment.

在Visual Studio Code中反向工程Azure资源为.bicep文件时出错。

Though you added Azure CLI extensions in VScode it wont work. So I installed Azure CLI latest release in my local windows. After the installation is done, I copied that cli folder from downloads to the .VScode in file explorer.

在Visual Studio Code中反向工程Azure资源为.bicep文件时出错。

I restarted my Visual Studio Code once it is added in the corresponding folder. To check whether it is working fine, I gave az in VScode terminal and it shows all the commands as follows.

在Visual Studio Code中反向工程Azure资源为.bicep文件时出错。

Then authorize it with the Azure account using

az login --scope https://management.azure.com//.default command.

在Visual Studio Code中反向工程Azure资源为.bicep文件时出错。

Inserted an existing resource successfully by going into Bicep: Insert a resource from command palette.

在Visual Studio Code中反向工程Azure资源为.bicep文件时出错。

huangapple
  • 本文由 发表于 2023年7月17日 20:38:21
  • 转载请务必保留本文链接:https://go.coder-hub.com/76704531.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定