Commit d5170d23 authored by Matt Butcher's avatar Matt Butcher Committed by GitHub

Merge pull request #1116 from ammeon/ignore-chart-dotfiles

feat(helm): package to ignore all dotfiles by default
parents e2f9d894 96de0e35
...@@ -208,6 +208,7 @@ func LoadDir(dir string) (*chart.Chart, error) { ...@@ -208,6 +208,7 @@ func LoadDir(dir string) (*chart.Chart, error) {
} }
rules = r rules = r
} }
rules.AddDefaults()
files := []*afile{} files := []*afile{}
topdir += string(filepath.Separator) topdir += string(filepath.Separator)
......
...@@ -42,6 +42,13 @@ func Empty() *Rules { ...@@ -42,6 +42,13 @@ func Empty() *Rules {
return &Rules{patterns: []*pattern{}} return &Rules{patterns: []*pattern{}}
} }
// AddDefaults adds default ignore patterns.
//
// Ignore all dotfiles in "templates/"
func (r *Rules) AddDefaults() {
r.parseRule(`templates/.?*`)
}
// ParseFile parses a helmignore file and returns the *Rules. // ParseFile parses a helmignore file and returns the *Rules.
func ParseFile(file string) (*Rules, error) { func ParseFile(file string) (*Rules, error) {
f, err := os.Open(file) f, err := os.Open(file)
......
...@@ -63,7 +63,6 @@ func TestParseFail(t *testing.T) { ...@@ -63,7 +63,6 @@ func TestParseFail(t *testing.T) {
t.Errorf("Rule %q should have failed", fail) t.Errorf("Rule %q should have failed", fail)
} }
} }
} }
func TestParseFile(t *testing.T) { func TestParseFile(t *testing.T) {
...@@ -99,6 +98,7 @@ func TestIgnore(t *testing.T) { ...@@ -99,6 +98,7 @@ func TestIgnore(t *testing.T) {
{`cargo/*.*`, "cargo/a.txt", true}, {`cargo/*.*`, "cargo/a.txt", true},
{`cargo/*.txt`, "mast/a.txt", false}, {`cargo/*.txt`, "mast/a.txt", false},
{`ru[c-e]?er.txt`, "rudder.txt", true}, {`ru[c-e]?er.txt`, "rudder.txt", true},
{`templates/.?*`, "templates/.dotfile", true},
// Directory tests // Directory tests
{`cargo/`, "cargo", true}, {`cargo/`, "cargo", true},
...@@ -134,6 +134,15 @@ func TestIgnore(t *testing.T) { ...@@ -134,6 +134,15 @@ func TestIgnore(t *testing.T) {
} }
} }
func TestAddDefaults(t *testing.T) {
r := Rules{}
r.AddDefaults()
if len(r.patterns) != 1 {
t.Errorf("Expected 1 default patterns, got %d", len(r.patterns))
}
}
func parseString(str string) (*Rules, error) { func parseString(str string) (*Rules, error) {
b := bytes.NewBuffer([]byte(str)) b := bytes.NewBuffer([]byte(str))
return Parse(b) return Parse(b)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment