Я пытаюсь заставить работать преобразование JOLT, используя https://jolt-demo.appspot.com/.
Я хотел бы заменить все «основные» значения на «7,11».
Ввод:
{
"build": [
{
"number": "7.11.13898",
"branchName": "branch1"
},
{
"number": "7.11.13896",
"branchName": "branch2"
},
{
"number": "7.11.13895",
"branchName": "master"
},
{
"number": "7.11.13900",
"branchName": "master"
}
]
}
Желаемый результат:
{
"build": [
{
"number": "7.11.13898",
"branchName": "branch1"
},
{
"number": "7.11.13896",
"branchName": "branch2"
},
{
"number": "7.11.13895",
"branchName": "7.11"
},
{
"number": "7.11.13900",
"branchName": "7.11"
}
]
}
Кажется, я не могу получить преобразование или сдвиг, которые работают без изменения / изменения структуры данных. Текущий подход:
[
{
"operation": "shift",
"spec": {
"build": {
"*": {
"number": "build[&1].number",
"branchName": {
"master": {
"#7.11": "build[&3].branchName"
},
"*": {
"@(2, branchName)": "build[&3].branchName"
}
}
}
}
}
}
]
Токовый выход:
{
"build" : [ {
"number" : "7.11.13898"
}, {
"number" : "7.11.13896"
}, {
"branchName" : "7.11",
"number" : "7.11.13895"
} ]
}