Я хотел бы исправить все шаблоны контейнеров в развертывании Kubernetes с помощью одной команды kubectl patch
, не зная их имени. Это возможно?
Я знаю, что могу добиться замены с помощью awk
, sed
, jq
и kubectl replace
, но я бы предпочел что-то вроде [*]
в выражении ...
Команда исправления для определенной спецификации контейнера
kubectl patch deployment mydeployment -p '{"spec":{"template":{"spec":{"containers":[{"name":"myname","imagePullPolicy":"Always"}]}}}}'
Пример развертывания
apiVersion: extensions/v1beta1
kind: Deployment
spec:
replicas: 1
template:
spec:
containers:
- image: example.com/my/fancyimage:latest
imagePullPolicy: Never
name: myname
dnsPolicy: ClusterFirst
restartPolicy: Always