如何让AppVeyor使用不同版本的Emacs?
How to make AppVeyor use different versions of Emacs?
我想使用不同版本的 Emacs。我想我必须使用构建矩阵功能来做到这一点。我找遍了,找不到它是怎么做到的。
我将使用 Choco 来安装我的包。默认版本是 Emacs24。但是 Emacs25 可以通过非官方软件包获得。
我想安装同一软件的不同版本,运行 同时构建。
这是对它的外观的一厢情愿的尝试(顺便说一下,这不起作用):
matrix:
- emacs: "24"
- emacs: "25"
install:
- ps : switch($emacs){ "24" {choco install emacs} "25" {choco install emacs64} default {echo "Emacs install fail"}}
- refreshenv
build_script:
- some script
提前致谢。
emacs
是 environment 变量( 不是本地 一个)。 YAML 语法也需要 matrix
之前的 environment
标记。您可以随时在 UI 中创建配置,如果您不确定,请按 Export YAML
按钮。最后 ps
和 :
之间没有 space。除了那个配置是好的。这是固定的:
environment:
matrix:
- emacs: 24
- emacs: 25
install:
- ps: switch($env:emacs){ 24 {choco install emacs} 25 {choco install emacs64} default {echo "Emacs install fail"}}
- refreshenv
旁注:我建议 throw "Emacs install fail"
而不是 echo
。
我想使用不同版本的 Emacs。我想我必须使用构建矩阵功能来做到这一点。我找遍了,找不到它是怎么做到的。
我将使用 Choco 来安装我的包。默认版本是 Emacs24。但是 Emacs25 可以通过非官方软件包获得。
我想安装同一软件的不同版本,运行 同时构建。
这是对它的外观的一厢情愿的尝试(顺便说一下,这不起作用):
matrix:
- emacs: "24"
- emacs: "25"
install:
- ps : switch($emacs){ "24" {choco install emacs} "25" {choco install emacs64} default {echo "Emacs install fail"}}
- refreshenv
build_script:
- some script
提前致谢。
emacs
是 environment 变量( 不是本地 一个)。 YAML 语法也需要 matrix
之前的 environment
标记。您可以随时在 UI 中创建配置,如果您不确定,请按 Export YAML
按钮。最后 ps
和 :
之间没有 space。除了那个配置是好的。这是固定的:
environment:
matrix:
- emacs: 24
- emacs: 25
install:
- ps: switch($env:emacs){ 24 {choco install emacs} 25 {choco install emacs64} default {echo "Emacs install fail"}}
- refreshenv
旁注:我建议 throw "Emacs install fail"
而不是 echo
。