Github Actions CI Windows 虚拟机不再有 [=10th=] 了吗?或者它改变了位置

GithubActions CI Windows VMs don't have fsi.exe anymore? or it changed location

在你告诉我 .NETCore/.NET5(或更高版本)中 运行 .fsx 脚本的方法是 dotnet fsi 之前,仅供参考:。我只是还不能升级,所以我仍然 运行 使用老式的 .NET 4.x 框架来安装我的 .fsx 脚本。

要做到这一点,并在 GithubActions CI 下 运行 它们,我有这个方便的 fsi.bat 文件:

@ECHO OFF

SET ENTERPRISE="%ProgramFiles(x86)%\Microsoft Visual Studio19\Enterprise\Common7\IDE\CommonExtensions\Microsoft\FSharp\fsi.exe"
SET COMMUNITY="%ProgramFiles(x86)%\Microsoft Visual Studio19\Community\Common7\IDE\CommonExtensions\Microsoft\FSharp\fsi.exe"
SET BUILDTOOLS="%ProgramFiles(x86)%\Microsoft Visual Studio19\BuildTools\Common7\IDE\CommonExtensions\Microsoft\FSharp\fsi.exe"

IF EXIST %ENTERPRISE% (
    SET RUNNER=%ENTERPRISE%
) ELSE (
    IF EXIST %COMMUNITY% (
        SET RUNNER=%COMMUNITY%
    ) ELSE (
        IF EXIST %BUILDTOOLS% (
            SET RUNNER=%BUILDTOOLS%
        ) ELSE (
            ECHO fsi.exe not found, is F# installed?
            EXIT /b 1
        )
    )
)

%RUNNER% %*

这工作正常...直到昨天。

不知何故 GitHub(或者我应该说微软...)决定为 GitHub 操作升级他们的生产虚拟机,现在我所有的构建都失败了。

所以我有三个问题:

  1. 现在在什么位置?怎么没看到VS2020已经发布了?
  2. 找到 fsi.exe 升级后不会中断的更好方法吗?
  3. 如何选择更稳定的 GitHubActions VM,不会时不时带来重大变化?不要只是告诉我在推特上对 Nat Friedman 大喊大叫 :)

最近我的位置好像也变了:

  • VS2019 版本 16.9.3: ...\Microsoft\FSharp\fsi.exe
  • VS2019 版本 16.10.0: ...\Microsoft\FSharp\Tools\fsi.exe

所以他们出于某种原因将它移到了 Tools 目录中。

我个人所做的是启动“Visual Studio 2019 开发人员命令提示符”并从那里执行 fsi,因此确切位置并不重要。也许您可以通过调用相同的命令文件编写类似的脚本?它在 ...\Common7\Tools\VsDevCmd.bat.