diff --git a/pkg/chartutil/requirements.go b/pkg/chartutil/requirements.go index f21a22005..9c554929c 100644 --- a/pkg/chartutil/requirements.go +++ b/pkg/chartutil/requirements.go @@ -419,7 +419,10 @@ func processImportValues(c *chart.Chart) error { "parent": iv["parent"].(string), } outiv = append(outiv, nm) - s := name + "." + nm["child"] + s := name + if nm["child"] != "." { + s = s + "." + nm["child"] + } // get child table vv, err := cvals.Table(s) if err != nil { diff --git a/pkg/chartutil/requirements_test.go b/pkg/chartutil/requirements_test.go index e433f92ea..b2fa816de 100644 --- a/pkg/chartutil/requirements_test.go +++ b/pkg/chartutil/requirements_test.go @@ -275,6 +275,36 @@ func TestProcessRequirementsImportValues(t *testing.T) { e["overridden-chartA-B.SCBextra1"] = "13" e["overridden-chartA-B.SC1extra6"] = "77" + // Check to see if we can get all the values. + e["imported-chart1-all.service.name"] = "nginx" + e["imported-chart1-all.service.type"] = "ClusterIP" + e["imported-chart1-all.service.externalPort"] = "80" + e["imported-chart1-all.service.internalPort"] = "80" + e["imported-chart1-all.SC1data.SC1bool"] = "true" + e["imported-chart1-all.SC1data.SC1float"] = "3.14" + e["imported-chart1-all.SC1data.SC1int"] = "100" + e["imported-chart1-all.SC1data.SC1string"] = "dollywood" + e["imported-chart1-all.SC1data.SC1extra1"] = "11" + e["imported-chart1-all.imported-chartA.SC1extra2"] = "1.337" + e["imported-chart1-all.overridden-chartA.SCAbool"] = "true" + e["imported-chart1-all.overridden-chartA.SCAfloat"] = "3.14" + e["imported-chart1-all.overridden-chartA.SCAint"] = "100" + e["imported-chart1-all.overridden-chartA.SCAstring"] = "jabathehut" + e["imported-chart1-all.overridden-chartA.SC1extra3"] = "true" + e["imported-chart1-all.imported-chartA-B.SC1extra5"] = "tiller" + e["imported-chart1-all.overridden-chartA-B.SCAbool"] = "true" + e["imported-chart1-all.overridden-chartA-B.SCAfloat"] = "3.33" + e["imported-chart1-all.overridden-chartA-B.SCAint"] = "555" + e["imported-chart1-all.overridden-chartA-B.SCAstring"] = "wormwood" + e["imported-chart1-all.overridden-chartA-B.SCAextra1"] = "23" + e["imported-chart1-all.overridden-chartA-B.SCBbool"] = "true" + e["imported-chart1-all.overridden-chartA-B.SCBfloat"] = "0.25" + e["imported-chart1-all.overridden-chartA-B.SCBint"] = "98" + e["imported-chart1-all.overridden-chartA-B.SCBstring"] = "murkwood" + e["imported-chart1-all.overridden-chartA-B.SCBextra1"] = "13" + e["imported-chart1-all.overridden-chartA-B.SC1extra6"] = "77" + e["imported-chart1-all.SCBexported1A.SC1extra7"] = "true" + // `exports` style e["SCBexported1B"] = "1965" e["SC1extra7"] = "true" diff --git a/pkg/chartutil/testdata/subpop/requirements.yaml b/pkg/chartutil/testdata/subpop/requirements.yaml index a8eb0aace..ba1d92772 100644 --- a/pkg/chartutil/testdata/subpop/requirements.yaml +++ b/pkg/chartutil/testdata/subpop/requirements.yaml @@ -19,6 +19,8 @@ dependencies: parent: overridden-chartA-B - child: SCBexported1A parent: . + - child: . + parent: imported-chart1-all - SCBexported2 - SC1exported1