sca

package
v1.2.5-sp1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 19, 2023 License: AGPL-3.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Exports = map[string]interface{}{
	"ScanImageFromContext":     ScanDockerImageFromContext,
	"ScanContainerFromContext": ScanDockerContainerFromContext,
	"ScanImageFromFile":        ScanDockerImageFromFile,
	"endpoint":                 _withEndPoint,
	"scanMode":                 _withScanMode,
	"concurrent":               _withConcurrent,
	"analyzers":                _withAnalayzers,

	"ALL_MODE":      analyzer.AllMode,
	"PKG_MODE":      analyzer.PkgMode,
	"LANGUAGE_MODE": analyzer.LanguageMode,

	"DPKG_ALALYZER":             analyzer.TypDPKG,
	"RPM_ALALYZER":              analyzer.TypRPM,
	"APK_ALALYZER":              analyzer.TypAPK,
	"RUBY_BUNDLER_ANALYZER":     analyzer.TypRubyBundler,
	"RUST_CARGO_ANALYZER":       analyzer.TypRustCargo,
	"RUBY_GEMSPEC_ANALYZER":     analyzer.TypRubyGemSpec,
	"PYTHON_POETRY_ANALYZER":    analyzer.TypPythonPoetry,
	"PYTHON_PIPENV_ANALYZER":    analyzer.TypPythonPIPEnv,
	"PYTHON_PIP_ANALYZER":       analyzer.TypPythonPIP,
	"PYTHON_PACKAGING_ANALYZER": analyzer.TypPythonPackaging,
	"PHP_COMPOSER_ANALYZER":     analyzer.TypPHPComposer,
	"NODE_YARN_ANALYZER":        analyzer.TypNodeYarn,
	"NODE_PNPM_ANALYZER":        analyzer.TypNodePnpm,
	"NODE_NPM_ANALYZER":         analyzer.TypNodeNpm,
	"JAVA_POM_ANALYZER":         analyzer.TypJavaPom,
	"JAVA_GRADLE_ANALYZER":      analyzer.TypJavaGradle,
	"JAVA_JAR_ANALYZER":         analyzer.TypJavaJar,
	"GO_MOD_ANALYZER":           analyzer.TypGoMod,
	"GO_BINARY_ANALYZER":        analyzer.TypGoBinary,
	"CLANG_CONAN_ANALYZER":      analyzer.TypClangConan,
}

Functions

func NewDockerClient

func NewDockerClient(host string) (*client.Client, error)

func NewDockerContextConfig

func NewDockerContextConfig() *dockerContextConfig

func ScanDockerContainerFromContext

func ScanDockerContainerFromContext(containerID string, opts ...dockerContextOption) (pkgs []*dxtypes.Package, err error)

func ScanDockerImageFromContext

func ScanDockerImageFromContext(imageID string, opts ...dockerContextOption) ([]*dxtypes.Package, error)

func ScanDockerImageFromFile

func ScanDockerImageFromFile(path string, opts ...dockerContextOption) ([]*dxtypes.Package, error)

Types

type SCAConfig

type SCAConfig struct {
	EnableDocker     bool
	DockerEndpoint   string
	DockerNumWorkers int

	/*
		include inspect by Image Names n Image LocalFiles
	*/
	DockerImages               []string
	DockerImageLocalFile       []string
	DockerSaveImageDirectories string // default to use os.CreateTemp

	/*
		Source Code / Repository FS Open Mount INTO CONTAINERS
		Try to Analyze the Source Code / Repository:

		1. Use Docker API Inspect Container Mounts Config
		2. Use FS Analyzer to make it
		3. Build Deps / SBOM
	*/
	DockerContainers []string

	FileSystemPath   string
	DisableLanguages []string
}

type SCAConfigOption

type SCAConfigOption func(*SCAConfig)

func WithDisableLanguages

func WithDisableLanguages(languages ...string) SCAConfigOption

func WithDocker

func WithDocker(b bool) SCAConfigOption

func WithDockerEndpoint

func WithDockerEndpoint(endpoint string) SCAConfigOption

func WithDockerImages

func WithDockerImages(images ...string) SCAConfigOption

func WithDockerNumWorkers

func WithDockerNumWorkers(n int) SCAConfigOption

func WithFileSystemPath

func WithFileSystemPath(path string) SCAConfigOption

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL