我的图表有 elasticsearch 和 mongdb 依赖关系,在我的图表中,结构如下:
??? [-rw-rw-r--] Chart.yaml
??? [drwxrwxr-x] dependency_charts
? ??? [drwxrwxr-x] elasticsearch
? ??? [drwxrwxr-x] mongodb
??? [-rw-rw-r--] deploy.sh
??? [-rw-rw-r--] requirements.yaml
??? [-rw-rw-r--] values.yaml
??? [drwxrwxr-x] templates
? ??? [-rw-rw-r--] proj-deploy.yaml
? ??? [-rw-rw-r--] proj-svc.yaml
Run Code Online (Sandbox Code Playgroud)
但是当我尝试安装我的图表时,它会说:
Error: found in requirements.yaml, but missing in charts/ directory: elasticsearch, mongodb
当我执行 helm dep ls 时,它显示状态丢失
$ helm dep list
NAME VERSION REPOSITORY STATUS
elasticsearch 6.5.1 file://dependency_charts/elasticsearch missing
mongodb 4.0.3 file://dependency_charts/mongodb missing
Run Code Online (Sandbox Code Playgroud)
版本是appVersion,我也把版本改成了chart版本,还是不行。
这是官方文档:https : //github.com/helm/helm/blob/master/docs/helm/helm_dependency.md https://docs.helm.sh/chart_best_practices/#repository-urls
这是掌舵版本
$ helm version
Client: &version.Version{SemVer:"v2.10.0", GitCommit:"9ad53aac42165a5fadc6c87be0dea6b115f93090", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.10.0", GitCommit:"9ad53aac42165a5fadc6c87be0dea6b115f93090", GitTreeState:"clean"}
Run Code Online (Sandbox Code Playgroud)
我可以将这些图表放到一个charts文件夹中,但是如果我这样做,helm 会在同一个图表中安装 mongodb 和 elasticsearch,这不是预期的,我期望的是在同一个命名空间下有三个图表:myproj、elasticsearch、mongodb .
有人知道我做错了什么吗?谢谢。
小智 11
我遇到了这个错误。
\n我的解决方案是:
\ncharts/将(目录)重命名为subcharts/chmod 755 subcharts/*当我将本地依赖项放置在 Heml 3 中时,Heml 3 不喜欢它charts/
\n此外,Helm dep up 需要权限将本地依赖项从子图表目录移动到tmpcharts/等等。
**
\n**
\n我从@sgandon 和@Narayana 那里读到了这篇文章:
\n\n\n\n\nos.Stat() 找不到文件夹的原因。这是\n因为调用函数\n downloadAll is renaming the charts folder to tmpcharts during the update\nthus making our unpacked chart not foundable for that duration.
\n
笔记:
\n!! 在 Helm 3 中,requirements.yaml 已被弃用。!!
\n您可以在 Parent/Main Charts.yaml 中添加依赖项。
\ndependencies:\n - name: chart-you-want-to-deploy-1\n repository: file://subcharts/chart-you-want-to-deploy-1\n version: 0.0.1\n condition: chart-you-want-to-deploy-1.enabled\n\n - name: chart-you-want-to-deploy-2\n repository: file://subcharts/chart-you-want-to-deploy-2\n version: 0.0.1\n condition: chart-you-want-to-deploy-2.enabled\nRun Code Online (Sandbox Code Playgroud)\n将我的变量添加到 Parent/Main Values.yaml 中的全局变量中
\nglobals:\n chart-you-want-to-deploy-1:\n enabled: true\n chart-you-want-to-deploy-2:\n enabled: false\nRun Code Online (Sandbox Code Playgroud)\n不要忘记将标志添加到您的命令中。
\nIn my case I was using a CI/CD tool (GitLab).
script:\n - >\n helm dep up Main-Chart-Name && \\\n helm upgrade --install \\\n --set chart-you-want-to-deploy-1.enabled=false \\\n --set chart-you-want-to-deploy-2.enabled=true \\\n RELEASE_NAME Main-Chart-Name\nRun Code Online (Sandbox Code Playgroud)\n我的树
\nMain-Chart-Name\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 Chart.yaml\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 subcharts\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 chart-you-want-to-deploy-1\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 Chart.yaml\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 charts\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 templates\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 chart-you-want-to-deploy-1.yaml\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 values.yaml\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 chart-you-want-to-deploy-2\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 Chart.yaml\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 charts\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 templates\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 chart-you-want-to-deploy-2.yaml\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 values.yaml\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 templates\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 helpers.tpl\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 my.yaml\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 main.yaml\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 templates.yaml\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 values.yaml\nRun Code Online (Sandbox Code Playgroud)\n
helm dep update
Run Code Online (Sandbox Code Playgroud)
仅当 repo 列表为空时才有效。检查helm repo list,如果这返回某些内容,则本地依赖项将无法解决。尝试使用命令删除存储库helm repo remove REPO_NAME
| 归档时间: |
|
| 查看次数: |
22761 次 |
| 最近记录: |