在生成管道中使用此任务来自动更新打包的 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 versions
、Docker image settings
。 默认值:Manifest versions
。
指定应对清单文件进行更新的类型。 若要使用这两种更新类型,请将此任务的实例添加到要执行的每种更新类型的生成管道。
applicationPackagePath
-
应用程序包
string
。 必填。
指定应用程序包的路径。 可以在路径中使用 变量 和通配符。
applicationPackagePath
不得有尾部斜杠,\
或 /
。
versionSuffix
-
版本值
string
。
updateType = 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
时使用。 允许的值: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 任务会生成此文件。