title: How can I command Helm NOT to throw an error if a release has nothing to release?
body: <p>I have a helm chart deploying to three environments (dev, stage and prod). My is running this command like this:</p>
  
  <pre><code>helm upgrade --install --namespace=$DEPLOYMENT_ENV ingress-external-api -f ./ingress-external-api/values-$DEPLOYMENT_ENV.yaml ./ingress-external-api --atomic
  </code></pre>
  
  <p>Where <code>$DEVELOPMENT_ENV</code> is either <code>dev</code>, <code>stage</code> or <code>prod</code>.</p>
  
  <p>The important fact here is that only <code>values-prod.yaml</code> has a proper yaml definition. All the others <code>values-dev.yaml</code> and the same for <code>stage</code> are empty and therefore will not deploy any releases.</p>
  
  <p>That results in the following helm error:</p>
  
  <pre><code>+ helm upgrade --install --namespace=$DEPLOYMENT_ENV ingress-external-api -f ./ingress-external-api/values-$DEPLOYMENT_ENV.yaml ./ingress-external-api --atomic
  Release "ingress-external-api" does not exist. Installing it now.
  INSTALL FAILED
  PURGING CHART
  Error: release ingress-external-api failed: no objects visited
  Successfully purged a chart!
  Error: release ingress-external-api failed: no objects visited
  </code></pre>
  
  <p>Which furthermore results in my bitbucket pipeline to stop and fail.</p>
  
  <p>However as you also can see that did not help.</p>
  
  <p>So my question is how can I tell helm not to throw an error at all if it can not find anything to substitute it's template with?</p>