从版本中检索图表工件

时间:2018-12-16 18:55:38

标签: kubernetes-helm

这是关于helm get syntax for getting the chart of a release的补充问题。

我想了解头盔是否支持以下用例:

  1. Alice在她的笔记本电脑上创建了一个图表 foo,该文件存储在笔记本电脑文件系统的目录中:

    [alice-laptop]$ helm create foo
    # Alice fiddles with contents of foo, like Chart.yaml, templates...
    
  2. Alice从笔记本电脑生成foo版本,并调用实例bar

    [alice-laptop]$ helm install -n bar foo
    
  3. 爱丽丝去度假,在山上徒步旅行。对她有好处!

  4. 她不在的时候,鲍勃被要求对版本 bar进行一些更改,并开始另一个 release tut安全摆弄。因此,鲍勃想运行一些命令来检索生成foo时使用的图表 bar(不仅是名称,而是所有工件!),对它们进行更改并以正确的方式使用头盔:

    [bob-laptop]$ helm whatever-command-if-possible bar
    # ideally Bob has a `foo' directory now and can fiddle with it...
    
    # ... to make the required changes for release `bar'
    [bob-laptop]$ helm update bar foo
    
    # ... and to install another release `tut'
    [bob-laptop]$ helm install -n tut foo 
    

鲍勃(Bob)读到get可能是上述工作whatever-command-if-possible的正确工具,但实际上并不知道是否是这种情况,或者根本无法做到。 / p>

1 个答案:

答案 0 :(得分:1)

否,以下用例是不可能的。

您只能从chart Repository

检索用于创建版本的特定图表

您可能需要阅读share your charts with others部分

首先,爱丽丝和鲍勃应该有一个共同的图表存储库。在此示例中,他们使用的是公共GCP存储桶通用图表charts-example

在休假前,爱丽丝创建并完成对图表的工作(并在从中创建发布之前),她应该打包图表。

[alice-laptop]$ helm package foo

这将创建 foo-0.1.0.tgz 图表包。

Successfully packaged chart and saved it to: C:\home\stack\foo-0.1.0.tgz

Alice创建index file并将包和索引文件上传到GCP存储桶

[alice-laptop]$ mkdir common-charts
[alice-laptop]$ mv foo-0.1.0.tgz common-charts
[alice-laptop]$ helm repo index common-charts --url https://common-charts.storage.googleapis.com

[alice-laptop]$ gsutil cp common-charts\* gs://common-charts
Copying file://common-charts\foo-0.1.0.tgz [Content-Type=application/x-tar]...
Copying file://common-charts\index.yaml [Content-Type=application/octet-stream]...
\ [2 files][  1.8 KiB/  1.8 KiB]
Operation completed over 2 objects/1.8 KiB.

她不在时,鲍勃可以从普通图表图表存储库下载 foo 图表,解压缩并应用更改。

[bob-laptop]$ helm repo add common-charts https://common-charts.storage.googleapis.com
[bob-laptop]$ helm search foo
NAME                    CHART VERSION   APP VERSION     DESCRIPTION
common-charts/foo       0.1.0           1.0             A Helm chart for Kubernetes

[bob-laptop]$ helm fetch common-charts/foo --untar
[bob-laptop]$ ls -la
drwxr-xr-x 1 bob 1049089   0 Dec 20 12:15 foo/

鲍勃还可以add new charts to existing repo,爱丽丝回来时也可以下载它们。