This is an automated email from the ASF dual-hosted git repository. astefanutti pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/camel-k.git
commit ba4a25fc7ffdab51c14b99ffc10e7539ce84e609 Author: Pasquale Congiusti <[email protected]> AuthorDate: Thu Jun 3 11:07:57 2021 +0200 refactor(cmd/run): synch all option files Ref #2003 --- pkg/cmd/run.go | 5 ++++- pkg/cmd/run_help.go | 11 +++++++++++ pkg/cmd/run_help_test.go | 17 +++++++++++++++++ 3 files changed, 32 insertions(+), 1 deletion(-) diff --git a/pkg/cmd/run.go b/pkg/cmd/run.go index 6e4c373..fe6b209 100644 --- a/pkg/cmd/run.go +++ b/pkg/cmd/run.go @@ -407,7 +407,10 @@ func (o *runCmdOptions) syncIntegration(cmd *cobra.Command, c client.Client, sou // Let's watch all relevant files when in dev mode var files []string files = append(files, sources...) - files = append(files, o.Resources...) + files = append(files, filterFileLocation(o.Resources)...) + files = append(files, filterFileLocation(o.Configs)...) + files = append(files, filterFileLocation(o.Properties)...) + files = append(files, filterFileLocation(o.BuildProperties)...) files = append(files, o.PropertyFiles...) files = append(files, o.OpenAPIs...) diff --git a/pkg/cmd/run_help.go b/pkg/cmd/run_help.go index c7f80e7..a1ab41e 100644 --- a/pkg/cmd/run_help.go +++ b/pkg/cmd/run_help.go @@ -200,3 +200,14 @@ func binaryOrTextResource(fileName string, data []byte, contentType string, base } return resourceSpec, nil } + +func filterFileLocation(maybeFileLocations []string) []string { + filteredOptions := make([]string, 0) + for _, option := range maybeFileLocations { + if strings.HasPrefix(option, "file:") { + localPath, _ := parseFileValue(strings.Replace(option, "file:", "", 1)) + filteredOptions = append(filteredOptions, localPath) + } + } + return filteredOptions +} diff --git a/pkg/cmd/run_help_test.go b/pkg/cmd/run_help_test.go index 5eab301..abae91d 100644 --- a/pkg/cmd/run_help_test.go +++ b/pkg/cmd/run_help_test.go @@ -50,3 +50,20 @@ func TestParseConfigOption(t *testing.T) { assert.Equal(t, "my-file.txt", location.Value) assert.Equal(t, "/tmp/another-name.xml", location.DestinationPath()) } + +func TestFilterFileLocation(t *testing.T) { + optionFileLocations := []string{ + "file:/path/to/valid/file", + "file:app.properties", + "configmap:my-configmap", + "secret:my-secret", + "file:/validfile@/tmp/destination", + } + + filteredOptions := filterFileLocation(optionFileLocations) + + assert.Equal(t, 3, len(filteredOptions)) + assert.Equal(t, "/path/to/valid/file", filteredOptions[0]) + assert.Equal(t, "app.properties", filteredOptions[1]) + assert.Equal(t, "/validfile", filteredOptions[2]) +}
