Documentation ¶
Index ¶
- type BuildInput
- type BuildOutput
- type BuildSet
- type Constraint
- type Constraints
- type ExistingBuildResolver
- type InputCandidates
- type InputConfig
- type InputConfigs
- type InputMapping
- type InputVersion
- type InputVersionCandidates
- type JobSet
- type ResolvedInputs
- type ResourceVersion
- type Version
- type VersionCandidate
- type VersionCandidates
- func (candidates *VersionCandidates) Add(candidate VersionCandidate)
- func (candidates VersionCandidates) BuildIDs(jobID int) BuildSet
- func (candidates VersionCandidates) ForVersion(versionID int) VersionCandidates
- func (candidates VersionCandidates) IntersectByVersion(other VersionCandidates) VersionCandidates
- func (candidates VersionCandidates) IsEmpty() bool
- func (candidates VersionCandidates) Len() int
- func (candidates *VersionCandidates) Merge(version Version)
- func (candidates VersionCandidates) PruneVersionsOfOtherBuildIDs(jobID int, buildIDs BuildSet) VersionCandidates
- func (candidates VersionCandidates) VersionIDs() *VersionsIter
- type Versions
- type VersionsDB
- func (db VersionsDB) AllVersionsOfResource(resourceID int) VersionCandidates
- func (db VersionsDB) FindVersionOfResource(resourceID int, versionID int) (VersionCandidate, bool)
- func (db VersionsDB) IsVersionFirstOccurrence(versionID int, jobID int, inputName string) bool
- func (db VersionsDB) LatestVersionOfResource(resourceID int) (VersionCandidate, bool)
- func (db VersionsDB) VersionsOfResourcePassedJobs(resourceID int, passed JobSet) VersionCandidates
- type VersionsIter
Constants ¶
This section is empty.
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 Constraint ¶
type Constraints ¶
type Constraints []Constraint
func (Constraints) And ¶
func (cs Constraints) And(constraint Constraint) Constraints
func (Constraints) Check ¶
func (cs Constraints) Check(v Version) bool
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) Pin ¶
func (candidates InputCandidates) Pin(input int, version int)
func (InputCandidates) Reduce ¶
func (candidates InputCandidates) Reduce(depth int, jobs JobSet) (ResolvedInputs, bool)
func (InputCandidates) String ¶
func (candidates InputCandidates) String() string
func (InputCandidates) Unpin ¶
func (candidates InputCandidates) Unpin(input int, inputCandidates InputVersionCandidates)
type InputConfig ¶
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 InputVersionCandidates ¶
type InputVersionCandidates struct { Input string Passed JobSet UseEveryVersion bool PinnedVersionID int ExistingBuildResolver *ExistingBuildResolver VersionCandidates // contains filtered or unexported fields }
func (InputVersionCandidates) IsNext ¶
func (inputVersionCandidates InputVersionCandidates) IsNext(version int, versionIDs *VersionsIter) bool
func (InputVersionCandidates) UsingEveryVersion ¶
func (inputVersionCandidates InputVersionCandidates) UsingEveryVersion() bool
type ResolvedInputs ¶
type ResourceVersion ¶
type Version ¶
type Version struct {
// contains filtered or unexported fields
}
func NewVersion ¶
func NewVersion(candidate VersionCandidate) Version
type VersionCandidate ¶
func (VersionCandidate) String ¶
func (candidate VersionCandidate) String() string
type VersionCandidates ¶
type VersionCandidates struct {
// contains filtered or unexported fields
}
func (*VersionCandidates) Add ¶
func (candidates *VersionCandidates) Add(candidate VersionCandidate)
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(other VersionCandidates) VersionCandidates
func (VersionCandidates) IsEmpty ¶
func (candidates VersionCandidates) IsEmpty() bool
func (VersionCandidates) Len ¶
func (candidates VersionCandidates) Len() int
func (*VersionCandidates) Merge ¶
func (candidates *VersionCandidates) Merge(version Version)
func (VersionCandidates) PruneVersionsOfOtherBuildIDs ¶
func (candidates VersionCandidates) PruneVersionsOfOtherBuildIDs(jobID int, buildIDs BuildSet) VersionCandidates
func (VersionCandidates) VersionIDs ¶
func (candidates VersionCandidates) VersionIDs() *VersionsIter
type Versions ¶
type Versions []Version
func (Versions) With ¶
func (vs Versions) With(candidate VersionCandidate) Versions
type VersionsDB ¶
type VersionsDB struct { ResourceVersions []ResourceVersion BuildOutputs []BuildOutput BuildInputs []BuildInput JobIDs map[string]int ResourceIDs map[string]int CachedAt time.Time }
func (VersionsDB) AllVersionsOfResource ¶
func (db VersionsDB) AllVersionsOfResource(resourceID int) VersionCandidates
func (VersionsDB) FindVersionOfResource ¶
func (db VersionsDB) FindVersionOfResource(resourceID int, versionID int) (VersionCandidate, bool)
func (VersionsDB) IsVersionFirstOccurrence ¶
func (db VersionsDB) IsVersionFirstOccurrence(versionID int, jobID int, inputName string) bool
func (VersionsDB) LatestVersionOfResource ¶
func (db VersionsDB) LatestVersionOfResource(resourceID int) (VersionCandidate, bool)
func (VersionsDB) VersionsOfResourcePassedJobs ¶
func (db VersionsDB) VersionsOfResourcePassedJobs(resourceID int, passed JobSet) VersionCandidates
type VersionsIter ¶
type VersionsIter struct {
// contains filtered or unexported fields
}
func (*VersionsIter) Next ¶
func (iter *VersionsIter) Next() (int, bool)
func (*VersionsIter) Peek ¶
func (iter *VersionsIter) Peek() (int, bool)
Click to show internal directories.
Click to hide internal directories.