func packagesCmd()

in cmd/packages.go [15:44]


func packagesCmd() *cobra.Command {
	var opts packagesOptions
	var packagesCmd = &cobra.Command{
		Use:   "packages",
		Short: "List packages the SBOM",
		Long:  `List packages the SBOM that have external refs`,
		Run: func(cmd *cobra.Command, args []string) {
			sbom, _, _, err := obom.LoadSBOMFromFile(opts.filename, true)
			if err != nil {
				fmt.Println("Error loading SBOM:", err)
				os.Exit(1)
			}

			packages, err := obom.GetPackages(sbom.Document)
			if err != nil {
				fmt.Println("Error getting packages:", err)
				os.Exit(1)
			}

			for _, pkg := range packages {
				fmt.Println(pkg)
			}
		},
	}

	packagesCmd.Flags().StringVarP(&opts.filename, "file", "f", "", "Path to the SPDX SBOM file")
	packagesCmd.MarkFlagRequired("file")

	return packagesCmd
}