You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by nf...@apache.org on 2020/11/05 22:54:10 UTC

[camel-k] 13/19: Only print transitive dependencies.

This is an automated email from the ASF dual-hosted git repository.

nferraro pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel-k.git

commit 1b24a78470059f50271f4f282fb519f3cebc926b
Author: Doru Bercea <gh...@ibm.com>
AuthorDate: Mon Nov 2 12:31:36 2020 -0500

    Only print transitive dependencies.
---
 pkg/builder/runtime/main.go |  6 ++--
 pkg/cmd/inspect.go          | 77 +++++++--------------------------------------
 2 files changed, 14 insertions(+), 69 deletions(-)

diff --git a/pkg/builder/runtime/main.go b/pkg/builder/runtime/main.go
index d6f973a..fdf681b 100644
--- a/pkg/builder/runtime/main.go
+++ b/pkg/builder/runtime/main.go
@@ -109,7 +109,7 @@ func computeDependencies(ctx *builder.Context) error {
 
 	// Process artifacts list and add it to existing artifacts.
 	artifacts := []v1.Artifact{}
-	artifacts, err = ProcessTransitiveDependencies(content, "dependencies")
+	artifacts, err = ProcessTransitiveDependencies(content)
 	if err != nil {
 		return err
 	}
@@ -136,7 +136,7 @@ func ComputeDependenciesCommon(mc maven.Context, runtimeVersion string) ([]byte,
 }
 
 // ProcessTransitiveDependencies --
-func ProcessTransitiveDependencies(content []byte, outputDir string) ([]v1.Artifact, error) {
+func ProcessTransitiveDependencies(content []byte) ([]v1.Artifact, error) {
 	cp := make(map[string][]v1.Artifact)
 	err := yaml2.Unmarshal(content, &cp)
 	if err != nil {
@@ -167,7 +167,7 @@ func ProcessTransitiveDependencies(content []byte, outputDir string) ([]v1.Artif
 		artifacts = append(artifacts, v1.Artifact{
 			ID:       e.ID,
 			Location: e.Location,
-			Target:   path.Join(outputDir, gav.GroupID+"."+fileName),
+			Target:   path.Join("dependencies", gav.GroupID+"."+fileName),
 			Checksum: e.Checksum,
 		})
 	}
diff --git a/pkg/cmd/inspect.go b/pkg/cmd/inspect.go
index 834b98b..8fc25e9 100644
--- a/pkg/cmd/inspect.go
+++ b/pkg/cmd/inspect.go
@@ -57,9 +57,6 @@ will be generated by calling Maven and then copied into the directory pointed to
 			if err := options.validate(args); err != nil {
 				return err
 			}
-			if err := options.initialize(args); err != nil {
-				return err
-			}
 			if err := options.run(args); err != nil {
 				fmt.Println(err.Error())
 			}
@@ -75,7 +72,6 @@ will be generated by calling Maven and then copied into the directory pointed to
 	cmd.Flags().StringArrayP("dependency", "d", nil, `Additional top-level dependency with the format:
 <type>:<dependency-name>
 where <type> is one of {`+strings.Join(acceptedDependencyTypes, "|")+`}.`)
-	cmd.Flags().String("dependencies-directory", "", "Directory that will contain all the computed dependencies. Default: <kamel-invocation-directory>/dependencies")
 	cmd.Flags().StringP("output", "o", "", "Output format. One of: json|yaml")
 
 	return &cmd, &options
@@ -85,7 +81,6 @@ type inspectCmdOptions struct {
 	*RootCmdOptions
 	AllDependencies        bool     `mapstructure:"all-dependencies"`
 	OutputFormat           string   `mapstructure:"output"`
-	DependenciesDirectory  string   `mapstructure:"dependencies-directory"`
 	AdditionalDependencies []string `mapstructure:"dependencies"`
 }
 
@@ -131,33 +126,6 @@ func (command *inspectCmdOptions) validate(args []string) error {
 		}
 	}
 
-	// If provided, ensure that that the dependencies directory exists.
-	if command.DependenciesDirectory != "" {
-		dependenciesDirectoryExists, err := util.DirectoryExists(command.DependenciesDirectory)
-		// Report any error.
-		if err != nil {
-			return err
-		}
-
-		// Signal file not found.
-		if !dependenciesDirectoryExists {
-			return errors.New("input file " + command.DependenciesDirectory + " file does not exist")
-		}
-	}
-
-	return nil
-}
-
-func (command *inspectCmdOptions) initialize(args []string) error {
-	// If --all-dependencies flag is set the dependencies directory needs to have a valid value.
-	// If not provided on the command line, the value needs to be initialized with the default.
-	if command.AllDependencies {
-		// Move the integration dependecies to the dependencies directory.
-		err := createAndSetDependenciesDirectory(command)
-		if err != nil {
-			return err
-		}
-	}
 	return nil
 }
 
@@ -191,7 +159,7 @@ func (command *inspectCmdOptions) run(args []string) error {
 	return nil
 }
 
-func getTopLevelDependencies(catalog *camel.RuntimeCatalog, format string, args []string, outputPlainText bool) ([]string, error) {
+func getTopLevelDependencies(catalog *camel.RuntimeCatalog, format string, args []string, printDependencies bool) ([]string, error) {
 	// List of top-level dependencies.
 	dependencies := strset.New()
 
@@ -214,9 +182,11 @@ func getTopLevelDependencies(catalog *camel.RuntimeCatalog, format string, args
 		dependencies.Merge(trait.AddSourceDependencies(sourceSpec, catalog))
 	}
 
-	err := outputDependencies(dependencies.List(), format, outputPlainText)
-	if err != nil {
-		return []string{}, err
+	if printDependencies {
+		err := outputDependencies(dependencies.List(), format)
+		if err != nil {
+			return []string{}, err
+		}
 	}
 
 	return dependencies.List(), nil
@@ -277,7 +247,7 @@ func getTransitiveDependencies(
 
 	// Compose artifacts list.
 	artifacts := []v1.Artifact{}
-	artifacts, err = runtime.ProcessTransitiveDependencies(content, command.DependenciesDirectory)
+	artifacts, err = runtime.ProcessTransitiveDependencies(content)
 	if err != nil {
 		return err
 	}
@@ -285,20 +255,14 @@ func getTransitiveDependencies(
 	// Dump dependencies in the dependencies directory and construct the list of dependencies.
 	transitiveDependencies := []string{}
 	for _, entry := range artifacts {
-		// Copy dependencies from Maven default directory to the DependenciesDirectory.
-		_, err := util.CopyFile(entry.Location, entry.Target)
-		if err != nil {
-			return err
-		}
-
-		transitiveDependencies = append(transitiveDependencies, entry.Target)
+		transitiveDependencies = append(transitiveDependencies, entry.Location)
 	}
 
 	// Remove directory used for computing the dependencies.
 	defer os.RemoveAll(temporaryDirectory)
 
 	// Output transitive dependencies only if requested via the output format flag.
-	err = outputDependencies(transitiveDependencies, command.OutputFormat, false)
+	err = outputDependencies(transitiveDependencies, command.OutputFormat)
 	if err != nil {
 		return err
 	}
@@ -306,13 +270,13 @@ func getTransitiveDependencies(
 	return nil
 }
 
-func outputDependencies(dependencies []string, format string, outputPlainText bool) error {
+func outputDependencies(dependencies []string, format string) error {
 	if format != "" {
 		err := printDependencies(format, dependencies)
 		if err != nil {
 			return err
 		}
-	} else if outputPlainText {
+	} else {
 		// Print output in text form.
 		for _, dep := range dependencies {
 			fmt.Printf("%v\n", dep)
@@ -351,25 +315,6 @@ func getWorkingDirectory() (string, error) {
 	return currentDirectory, nil
 }
 
-func createAndSetDependenciesDirectory(command *inspectCmdOptions) error {
-	if command.DependenciesDirectory == "" {
-		currentDirectory, err := getWorkingDirectory()
-		if err != nil {
-			return err
-		}
-
-		command.DependenciesDirectory = path.Join(currentDirectory, defaultDependenciesDirectoryName)
-	}
-
-	// Create the dependencies directory if it does not already exist.
-	err := util.CreateDirectory(command.DependenciesDirectory)
-	if err != nil {
-		return err
-	}
-
-	return nil
-}
-
 func createCamelCatalog() (*camel.RuntimeCatalog, error) {
 	// Attempt to reuse existing Camel catalog if one is present.
 	catalog, err := camel.MainCatalog()