2 min read | by Jordi Prats
While writing Kustomize patches you might come across is the need to escape certain characters, such as the forward slash (
/). This can be a bit tricky since the common conventions on how to escape a character don't apply here.
In Kustomize, the forward slash character is used to separate different parts of a resource's path. But if you have an annotation that contain a forward slash you'll need to escape it otherwise looks like is referencing a different path within the object.
To escape escape a forward slash in Kustomize is to use the
~1 instead of the forward slash, for example:
apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization resources: - deployment.yaml patches: - op: remove path: /metadata/annotations/pet2cattle.com~1example
Notice how we are using the ~1 notation to escape the forward slash in the annotation name: We are pointing to
pet2cattle.com/example in the path
Posted on 03/05/2023