title: kubectl apply error: error converting YAML to JSON
body: <p>Getting this error message after <code>kubectl apply -f .</code></p>
  
  <pre><code>error: error converting YAML to JSON: yaml: invalid map key: map[interface {}]interface {}{"include (print $.Template.BasePath \"/configmap.yaml\") . | sha256sum":interface {}(nil)}
  </code></pre>
  
  <p>I've tried putting <code>checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}</code> in different places, but I don't really understand YAML or JSON to figure out the issue.</p>
  
  <pre><code>apiVersion: extensions/v1beta1
  kind: Deployment
  metadata:
    name: demo
  spec:
    replicas: 1
    selector:
      matchLabels:
        app: demo
    template:
      metadata:
        labels:
          app: demo
      spec:
        containers:
          - name:  demo
            image: cloudnatived/demo:hello-config-env
            ports:
              - containerPort: 8888
            env:
              - name: GREETING
                valueFrom:
                  configMapKeyRef:
                    name: demo-config
                    key: greeting
        annotations:
            checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
  </code></pre>
  
  <p>I just want to be able to update my pods when the config is changed. I'm supposed to <code>helm upgrade</code> here somewhere but I'm not sure what arguments to give it.</p>