artifact

package
v0.4.4 Latest Latest
Warning

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

Go to latest
Published: Jan 6, 2024 License: BSD-3-Clause Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Artifact

type Artifact struct {
	// Checksum is the hex digest Artifact's hashed contents. It is used to
	// locate the Artifact in a Cache.
	Checksum string `yaml:",omitempty" json:"checksum,omitempty"`
	// Path is the file path to the Artifact in the workspace. It is always
	// relative to the project root directory.
	Path string `yaml:",omitempty" json:"path,omitempty"`
	// If IsDir is true then the Artifact is a directory.
	IsDir bool `yaml:"is-dir,omitempty" json:"is-dir,omitempty"`
	// If DisableRecursion is true then the Artifact does not recurse
	// sub-directories.
	DisableRecursion bool `yaml:"disable-recursion,omitempty" json:"disable-recursion,omitempty"`
	// If SkipCache is true then the Artifact is not stored in the Cache. When
	// the Artifact is committed, its checksum is updated, but the Artifact is
	// not moved to the Cache. The checkout operation is a no-op.
	SkipCache bool `yaml:"skip-cache,omitempty" json:"skip-cache,omitempty"`
}

An Artifact is a file or directory that is tracked by Dud.

func (*Artifact) UnmarshalJSON added in v0.2.0

func (a *Artifact) UnmarshalJSON(b []byte) error

UnmarshalJSON enables backwards-compatibility with the original Artifact struct, which did not have struct tags for custom JSON serialization.

type Status

type Status struct {
	Artifact
	// WorkspaceFileStatus represents the status of Artifact's file in the workspace.
	WorkspaceFileStatus fsutil.FileStatus
	// HasChecksum is true if the Artifact has a valid Checksum field, false otherwise.
	// TODO: Might be able to get rid of this if we have the Artifact in question.
	HasChecksum bool
	// ChecksumInCache is true if a cache entry exists for the given checksum, false otherwise.
	ChecksumInCache bool
	// ContentsMatch is true if the workspace and cache files are identical; it
	// is false otherwise. For regular files, true means that the file contents
	// are identical. For links, true means that the workspace link points to
	// the correct cache file.
	ContentsMatch bool
	// ChildrenStatus holds the status of any child artifacts, mapped to their
	// respective file paths.
	ChildrenStatus map[string]*Status
}

Status captures an Artifact's status as it pertains to a Cache and a workspace.

func (Status) String added in v0.2.0

func (stat Status) String() string

Jump to

Keyboard shortcuts

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