I have a set of kubernetes config files that work in one environment. I'm looking to deploy into another environment where I need to add an imagePullSecrets entry to all of the Deployment configs.
I can do:
regcred-1.yaml:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: deployment-1
spec:
template:
spec:
imagePullSecrets:
- name: regcredkustomization.yaml:
bases:
- ../base
patchesStrategicMerge:
- regcred-1.yamland that will patch only deployment-1.
Is there a way to apply the patch to all deployments?
You could use patches field instead of patchesStrategicMerge in order to patch multiple resources.
Based on this demo example you can do this by specifiyng patch and target selector:
patches:
- path: <PatchFile> target:
group: <Group>
version: <Version>
kind: <Kind>
name: <Name>
namespace: <Namespace>
labelSelector: <LabelSelector>
annotationSelector: <AnnotationSelector>In this case your kustomization.yaml should look like this:
bases:
- ../base
patches:
- path: regcred-1.yaml
target:
kind: DeploymentLet me know if that solved your case.