algorithm

package
v0.0.0-...-dbf52f0 Latest Latest
Warning

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

Go to latest
Published: Aug 31, 2016 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

View Source
const VersionEvery = "every"

Variables

This section is empty.

Functions

This section is empty.

Types

type BuildInput

type BuildInput struct {
	ResourceVersion
	BuildID   int
	JobID     int
	InputName string
}

type BuildOutput

type BuildOutput struct {
	ResourceVersion
	BuildID int
	JobID   int
}

type BuildSet

type BuildSet map[int]struct{}

func (BuildSet) Contains

func (set BuildSet) Contains(buildID int) bool

func (BuildSet) Equal

func (set BuildSet) Equal(otherSet BuildSet) bool

func (BuildSet) Intersect

func (set BuildSet) Intersect(otherSet BuildSet) BuildSet

func (BuildSet) String

func (set BuildSet) String() string

func (BuildSet) Union

func (set BuildSet) Union(otherSet BuildSet) BuildSet

type ExistingBuildResolver

type ExistingBuildResolver struct {
	BuildInputs []BuildInput
	JobID       int
	ResourceID  int
}

func (*ExistingBuildResolver) Exists

func (r *ExistingBuildResolver) Exists() bool

func (*ExistingBuildResolver) ExistsForVersion

func (r *ExistingBuildResolver) ExistsForVersion(versionID int) bool

type InputCandidates

type InputCandidates []InputVersionCandidates

func (InputCandidates) Reduce

func (candidates InputCandidates) Reduce(jobs JobSet) (map[string]int, bool)

func (InputCandidates) String

func (candidates InputCandidates) String() string

type InputConfig

type InputConfig struct {
	Name            string
	JobName         string
	Passed          JobSet
	UseEveryVersion bool
	PinnedVersionID int
	ResourceID      int
	JobID           int
}

type InputConfigs

type InputConfigs []InputConfig

func (InputConfigs) Resolve

func (configs InputConfigs) Resolve(db *VersionsDB) (InputMapping, bool)

type InputMapping

type InputMapping map[string]InputVersion

type InputVersion

type InputVersion struct {
	VersionID       int
	FirstOccurrence bool
}

type InputVersionCandidates

type InputVersionCandidates struct {
	Input                 string
	Passed                JobSet
	UseEveryVersion       bool
	PinnedVersionID       int
	ExistingBuildResolver *ExistingBuildResolver

	VersionCandidates
	// contains filtered or unexported fields
}

func (InputVersionCandidates) UsingEveryVersion

func (inputVersionCandidates InputVersionCandidates) UsingEveryVersion() bool

type JobSet

type JobSet map[int]struct{}

func (JobSet) Contains

func (set JobSet) Contains(jobID int) bool

func (JobSet) Equal

func (set JobSet) Equal(otherSet JobSet) bool

func (JobSet) Intersect

func (set JobSet) Intersect(otherSet JobSet) JobSet

func (JobSet) String

func (set JobSet) String() string

func (JobSet) Union

func (set JobSet) Union(otherSet JobSet) JobSet

type ResourceVersion

type ResourceVersion struct {
	VersionID  int
	ResourceID int
	CheckOrder int
}

type Version

type Version struct {
	Every  bool
	Pinned map[string]string
}

type VersionCandidate

type VersionCandidate struct {
	VersionID  int
	BuildID    int
	JobID      int
	CheckOrder int
}

func (VersionCandidate) String

func (candidate VersionCandidate) String() string

type VersionCandidates

type VersionCandidates map[VersionCandidate]struct{}

func (VersionCandidates) BuildIDs

func (candidates VersionCandidates) BuildIDs(jobID int) BuildSet

func (VersionCandidates) ForVersion

func (candidates VersionCandidates) ForVersion(versionID int) VersionCandidates

func (VersionCandidates) IntersectByVersion

func (candidates VersionCandidates) IntersectByVersion(otherVersions VersionCandidates) VersionCandidates

func (VersionCandidates) JobIDs

func (candidates VersionCandidates) JobIDs() JobSet

func (VersionCandidates) PruneVersionsOfOtherBuildIDs

func (candidates VersionCandidates) PruneVersionsOfOtherBuildIDs(jobID int, builds BuildSet) VersionCandidates

func (VersionCandidates) VersionIDs

func (candidates VersionCandidates) VersionIDs() []int

type VersionsDB

type VersionsDB struct {
	ResourceVersions []ResourceVersion
	BuildOutputs     []BuildOutput
	BuildInputs      []BuildInput
	JobIDs           map[string]int
	ResourceIDs      map[string]int
	CachedAt         time.Time
}

func (VersionsDB) AllVersionsForResource

func (db VersionsDB) AllVersionsForResource(resourceID int) VersionCandidates

func (VersionsDB) IsVersionFirstOccurrence

func (db VersionsDB) IsVersionFirstOccurrence(versionID int, jobID int, inputName string) bool

func (VersionsDB) VersionsOfResourcePassedJobs

func (db VersionsDB) VersionsOfResourcePassedJobs(resourceID int, passed JobSet) VersionCandidates

Jump to

Keyboard shortcuts

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