<p>I have a Chart.yaml with the following:</p>
<p><em>Chart.yaml</em></p>
<pre class="lang-yaml prettyprint-override"><code>dependencies:
  - name: my-app
    version: &quot;0.1.0&quot;
    repository: &quot;@my-chartmuseum-repo&quot;
</code></pre>
<p>And I added the repo to helm:</p>
<pre class="lang-sh prettyprint-override"><code># helm repo list
NAME                    URL
my-chartmuseum-repo     http://127.0.0.1:8080/
stable                  https://charts.helm.sh/stable
</code></pre>
<p>When I run <code>helm dependency update my-owning-app</code> I get the successful message:</p>
<pre class="lang-sh prettyprint-override"><code>helm dependency update my-owning-app
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the &quot;my-chartmuseum-repo&quot; chart repository
...Successfully got an update from the &quot;stable&quot; chart repository
Update Complete. ⎈Happy Helming!⎈
Saving 1 charts
Downloading my-app from repo http://127.0.0.1:8080/
Deleting outdated charts
</code></pre>
<p><strong>However</strong>, when I try to do this via <code>helm push my-owning-app/ my-chartmuseum-repo --dependency-update</code> I get the error:</p>
<pre class="lang-sh prettyprint-override"><code>Error: no repository definition for @my-chartmuseum-repo. Please add them via 'helm repo add'
Usage:
  helm push [flags]

Flags:
# ...elided...
</code></pre>
<p>Why would it work in the first command but not the second one to find the repository by name?</p>

<p>This is a community wiki answer. Feel free to expand on it.</p>
<p>The <code>--dependency-update</code> flag for the <code>helm push</code> plugin is currently not working properly due to the fact that it does not omit the <code>@</code> symbol when checking the name of the repository.</p>
<p>As a workaround, you could use the <a href="https://helm.sh/docs/helm/helm_dependency_update/" rel="nofollow noreferrer">Helm Dependency Update</a> with a <code>--repository-config string</code> flag:</p>
<blockquote>
<p>path to the file containing repository names and URLs (default
&quot;~/.config/helm/repositories.yaml&quot;)</p>
</blockquote>
