parse

package
v0.8.10 Latest Latest
Warning

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

Go to latest
Published: Sep 3, 2021 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Overview

Package parse provides functionality to parse images from collected files.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type IComposefileImageParser

type IComposefileImageParser interface {
	IImageParser
	ParseFile(
		path collect.IPath,
		composefileImages chan<- IImage,
		done <-chan struct{},
		waitGroup *sync.WaitGroup,
	)
}

IComposefileImageParser is an IImageParser for Composefiles.

func NewComposefileImageParser

func NewComposefileImageParser(
	dockerfileImageParser IDockerfileImageParser,
) (IComposefileImageParser, error)

NewComposefileImageParser returns an IImageParser for Composefiles. dockerfileImageParser cannot be nil as it is responsible for parsing Dockerfiles referenced by Composefiles.

type IDockerfileImageParser

type IDockerfileImageParser interface {
	IImageParser
	ParseFile(
		path collect.IPath,
		buildArgs map[string]string,
		dockerfileImages chan<- IImage,
		done <-chan struct{},
		waitGroup *sync.WaitGroup,
	)
}

IDockerfileImageParser is an IImageParser for Dockerfiles.

func NewDockerfileImageParser added in v0.7.2

func NewDockerfileImageParser() IDockerfileImageParser

NewDockerfileImageParser returns an IImageParser for Dockerfiles.

type IImage added in v0.7.2

type IImage interface {
	SetKind(kind kind.Kind)
	Kind() kind.Kind
	SetName(name string)
	Name() string
	SetTag(tag string)
	Tag() string
	SetDigest(digest string)
	Digest() string
	SetMetadata(metadata map[string]interface{})
	Metadata() map[string]interface{}
	ImageLine() string
	SetNameTagDigestFromImageLine(imageLine string)
	SetErr(err error)
	Err() error
}

IImage provides an interface for Images.

func NewImage added in v0.7.2

func NewImage(
	kind kind.Kind,
	name string,
	tag string,
	digest string,
	metadata map[string]interface{},
	err error,
) IImage

NewImage is an image of a specific kind, such as a Dockerfile, Composefile, or Kubernetesfile. The differences in these images can be captured in the metadata.

type IImageParser added in v0.7.2

type IImageParser interface {
	Kind() kind.Kind
	ParseFiles(
		paths <-chan collect.IPath,
		done <-chan struct{},
	) <-chan IImage
}

IImageParser provides an interface for ImageParsers, which are responsible for reading files and extracting Images from them.

type IKubernetesfileImageParser added in v0.7.0

type IKubernetesfileImageParser interface {
	IImageParser
	ParseFile(
		path collect.IPath,
		kubernetesfileImages chan<- IImage,
		done <-chan struct{},
		waitGroup *sync.WaitGroup,
	)
}

IKubernetesfileImageParser is an IImageParser for Kubernetesfiles.

func NewKubernetesfileImageParser added in v0.7.2

func NewKubernetesfileImageParser() IKubernetesfileImageParser

NewComposefileImageParser returns an IImageParser for Kubernetesfiles.

Jump to

Keyboard shortcuts

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