推送标签时 appveyor 上的不同命名工件?
Different naming artifacts on appveyor when tag pushed?
我在 appveyor.yml 中有这个模式:
- path: Foo\bin$(configuration)
name: Foo_%APPVEYOR_BUILD_VERSION%
type: zip
当我推送一些常规提交时,我得到了工件 Foo_123_master.zip
。
想要Foo_1.4.8.zip
,当push释放标签1.4.8
.
Appveyor 有 %APPVEYOR_REPO_TAG_NAME%
环境变量,但是如何在常规构建和标记推送构建中将工件设置为不同的命名?
可以引入另一个环境变量,根据构建类型设置,例如:
init:
- ps: |
$env:artifact_suffix = $env:APPVEYOR_BUILD_VERSION
if ($env:APPVEYOR_REPO_TAG -eq 'true') {
$env:artifact_suffix = $env:APPVEYOR_REPO_TAG_NAME
}
然后在 artifacts
部分:
- path: Foo\bin$(configuration)
name: Foo_%artifact_suffix%
type: zip
我在 appveyor.yml 中有这个模式:
- path: Foo\bin$(configuration)
name: Foo_%APPVEYOR_BUILD_VERSION%
type: zip
当我推送一些常规提交时,我得到了工件 Foo_123_master.zip
。
想要Foo_1.4.8.zip
,当push释放标签1.4.8
.
Appveyor 有 %APPVEYOR_REPO_TAG_NAME%
环境变量,但是如何在常规构建和标记推送构建中将工件设置为不同的命名?
可以引入另一个环境变量,根据构建类型设置,例如:
init:
- ps: |
$env:artifact_suffix = $env:APPVEYOR_BUILD_VERSION
if ($env:APPVEYOR_REPO_TAG -eq 'true') {
$env:artifact_suffix = $env:APPVEYOR_REPO_TAG_NAME
}
然后在 artifacts
部分:
- path: Foo\bin$(configuration)
name: Foo_%artifact_suffix%
type: zip