Json文件内容版本变量值增加0.0.1

Json file content version variable value Increment by 0.0.1

在我发布我的包并标记它之前,我想更新 manifest.json 文件版本 补丁 值以反映包的新版本每次我触发它。

Json 文件:

{
"version":  "0.0.0",
"timeStamp":  "2022-02-14T09:41:34+00:00",
"packages":  [
                 {
                     "name":  "data-service",
                     "type":  "docker-image",
                     "version":  "REL-1.0.5"
                 },
                 {
                     "name":  "application-service",
                     "type":  "docker-image",
                     "version":  "REL-1.0.6"
                 },
             ]
 }

所以我在这里尝试通过从 Powershell 读取 Json 文件的内容来增加:

version = (Get-Content manifest.json | ConvertFrom-Json).version

Json 文件中变量“版本”的值为 0.0.0 但我的问题是 - 如何增加唯一的补丁值?例如。在 manifest.json 文件中自动转换后,我需要有 0.0.1 输出值。

使用[version] type解析现有版本,然后递增内部版本号:

$data = Get-Content manifest.json | ConvertFrom-Json

# extract and increment version build number
$existingVersion = $data.version -as [version]
$nextVersion = [version]::new($existingVersion.Major, $existingVersion.Minor, $existingVersion.Build + 1)

# update original data
$data.version = "$nextVersion"

# write back to disk
$data |ConvertTo-Json |Set-Content updated-manifest.json