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.

输入

updateType - 更新类型
string。 必填。 允许的值:Manifest versionsDocker image settings。 默认值:Manifest versions

指定应对清单文件进行更新的类型。 若要使用这两种更新类型,请将此任务的实例添加到要执行的每种更新类型的生成管道。


applicationPackagePath - 应用程序包
string。 必填。

指定应用程序包的路径。 可以在路径中使用 变量 和通配符。 applicationPackagePath 不得有尾部斜杠,\/


versionSuffix - 版本值
stringupdateType = Manifest versions时是必需的。 默认值:.$(Build.BuildNumber)

指定清单文件中的版本。

小提示

可以直接修改生成号格式,也可以使用日志记录命令以格式动态设置变量。 例如,可以使用 PowerShell 任务中定义的 $(VersionSuffix)

$versionSuffix = ".$([DateTimeOffset]::UtcNow.ToString('yyyyMMdd.HHmmss'))"
Write-Host "##vso[task.setvariable variable=VersionSuffix;]$versionSuffix"

versionBehavior - 版本行为
string。 可选。 当 updateType = Manifest versions时使用。 允许的值:AppendReplace。 默认值: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 - 图像摘要路径
stringupdateType = Docker image settings时是必需的。

指定文本文件的路径,其中包含与 Service Fabric 应用程序关联的 Docker 映像的摘要值。 使用推送作时,Docker 任务 可以输出此文件。 该文件应包含 registry/image_name@digest_value格式的文本行。


任务控制选项

除任务输入之外,所有任务都具有控制选项。 有关详细信息,请参阅 控件选项和常见任务属性

输出变量

没有。

注解

在生成管道中使用此任务来自动更新打包的 Service Fabric 应用的版本。 此任务将版本后缀追加到 Azure Service Fabric 应用包中清单文件中指定的所有服务和应用版本。

注释

此任务需要 Windows PowerShell。

此任务在 发布 管道中不可用。

此任务只能在生成管道中使用,以自动更新打包的 Service Fabric 应用的版本。

此任务支持两种类型的更新:

  1. 清单版本:更新 Service Fabric 应用程序包中清单文件中指定的服务和应用程序版本。 如果指定,manifest version 将当前文件与以前的版本进行比较,并仅更新这些更改的服务的版本。

  2. Docker 映像设置:更新 Service Fabric 应用程序包中清单文件中指定的 docker 容器映像设置。 要放置的图像设置是从两个文件中选取的:

    a。 映像名称文件:此文件由生成任务生成。

    b. 映像摘要文件:将映像推送到注册表时,docker 任务会生成此文件。

例子

要求

要求 说明
管道类型 YAML,经典生成
运行时间 代理,DeploymentGroup
需求 自承载代理必须具有与以下 要求 运行使用此任务的作业 功能: Cmd
功能 此任务不满足作业中后续任务的任何要求。
命令限制 任何
Settable 变量 任何
代理版本 1.95.0 或更高版本
任务类别 效用