无法在Azure DevOps发布管道中提取.net单文件应用程序



我确实用c#创建了一个单文件应用程序。我将这个可执行文件放在存储库中,并将其作为工件推送。前者用于构建管道,我只需添加repo即可使用它。后者是将其用作发布管道的工件。

现在在构建管道期间,我可以简单地使用它,测试它并且它可以工作。不是很重要,但是应用程序做两件事,它发送邮件和更新工作项。

当在发布管道中使用完全相同的应用程序时,我得到以下错误:

提取应用程序包内容失败。
写入解压文件时I/O失败。

我不确定,但这可能与在容器化环境中运行的发布管道代理有关吗?我之所以这样问,是因为其他人在使用AWS容器时遇到了这样的问题,请参阅Reddit链接

[UPDATE]
发布管道运行在自托管的Azure DevOps代理上。安装它的环境没有。net 5运行时也没有安装SDK。但我希望单文件应用程序也包含运行时,还是我错了?

我将我的应用程序作为一个简单的文件夹发布。然后将所有文件放入Azure DevOps存储库中的发布文件夹中。
接下来,我将所有这些文件作为构建管道的工件,必须在环境中安装。net 5当前运行时,因为发布管道运行在自托管代理上,然后我才能运行应用程序。

最新更新