Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions pkg/digger/digger_config.go
Original file line number Diff line number Diff line change
Expand Up @@ -153,10 +153,10 @@ func retrieveConfigFile(workingDir string) (string, error) {
// At this point we know there are no duplicates
// Return the first one that exists
if ymlCfg {
return "digger.yml", nil
return path.Join(workingDir, "digger.yml"), nil
}
if yamlCfg {
return "digger.yaml", nil
return path.Join(workingDir, "digger.yaml"), nil
}

// Passing this point means digger config file is
Expand Down
67 changes: 42 additions & 25 deletions pkg/digger/digger_config_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -47,57 +47,55 @@ func TestDiggerConfigWhenOnlyYamlExists(t *testing.T) {
tempDir, teardown := setUp()
defer teardown()

_, err := os.Create(path.Join(tempDir, "digger.yaml"))
if err != nil {
t.Fatal(err)
}
diggerCfg := `
projects:
- name: prod
branch: /main/
dir: path/to/module/test
workspace: default
`
deleteFile := createFile(path.Join(tempDir, "digger.yaml"), diggerCfg)
defer deleteFile()

dg, err := NewDiggerConfig(tempDir)
assert.NoError(t, err, "expected error to be nil")
assert.NotNil(t, dg, "expected digger config to be not nil")
assert.Equal(t, "path/to/module/test", dg.GetDirectory("prod"))
}

func TestDiggerConfigWhenOnlyYmlExists(t *testing.T) {
tempDir, teardown := setUp()
defer teardown()

_, err := os.Create(path.Join(tempDir, "digger.yml"))
if err != nil {
t.Fatal(err)
}
diggerCfg := `
projects:
- name: dev
branch: /main/
dir: path/to/module
workspace: default
`
deleteFile := createFile(path.Join(tempDir, "digger.yml"), diggerCfg)
defer deleteFile()

dg, err := NewDiggerConfig(tempDir)
assert.NoError(t, err, "expected error to be nil")
assert.NotNil(t, dg, "expected digger config to be not nil")
assert.Equal(t, "path/to/module", dg.GetDirectory("dev"))
}

func TestDefaultValuesForWorkflowConfiguration(t *testing.T) {
tempDir, teardown := setUp()
defer teardown()

f, err := os.Create(path.Join(tempDir, "digger.yaml"))
if err != nil {
log.Fatal(err)
}

defer func(f *os.File) {
err := f.Close()
if err != nil {

}
}(f)

digger_yml := `
diggerCfg := `
projects:
- name: dev
branch: /main/
dir: .
workspace: default
`
_, err2 := f.WriteString(digger_yml)
if err2 != nil {
log.Fatal(err2)
}
deleteFile := createFile(path.Join(tempDir, "digger.yaml"), diggerCfg)
defer deleteFile()

dg, err := NewDiggerConfig(tempDir)
assert.NoError(t, err, "expected error to be nil")
Expand All @@ -120,3 +118,22 @@ func deleteTempDir(name string) {
log.Fatal(err)
}
}

func createFile(filepath string, content string) func() {
f, err := os.Create(filepath)
if err != nil {
log.Fatal(err)
}

_, err = f.WriteString(content)
if err != nil {
log.Fatal(err)
}

return func() {
err := f.Close()
if err != nil {
log.Fatal(err)
}
}
}