ADS 2019:如何创建与 Azure 存储模拟器的服务连接?

ADS 2019: How to create a service connection to an Azure Storage Emulator?

作为我的测试工具的一部分,我想部署到 Azure 存储模拟器容器。

对于生产版本,我将通过以下命令使用 Azure CLI 发布任务:

call az storage blob sync -s %ReleaseDirectory% -c %ReleaseName% --account-name %AccountName%

这很好用。

当我尝试为我的测试环境创建到模拟器的服务连接时,问题就开始了。为了创建这样的连接,我们得到这个对话框:

看到问题了吗?订阅 ID...租户 ID...SPN 信息...其中 none 个存在于模拟器实例中。显然,我们只能创建与成熟的 Azure 存储帐户的连接。好像没有连接模拟器的功能。

还有别的办法吗?如何创建与 Azure 存储模拟器的服务连接,以便我可以在与 Azure 相关的管道任务中使用它?

azure devops 中没有 Azure 存储模拟器的服务连接。以上截图是云上Azure资源的服务连接。

如果 Azure Storage Emulator 安装在本地机器上,云代理将无法访问本地机器上托管的 Azure 存储模拟器。您将必须创建一个自托管代理(在同一台本地计算机上)。 运行 您在自托管代理上的管道。这样您的管道就可以访问 Azure 存储模拟器。

按照步骤 here 创建自托管代理。

如果 Azure 存储模拟器和您的自托管代理安装在不同的计算机上。您可以在远程计算机上添加 SSH service connection to connect to the machine which hosts the Azure Storage Emulator. Then you can use SSH task or PowerShell on Target Machines task 到 运行 脚本。

如果 Azure 存储模拟器容器托管在 Azure 容器注册表上。您可以添加 Docker 注册表服务连接。这样您就可以使用 Docker 任务来 运行 代理计算机上的 Azure 存储模拟器容器。见下文: