Documentation
¶
Index ¶
- func ProvidesSignalForVersion(configSpec *api.ReleaseBuildConfiguration) string
- type Config
- type Event
- type LifecycleEvent
- type LifecyclePhase
- type MajorMinor
- func (m MajorMinor) GetFutureVersion() string
- func (m MajorMinor) GetPastPastVersion() (string, error)
- func (m MajorMinor) GetPastVersion() (string, error)
- func (m MajorMinor) GetVersion() string
- func (m MajorMinor) Less(other MajorMinor) bool
- func (m MajorMinor) String() string
- func (m MajorMinor) WithIncrementedMinor(increment int) MajorMinor
- type Timeline
- type TimelineByVersion
- type TimelineOptions
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ProvidesSignalForVersion ¶
func ProvidesSignalForVersion(configSpec *api.ReleaseBuildConfiguration) string
ProvidesSignalForVersion returns the OCP version for which a job provides meaningful CI quality signal. Only jobs that test CI or Nightly payloads provide such relevant quality signal, so this method approximates identifying these jobs by checking whether the source ci-operator configuration contains a `latest` release that is a candidate version (which means one of the ci/nightly payloads will be fetched from release-controller).
Types ¶
type Config ¶
type Config map[string]map[string][]LifecyclePhase
Config is an OCP lifecycle config. It holds a top-level product key (e.G. OCP) that maps to versions (e.G. 4.8) and those finally include the lifecycle phases.
func LoadConfig ¶
LoadConfig loads the lifecycle configuration from a given localtion.
func (Config) GetTimeline ¶
func (c Config) GetTimeline(product string, opts ...TimelineOptions) Timeline
GetTimeline returns a list of events in chronological order for a given product name.
func (Config) GetTimelinesByVersion ¶
func (c Config) GetTimelinesByVersion(product string) TimelineByVersion
GetTimeline returns a list of events in chronological order for a given product name mapped by version.
type Event ¶
type Event struct {
ProductVersion string
LifecyclePhase LifecyclePhase
}
Event holds information about the product version and the lifecycle phase.
type LifecycleEvent ¶
type LifecycleEvent string
LifecycleEvent is an event in the lifecycle of a version of a product.
const ( // LifecycleEventOpen marks the moment that development branches open for changes. LifecycleEventOpen LifecycleEvent = "open" // LifecycleEventFeatureFreeze marks the moment that development branches close for new features. // At this point it is expected that only stabilizing bug-fixes land in the branches. LifecycleEventFeatureFreeze LifecycleEvent = "feature-freeze" // LifecycleEventCodeFreeze marks the moment that development branches close for contribution. // At this point it is expected that only urgent stabilizing bug-fixes land in the branches. LifecycleEventCodeFreeze LifecycleEvent = "code-freeze" // LifecycleEventGenerallyAvailable marks the moment that a version is available and the development // branches begin to track the next release. LifecycleEventGenerallyAvailable LifecycleEvent = "generally-available" // LifecycleEventEndOfLife marks the moment that a version is no longer supported and release branches // close for good for this version. LifecycleEventEndOfLife LifecycleEvent = "end-of-life" // LifecycleEventEndOfFullSupport marks the moment that a version is no longer supported fully. LifecycleEventEndOfFullSupport LifecycleEvent = "end-of-full-support" // LifecycleEventEndOfMaintenanceSupport marks the moment that a version is no longer supported. LifecycleEventEndOfMaintenanceSupport LifecycleEvent = "end-of-maintenance-support" )
func (LifecycleEvent) Validate ¶
func (le LifecycleEvent) Validate() error
type LifecyclePhase ¶
type LifecyclePhase struct {
// Event is the name of this phase.
Event LifecycleEvent `json:"event"`
// When is the moment in time when this phase begins. Optional.
When *metav1.Time `json:"when,omitempty"`
}
LifecyclePhase describes a phase in the release lifecycle for a version of a product.
type MajorMinor ¶
func ParseMajorMinor ¶
func ParseMajorMinor(version string) (*MajorMinor, error)
func (MajorMinor) GetFutureVersion ¶
func (m MajorMinor) GetFutureVersion() string
func (MajorMinor) GetPastPastVersion ¶
func (m MajorMinor) GetPastPastVersion() (string, error)
GetPastPastVersion returns the version before the previous version. Returns an error if any step in the chain fails.
func (MajorMinor) GetPastVersion ¶
func (m MajorMinor) GetPastVersion() (string, error)
GetPastVersion returns the previous version using VersionTransitionOverrides. Returns an error if no previous version can be determined (e.g., missing override for X.0).
func (MajorMinor) GetVersion ¶
func (m MajorMinor) GetVersion() string
func (MajorMinor) Less ¶
func (m MajorMinor) Less(other MajorMinor) bool
func (MajorMinor) String ¶
func (m MajorMinor) String() string
func (MajorMinor) WithIncrementedMinor ¶
func (m MajorMinor) WithIncrementedMinor(increment int) MajorMinor
type Timeline ¶
type Timeline []Event
Timeline is a list of events.
func (Timeline) DeterminePlaceInTime ¶
DeterminePlaceInTime returns the the previous and the next event based on the given point in time.
type TimelineByVersion ¶
TimelineByProduct is a list of events mapped by version