Documentation
¶
Overview ¶
Package generate provides functionality to generate a Lockfile.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AnyImage ¶
type AnyImage struct {
DockerfileImage *parse.DockerfileImage
ComposefileImage *parse.ComposefileImage
Err error
}
AnyImage contains any possible type of parser.
type Generator ¶
type Generator struct {
PathCollector IPathCollector
ImageParser IImageParser
ImageDigestUpdater IImageDigestUpdater
}
Generator creates a Lockfile.
func NewGenerator ¶
func NewGenerator( pathCollector IPathCollector, imageParser IImageParser, imageDigestUpdater IImageDigestUpdater, ) (*Generator, error)
NewGenerator returns a Generator after validating its fields.
type IGenerator ¶
IGenerator provides an interface for Generator's exported methods, which are used by docker-lock's cli as well as Verifier.
type IImageDigestUpdater ¶
type IImageDigestUpdater interface {
UpdateDigests(
anyImages <-chan *AnyImage, done <-chan struct{},
) <-chan *AnyImage
}
IImageDigestUpdater provides an interface for ImageDigestUpdater's exported methods, which are used by Generator.
type IImageParser ¶
type IImageParser interface {
ParseFiles(anyPaths <-chan *AnyPath, done <-chan struct{}) <-chan *AnyImage
}
IImageParser provides an interface for Parser's exported methods, which are used by Generator.
type IPathCollector ¶
type IPathCollector interface {
CollectPaths(done <-chan struct{}) <-chan *AnyPath
}
IPathCollector provides an interface for PathCollector's exported methods, which are used by Generator.
type ImageDigestUpdater ¶
type ImageDigestUpdater struct {
ImageDigestUpdater update.IImageDigestUpdater
}
ImageDigestUpdater contains an ImageDigestUpdater for all Images.
func NewImageDigestUpdater ¶
func NewImageDigestUpdater( imageDigestUpdater update.IImageDigestUpdater, ) (*ImageDigestUpdater, error)
NewImageDigestUpdater returns an ImageDigestUpdater after validating its fields.
func (*ImageDigestUpdater) UpdateDigests ¶
func (i *ImageDigestUpdater) UpdateDigests( anyImages <-chan *AnyImage, done <-chan struct{}, ) <-chan *AnyImage
UpdateDigests updates digests for DockerfileImages and ComposefileImages.
type ImageParser ¶
type ImageParser struct {
DockerfileImageParser parse.IDockerfileImageParser
ComposefileImageParser parse.IComposefileImageParser
}
ImageParser contains ImageParsers for Dockerfiles and docker-compose files.
func (*ImageParser) ParseFiles ¶
func (i *ImageParser) ParseFiles( anyPaths <-chan *AnyPath, done <-chan struct{}, ) <-chan *AnyImage
ParseFiles parses Dockerfiles and docker-compose files for Images.
type Lockfile ¶
type Lockfile struct {
DockerfileImages map[string][]*parse.DockerfileImage `json:"dockerfiles,omitempty"` // nolint: lll
ComposefileImages map[string][]*parse.ComposefileImage `json:"composefiles,omitempty"` // nolint: lll
}
Lockfile represents the canonical 'docker-lock.json'. It provides the capability to write its contents in JSON format.
func NewLockfile ¶
NewLockfile sorts DockerfileImages and Composefile images and returns a Lockfile.
type PathCollector ¶
type PathCollector struct {
DockerfileCollector collect.IPathCollector
ComposefileCollector collect.IPathCollector
}
PathCollector contains PathCollectors for Dockerfiles and docker-compose files.
func (*PathCollector) CollectPaths ¶
func (p *PathCollector) CollectPaths(done <-chan struct{}) <-chan *AnyPath
CollectPaths collects paths to be parsed.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package collect provides functionality to collect file paths for processing.
|
Package collect provides functionality to collect file paths for processing. |
|
Package parse provides functionality to parse images from collected files.
|
Package parse provides functionality to parse images from collected files. |
|
Package registry provides functionality to get digests from registries.
|
Package registry provides functionality to get digests from registries. |
|
contrib
Package contrib provides functionality for getting digests from registries supported by docker-lock's community.
|
Package contrib provides functionality for getting digests from registries supported by docker-lock's community. |
|
firstparty
Package firstparty provides functionality for getting digests from registries supported by docker-lock's maintainers.
|
Package firstparty provides functionality for getting digests from registries supported by docker-lock's maintainers. |
|
Package update provides functionality to update images with digests.
|
Package update provides functionality to update images with digests. |