ServiceFabricUpdateManifests@2 - 更新 Service Fabric 清单 v2 任务
在生成管道中使用此任务可自动更新打包的 Service Fabric 应用的版本。 此任务将版本后缀追加到 Azure Service Fabric 应用包中清单文件中指定的所有服务和应用版本。
语法
# Update Service Fabric manifests v2
# Automatically update portions of application and service manifests in a packaged Azure Service Fabric application.
- task: ServiceFabricUpdateManifests@2
inputs:
updateType: 'Manifest versions' # 'Manifest versions' | 'Docker image settings'. Required. Update Type. Default: Manifest versions.
applicationPackagePath: # string. Required. Application Package.
#versionSuffix: '.$(Build.BuildNumber)' # string. Required when updateType = Manifest versions. Version Value. Default: .$(Build.BuildNumber).
#versionBehavior: 'Append' # 'Append' | 'Replace'. Optional. Use when updateType = Manifest versions. Version Behavior. Default: Append.
#updateOnlyChanged: false # boolean. Optional. Use when updateType = Manifest versions. Update only if changed. Default: false.
#pkgArtifactName: # string. Optional. Use when updateType = Manifest versions && updateOnlyChanged = true. Package Artifact Name.
#logAllChanges: true # boolean. Optional. Use when updateType = Manifest versions && updateOnlyChanged = true. Log all changes. Default: true.
#compareType: 'LastSuccessful' # 'LastSuccessful' | 'Specific'. Optional. Use when updateType = Manifest versions && updateOnlyChanged = true. Compare against. Default: LastSuccessful.
#buildNumber: # string. Optional. Use when updateType = Manifest versions && compareType = Specific. Build Number.
#overwriteExistingPkgArtifact: true # boolean. Optional. Use when updateType = Manifest versions && updateOnlyChanged = true. Overwrite Existing Package Artifact. Default: true.
#imageNamesPath: # string. Optional. Use when updateType = Docker image settings. Image Names Path.
#imageDigestsPath: # string. Required when updateType = Docker image settings. Image Digests Path.
# Update Service Fabric Manifests v2
# Automatically updates portions of the application and service manifests within a packaged Service Fabric application.
- task: ServiceFabricUpdateManifests@2
inputs:
updateType: 'Manifest versions' # 'Manifest versions' | 'Docker image settings'. Required. Update Type. Default: Manifest versions.
applicationPackagePath: # string. Required. Application Package.
#versionSuffix: '.$(Build.BuildNumber)' # string. Required when updateType = Manifest versions. Version Value. Default: .$(Build.BuildNumber).
#versionBehavior: 'Append' # 'Append' | 'Replace'. Optional. Use when updateType = Manifest versions. Version Behavior. Default: Append.
#updateOnlyChanged: false # boolean. Optional. Use when updateType = Manifest versions. Update only if changed. Default: false.
#pkgArtifactName: # string. Optional. Use when updateType = Manifest versions && updateOnlyChanged = true. Package Artifact Name.
#logAllChanges: true # boolean. Optional. Use when updateType = Manifest versions && updateOnlyChanged = true. Log all changes. Default: true.
#compareType: 'LastSuccessful' # 'LastSuccessful' | 'Specific'. Optional. Use when updateType = Manifest versions && updateOnlyChanged = true. Compare against. Default: LastSuccessful.
#buildNumber: # string. Optional. Use when updateType = Manifest versions && compareType = Specific. Build Number.
#overwriteExistingPkgArtifact: true # boolean. Optional. Use when updateType = Manifest versions && updateOnlyChanged = true. Overwrite Existing Package Artifact. Default: true.
#imageNamesPath: # string. Optional. Use when updateType = Docker image settings. Image Names Path.
#imageDigestsPath: # string. Required when updateType = Docker image settings. Image Digests Path.
输入
updateType
- 更新类型
string
. 必需。 允许的值:Manifest versions
、Docker image settings
。 默认值:Manifest versions
。
指定应对清单文件进行的更新的类型。 若要使用这两种更新类型,请将此任务的实例添加到生成管道中,以便执行每种类型的更新。
applicationPackagePath
- 应用程序包
string
. 必需。
指定应用程序包的路径。 变量 和通配符可以在路径中使用。 applicationPackagePath
不得具有尾部斜杠或 \
/
。
versionSuffix
- 版本值
string
. 当 时 updateType = Manifest versions
是必需的。 默认值:.$(Build.BuildNumber)
。
指定清单文件中的版本。
提示
可以直接修改内部版本号格式,也可以使用日志记录命令以格式动态设置变量。 例如,可以使用 $(VersionSuffix)
PowerShell 任务中定义的:
$versionSuffix = ".$([DateTimeOffset]::UtcNow.ToString('yyyyMMdd.HHmmss'))"
Write-Host "##vso[task.setvariable variable=VersionSuffix;]$versionSuffix"
versionBehavior
- 版本行为
string
. 可选。 在 时 updateType = Manifest versions
使用 。 允许的值:Append
、Replace
。 默认值:Append
。
指定是将版本值追加到清单文件中的现有值,还是替换它们。
updateOnlyChanged
- 仅当更改时更新
boolean
. 可选。 在 时 updateType = Manifest versions
使用 。 默认值:false
。
仅将新版本后缀追加到已从上一版本更改的包。 如果未找到任何更改,则会追加上一版本的版本后缀。
注意
默认情况下,编译器将创建不同的输出,即使未进行更改。 使用 确定性编译器标志 可确保具有相同输入的生成生成生成相同的输出。
pkgArtifactName
- 包项目名称
string
. 可选。 在 时 updateType = Manifest versions && updateOnlyChanged = true
使用 。
指定包含用于比较的应用程序包的项目的名称。
logAllChanges
- 记录所有更改
boolean
. 可选。 在 时 updateType = Manifest versions && updateOnlyChanged = true
使用 。 默认值:true
。
比较每个包中的所有文件,如果文件已添加、删除或文件内容更改,则记录。 否则,此布尔值仅在找到第一个更改之前比较包中的文件,以提高性能。
compareType
- 与 比较
string
. 可选。 在 时 updateType = Manifest versions && updateOnlyChanged = true
使用 。 允许的值: LastSuccessful
(上次成功生成) , Specific
(特定生成) 。 默认值:LastSuccessful
。
指定是与上次完成的和成功的生成进行比较,还是与特定生成进行比较。
buildNumber
- 内部版本号
string
. 可选。 在 时 updateType = Manifest versions && compareType = Specific
使用 。
指定用于比较的内部版本号。
overwriteExistingPkgArtifact
- 覆盖现有包项目
boolean
. 可选。 在 时 updateType = Manifest versions && updateOnlyChanged = true
使用 。 默认值:true
。
下载项目的新副本。 否则,此布尔值使用现有副本(如果存在)。
imageNamesPath
- 映像名称路径
string
. 可选。 在 时 updateType = Docker image settings
使用 。
指定文本文件的路径,其中包含应使用摘要更新的 Service Fabric 应用程序关联的 Docker 映像的名称。 每个图像名称必须位于自己的行上,并且必须与图像摘要文件中的摘要相同。 如果映像由 Service Fabric 项目创建,则此文件将作为包目标的一部分生成,其输出位置由 属性 BuiltDockerImagesFilePath
控制。
imageDigestsPath
- 图像摘要路径
string
. 当 时 updateType = Docker image settings
是必需的。
指定文本文件的路径,其中包含与 Service Fabric 应用程序关联的 Docker 映像的摘要值。 使用推送操作时, Docker 任务 可以输出此文件。 该文件应包含格式为 的文本 registry/image_name@digest_value
行。
任务控件选项
除任务输入外,所有任务都有控制选项。 有关详细信息,请参阅 控制选项和常见任务属性。
输出变量
无。
备注
在生成管道中使用此任务可自动更新打包的 Service Fabric 应用的版本。 此任务将版本后缀追加到 Azure Service Fabric 应用包中清单文件中指定的所有服务和应用版本。
注意
此任务需要Windows PowerShell。
此任务在 发布 管道中不可用。
此任务只能在生成管道中使用,以自动更新打包的 Service Fabric 应用的版本。
此任务支持两种类型的更新:
清单版本:汇报 Service Fabric 应用程序包的清单文件中指定的服务和应用程序版本。 如果指定,
manifest version
则比较当前文件与以前的内部版本,并仅更新这些已更改的服务的版本。Docker 映像设置:汇报 Service Fabric 应用程序包中的清单文件中指定的 docker 容器映像设置。 要放置的图像设置是从两个文件中选取的:
a. 映像名称文件:此文件由生成任务生成。
b. 映像摘要文件:此文件由 docker 任务在将映像推送到注册表时生成。