我正在使用带op的oc补丁替换部署中的一个字符串,以下是命令:-
oc patch dc abc --type='json' -p='[{"op": "replace", "path": "/spec/template/spec/containers/0/image", "value": "ab-repository/" },{"op": "replace", "path": "/spec/template/spec/containers/0/image", "value": "bc-repository/" }]'
它正在做什么,它在下面进行了更改:-
Before:- ab-repository/ab:1.0.0
After:- bc-repository/
这是我想要的:-
Before:- ab-repository/ab:1.0.0
After:- bc-repository/ab:1.0.0
请让我知道我在这里做错了。
以下是YAML
apiVersion: apps.openshift.io/v1
kind: DeploymentConfig
metadata:
name: ruleengine
namespace: apps
spec:
replicas: 1
revisionHistoryLimit: 10
selector:
name: ruleengine
strategy:
activeDeadlineSeconds: 21600
resources: {}
rollingParams:
intervalSeconds: 1
updatePeriodSeconds: 1
type: Rolling
template:
metadata:
creationTimestamp: null
labels:
name: ruleengine
spec:
containers:
- image: ab-repository/ab:1.0.0 ### containers should be provided in the form of an array