v1alpha1

package
v0.27.6 Latest Latest
Warning

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

Go to latest
Published: Oct 20, 2023 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the actions v1alpha1 API group +kubebuilder:object:generate=true +groupName=actions.summerwind.dev

Index

Constants

View Source
const (
	AutoscalingMetricTypeTotalNumberOfQueuedAndInProgressWorkflowRuns = "TotalNumberOfQueuedAndInProgressWorkflowRuns"
	AutoscalingMetricTypePercentageRunnersBusy                        = "PercentageRunnersBusy"
)
View Source
const CacheEntryKeyDesiredReplicas = "desiredReplicas"

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "actions.summerwind.dev", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type CacheEntry

type CacheEntry struct {
	Key            string      `json:"key,omitempty"`
	Value          int         `json:"value,omitempty"`
	ExpirationTime metav1.Time `json:"expirationTime,omitempty"`
}

func (*CacheEntry) DeepCopy

func (in *CacheEntry) DeepCopy() *CacheEntry

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CacheEntry.

func (*CacheEntry) DeepCopyInto

func (in *CacheEntry) DeepCopyInto(out *CacheEntry)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CapacityReservation

type CapacityReservation struct {
	Name           string      `json:"name,omitempty"`
	ExpirationTime metav1.Time `json:"expirationTime,omitempty"`
	Replicas       int         `json:"replicas,omitempty"`

	// +optional
	EffectiveTime metav1.Time `json:"effectiveTime,omitempty"`
}

CapacityReservation specifies the number of replicas temporarily added to the scale target until ExpirationTime.

func (*CapacityReservation) DeepCopy

func (in *CapacityReservation) DeepCopy() *CapacityReservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CapacityReservation.

func (*CapacityReservation) DeepCopyInto

func (in *CapacityReservation) DeepCopyInto(out *CapacityReservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CheckRunSpec

type CheckRunSpec struct {
	// One of: created, rerequested, or completed
	Types  []string `json:"types,omitempty"`
	Status string   `json:"status,omitempty"`

	// Names is a list of GitHub Actions glob patterns.
	// Any check_run event whose name matches one of patterns in the list can trigger autoscaling.
	// Note that check_run name seem to equal to the job name you've defined in your actions workflow yaml file.
	// So it is very likely that you can utilize this to trigger depending on the job.
	Names []string `json:"names,omitempty"`

	// Repositories is a list of GitHub repositories.
	// Any check_run event whose repository matches one of repositories in the list can trigger autoscaling.
	Repositories []string `json:"repositories,omitempty"`
}

https://docs.github.com/en/actions/reference/events-that-trigger-workflows#check_run

func (*CheckRunSpec) DeepCopy

func (in *CheckRunSpec) DeepCopy() *CheckRunSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CheckRunSpec.

func (*CheckRunSpec) DeepCopyInto

func (in *CheckRunSpec) DeepCopyInto(out *CheckRunSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitHubAPICredentialsFrom

type GitHubAPICredentialsFrom struct {
	SecretRef SecretReference `json:"secretRef,omitempty"`
}

func (*GitHubAPICredentialsFrom) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitHubAPICredentialsFrom.

func (*GitHubAPICredentialsFrom) DeepCopyInto

func (in *GitHubAPICredentialsFrom) DeepCopyInto(out *GitHubAPICredentialsFrom)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitHubEventScaleUpTriggerSpec

type GitHubEventScaleUpTriggerSpec struct {
	CheckRun    *CheckRunSpec    `json:"checkRun,omitempty"`
	PullRequest *PullRequestSpec `json:"pullRequest,omitempty"`
	Push        *PushSpec        `json:"push,omitempty"`
	WorkflowJob *WorkflowJobSpec `json:"workflowJob,omitempty"`
}

func (*GitHubEventScaleUpTriggerSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitHubEventScaleUpTriggerSpec.

func (*GitHubEventScaleUpTriggerSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HorizontalRunnerAutoscaler

type HorizontalRunnerAutoscaler struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   HorizontalRunnerAutoscalerSpec   `json:"spec,omitempty"`
	Status HorizontalRunnerAutoscalerStatus `json:"status,omitempty"`
}

HorizontalRunnerAutoscaler is the Schema for the horizontalrunnerautoscaler API

func (*HorizontalRunnerAutoscaler) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HorizontalRunnerAutoscaler.

func (*HorizontalRunnerAutoscaler) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*HorizontalRunnerAutoscaler) DeepCopyObject

func (in *HorizontalRunnerAutoscaler) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type HorizontalRunnerAutoscalerList

type HorizontalRunnerAutoscalerList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []HorizontalRunnerAutoscaler `json:"items"`
}

HorizontalRunnerAutoscalerList contains a list of HorizontalRunnerAutoscaler

func (*HorizontalRunnerAutoscalerList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HorizontalRunnerAutoscalerList.

func (*HorizontalRunnerAutoscalerList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*HorizontalRunnerAutoscalerList) DeepCopyObject

func (in *HorizontalRunnerAutoscalerList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type HorizontalRunnerAutoscalerSpec

type HorizontalRunnerAutoscalerSpec struct {
	// ScaleTargetRef is the reference to scaled resource like RunnerDeployment
	ScaleTargetRef ScaleTargetRef `json:"scaleTargetRef,omitempty"`

	// MinReplicas is the minimum number of replicas the deployment is allowed to scale
	// +optional
	MinReplicas *int `json:"minReplicas,omitempty"`

	// MaxReplicas is the maximum number of replicas the deployment is allowed to scale
	// +optional
	MaxReplicas *int `json:"maxReplicas,omitempty"`

	// ScaleDownDelaySecondsAfterScaleUp is the approximate delay for a scale down followed by a scale up
	// Used to prevent flapping (down->up->down->... loop)
	// +optional
	ScaleDownDelaySecondsAfterScaleUp *int `json:"scaleDownDelaySecondsAfterScaleOut,omitempty"`

	// Metrics is the collection of various metric targets to calculate desired number of runners
	// +optional
	Metrics []MetricSpec `json:"metrics,omitempty"`

	// ScaleUpTriggers is an experimental feature to increase the desired replicas by 1
	// on each webhook requested received by the webhookBasedAutoscaler.
	//
	// This feature requires you to also enable and deploy the webhookBasedAutoscaler onto your cluster.
	//
	// Note that the added runners remain until the next sync period at least,
	// and they may or may not be used by GitHub Actions depending on the timing.
	// They are intended to be used to gain "resource slack" immediately after you
	// receive a webhook from GitHub, so that you can loosely expect MinReplicas runners to be always available.
	ScaleUpTriggers []ScaleUpTrigger `json:"scaleUpTriggers,omitempty"`

	CapacityReservations []CapacityReservation `json:"capacityReservations,omitempty" patchStrategy:"merge" patchMergeKey:"name"`

	// ScheduledOverrides is the list of ScheduledOverride.
	// It can be used to override a few fields of HorizontalRunnerAutoscalerSpec on schedule.
	// The earlier a scheduled override is, the higher it is prioritized.
	// +optional
	ScheduledOverrides []ScheduledOverride `json:"scheduledOverrides,omitempty"`

	// +optional
	GitHubAPICredentialsFrom *GitHubAPICredentialsFrom `json:"githubAPICredentialsFrom,omitempty"`
}

HorizontalRunnerAutoscalerSpec defines the desired state of HorizontalRunnerAutoscaler

func (*HorizontalRunnerAutoscalerSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HorizontalRunnerAutoscalerSpec.

func (*HorizontalRunnerAutoscalerSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HorizontalRunnerAutoscalerStatus

type HorizontalRunnerAutoscalerStatus struct {
	// ObservedGeneration is the most recent generation observed for the target. It corresponds to e.g.
	// RunnerDeployment's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`

	// DesiredReplicas is the total number of desired, non-terminated and latest pods to be set for the primary RunnerSet
	// This doesn't include outdated pods while upgrading the deployment and replacing the runnerset.
	// +optional
	DesiredReplicas *int `json:"desiredReplicas,omitempty"`

	// +optional
	// +nullable
	LastSuccessfulScaleOutTime *metav1.Time `json:"lastSuccessfulScaleOutTime,omitempty"`

	// +optional
	CacheEntries []CacheEntry `json:"cacheEntries,omitempty"`

	// ScheduledOverridesSummary is the summary of active and upcoming scheduled overrides to be shown in e.g. a column of a `kubectl get hra` output
	// for observability.
	// +optional
	ScheduledOverridesSummary *string `json:"scheduledOverridesSummary,omitempty"`
}

func (*HorizontalRunnerAutoscalerStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HorizontalRunnerAutoscalerStatus.

func (*HorizontalRunnerAutoscalerStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MetricSpec

type MetricSpec struct {
	// Type is the type of metric to be used for autoscaling.
	// It can be TotalNumberOfQueuedAndInProgressWorkflowRuns or PercentageRunnersBusy.
	Type string `json:"type,omitempty"`

	// RepositoryNames is the list of repository names to be used for calculating the metric.
	// For example, a repository name is the REPO part of `github.com/USER/REPO`.
	// +optional
	RepositoryNames []string `json:"repositoryNames,omitempty"`

	// ScaleUpThreshold is the percentage of busy runners greater than which will
	// trigger the hpa to scale runners up.
	// +optional
	ScaleUpThreshold string `json:"scaleUpThreshold,omitempty"`

	// ScaleDownThreshold is the percentage of busy runners less than which will
	// trigger the hpa to scale the runners down.
	// +optional
	ScaleDownThreshold string `json:"scaleDownThreshold,omitempty"`

	// ScaleUpFactor is the multiplicative factor applied to the current number of runners used
	// to determine how many pods should be added.
	// +optional
	ScaleUpFactor string `json:"scaleUpFactor,omitempty"`

	// ScaleDownFactor is the multiplicative factor applied to the current number of runners used
	// to determine how many pods should be removed.
	// +optional
	ScaleDownFactor string `json:"scaleDownFactor,omitempty"`

	// ScaleUpAdjustment is the number of runners added on scale-up.
	// You can only specify either ScaleUpFactor or ScaleUpAdjustment.
	// +optional
	ScaleUpAdjustment int `json:"scaleUpAdjustment,omitempty"`

	// ScaleDownAdjustment is the number of runners removed on scale-down.
	// You can only specify either ScaleDownFactor or ScaleDownAdjustment.
	// +optional
	ScaleDownAdjustment int `json:"scaleDownAdjustment,omitempty"`
}

func (*MetricSpec) DeepCopy

func (in *MetricSpec) DeepCopy() *MetricSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricSpec.

func (*MetricSpec) DeepCopyInto

func (in *MetricSpec) DeepCopyInto(out *MetricSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PullRequestSpec

type PullRequestSpec struct {
	Types    []string `json:"types,omitempty"`
	Branches []string `json:"branches,omitempty"`
}

https://docs.github.com/en/actions/reference/events-that-trigger-workflows#pull_request

func (*PullRequestSpec) DeepCopy

func (in *PullRequestSpec) DeepCopy() *PullRequestSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PullRequestSpec.

func (*PullRequestSpec) DeepCopyInto

func (in *PullRequestSpec) DeepCopyInto(out *PullRequestSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PushSpec

type PushSpec struct {
}

PushSpec is the condition for triggering scale-up on push event Also see https://docs.github.com/en/actions/reference/events-that-trigger-workflows#push

func (*PushSpec) DeepCopy

func (in *PushSpec) DeepCopy() *PushSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PushSpec.

func (*PushSpec) DeepCopyInto

func (in *PushSpec) DeepCopyInto(out *PushSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RecurrenceRule

type RecurrenceRule struct {
	// Frequency is the name of a predefined interval of each recurrence.
	// The valid values are "Daily", "Weekly", "Monthly", and "Yearly".
	// If empty, the corresponding override happens only once.
	// +optional
	// +kubebuilder:validation:Enum=Daily;Weekly;Monthly;Yearly
	Frequency string `json:"frequency,omitempty"`

	// UntilTime is the time of the final recurrence.
	// If empty, the schedule recurs forever.
	// +optional
	UntilTime metav1.Time `json:"untilTime,omitempty"`
}

func (*RecurrenceRule) DeepCopy

func (in *RecurrenceRule) DeepCopy() *RecurrenceRule

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecurrenceRule.

func (*RecurrenceRule) DeepCopyInto

func (in *RecurrenceRule) DeepCopyInto(out *RecurrenceRule)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Runner

type Runner struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   RunnerSpec   `json:"spec,omitempty"`
	Status RunnerStatus `json:"status,omitempty"`
}

Runner is the Schema for the runners API

func (*Runner) DeepCopy

func (in *Runner) DeepCopy() *Runner

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Runner.

func (*Runner) DeepCopyInto

func (in *Runner) DeepCopyInto(out *Runner)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Runner) DeepCopyObject

func (in *Runner) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Runner) Default

func (r *Runner) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (Runner) IsRegisterable

func (r Runner) IsRegisterable() bool

func (*Runner) SetupWebhookWithManager

func (r *Runner) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Runner) Validate

func (r *Runner) Validate() error

Validate validates resource spec.

func (*Runner) ValidateCreate

func (r *Runner) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Runner) ValidateDelete

func (r *Runner) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Runner) ValidateUpdate

func (r *Runner) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RunnerConfig

type RunnerConfig struct {
	// +optional
	// +kubebuilder:validation:Pattern=`^[^/]+$`
	Enterprise string `json:"enterprise,omitempty"`

	// +optional
	// +kubebuilder:validation:Pattern=`^[^/]+$`
	Organization string `json:"organization,omitempty"`

	// +optional
	// +kubebuilder:validation:Pattern=`^[^/]+/[^/]+$`
	Repository string `json:"repository,omitempty"`

	// +optional
	Labels []string `json:"labels,omitempty"`

	// +optional
	Group string `json:"group,omitempty"`

	// +optional
	Ephemeral *bool `json:"ephemeral,omitempty"`

	// +optional
	Image string `json:"image"`

	// +optional
	WorkDir string `json:"workDir,omitempty"`

	// +optional
	DockerdWithinRunnerContainer *bool `json:"dockerdWithinRunnerContainer,omitempty"`
	// +optional
	DockerEnabled *bool `json:"dockerEnabled,omitempty"`
	// +optional
	DockerMTU *int64 `json:"dockerMTU,omitempty"`
	// +optional
	DockerRegistryMirror *string `json:"dockerRegistryMirror,omitempty"`
	// +optional
	DockerVarRunVolumeSizeLimit *resource.Quantity `json:"dockerVarRunVolumeSizeLimit,omitempty"`
	// +optional
	VolumeSizeLimit *resource.Quantity `json:"volumeSizeLimit,omitempty"`
	// +optional
	VolumeStorageMedium *string `json:"volumeStorageMedium,omitempty"`

	// +optional
	ContainerMode string `json:"containerMode,omitempty"`

	GitHubAPICredentialsFrom *GitHubAPICredentialsFrom `json:"githubAPICredentialsFrom,omitempty"`
}

func (*RunnerConfig) DeepCopy

func (in *RunnerConfig) DeepCopy() *RunnerConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerConfig.

func (*RunnerConfig) DeepCopyInto

func (in *RunnerConfig) DeepCopyInto(out *RunnerConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RunnerDeployment

type RunnerDeployment struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   RunnerDeploymentSpec   `json:"spec,omitempty"`
	Status RunnerDeploymentStatus `json:"status,omitempty"`
}

RunnerDeployment is the Schema for the runnerdeployments API

func (*RunnerDeployment) DeepCopy

func (in *RunnerDeployment) DeepCopy() *RunnerDeployment

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerDeployment.

func (*RunnerDeployment) DeepCopyInto

func (in *RunnerDeployment) DeepCopyInto(out *RunnerDeployment)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RunnerDeployment) DeepCopyObject

func (in *RunnerDeployment) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RunnerDeployment) Default

func (r *RunnerDeployment) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*RunnerDeployment) SetupWebhookWithManager

func (r *RunnerDeployment) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RunnerDeployment) Validate

func (r *RunnerDeployment) Validate() error

Validate validates resource spec.

func (*RunnerDeployment) ValidateCreate

func (r *RunnerDeployment) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RunnerDeployment) ValidateDelete

func (r *RunnerDeployment) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RunnerDeployment) ValidateUpdate

func (r *RunnerDeployment) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RunnerDeploymentList

type RunnerDeploymentList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []RunnerDeployment `json:"items"`
}

RunnerList contains a list of Runner

func (*RunnerDeploymentList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerDeploymentList.

func (*RunnerDeploymentList) DeepCopyInto

func (in *RunnerDeploymentList) DeepCopyInto(out *RunnerDeploymentList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RunnerDeploymentList) DeepCopyObject

func (in *RunnerDeploymentList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RunnerDeploymentSpec

type RunnerDeploymentSpec struct {
	// +optional
	// +nullable
	Replicas *int `json:"replicas,omitempty"`

	// EffectiveTime is the time the upstream controller requested to sync Replicas.
	// It is usually populated by the webhook-based autoscaler via HRA.
	// The value is inherited to RunnerReplicaSet(s) and used to prevent ephemeral runners from unnecessarily recreated.
	//
	// +optional
	// +nullable
	EffectiveTime *metav1.Time `json:"effectiveTime"`

	// +optional
	// +nullable
	Selector *metav1.LabelSelector `json:"selector"`
	Template RunnerTemplate        `json:"template"`
}

RunnerDeploymentSpec defines the desired state of RunnerDeployment

func (*RunnerDeploymentSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerDeploymentSpec.

func (*RunnerDeploymentSpec) DeepCopyInto

func (in *RunnerDeploymentSpec) DeepCopyInto(out *RunnerDeploymentSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RunnerDeploymentStatus

type RunnerDeploymentStatus struct {

	// AvailableReplicas is the total number of available runners which have been successfully registered to GitHub and still running.
	// This corresponds to the sum of status.availableReplicas of all the runner replica sets.
	// +optional
	AvailableReplicas *int `json:"availableReplicas"`

	// ReadyReplicas is the total number of available runners which have been successfully registered to GitHub and still running.
	// This corresponds to the sum of status.readyReplicas of all the runner replica sets.
	// +optional
	ReadyReplicas *int `json:"readyReplicas"`

	// ReadyReplicas is the total number of available runners which have been successfully registered to GitHub and still running.
	// This corresponds to status.replicas of the runner replica set that has the desired template hash.
	// +optional
	UpdatedReplicas *int `json:"updatedReplicas"`

	// DesiredReplicas is the total number of desired, non-terminated and latest pods to be set for the primary RunnerSet
	// This doesn't include outdated pods while upgrading the deployment and replacing the runnerset.
	// +optional
	DesiredReplicas *int `json:"desiredReplicas"`

	// Replicas is the total number of replicas
	// +optional
	Replicas *int `json:"replicas"`
}

func (*RunnerDeploymentStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerDeploymentStatus.

func (*RunnerDeploymentStatus) DeepCopyInto

func (in *RunnerDeploymentStatus) DeepCopyInto(out *RunnerDeploymentStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RunnerList

type RunnerList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Runner `json:"items"`
}

RunnerList contains a list of Runner

func (*RunnerList) DeepCopy

func (in *RunnerList) DeepCopy() *RunnerList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerList.

func (*RunnerList) DeepCopyInto

func (in *RunnerList) DeepCopyInto(out *RunnerList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RunnerList) DeepCopyObject

func (in *RunnerList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RunnerPodSpec

type RunnerPodSpec struct {
	// +optional
	DockerdContainerResources corev1.ResourceRequirements `json:"dockerdContainerResources,omitempty"`

	// +optional
	DockerVolumeMounts []corev1.VolumeMount `json:"dockerVolumeMounts,omitempty"`

	// +optional
	DockerEnv []corev1.EnvVar `json:"dockerEnv,omitempty"`

	// +optional
	Containers []corev1.Container `json:"containers,omitempty"`

	// +optional
	ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty"`

	// +optional
	Env []corev1.EnvVar `json:"env,omitempty"`

	// +optional
	EnvFrom []corev1.EnvFromSource `json:"envFrom,omitempty"`

	// +optional
	Resources corev1.ResourceRequirements `json:"resources,omitempty"`

	// +optional
	VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"`

	// +optional
	Volumes []corev1.Volume `json:"volumes,omitempty"`

	// +optional
	EnableServiceLinks *bool `json:"enableServiceLinks,omitempty"`

	// +optional
	InitContainers []corev1.Container `json:"initContainers,omitempty"`

	// +optional
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`

	// +optional
	ServiceAccountName string `json:"serviceAccountName,omitempty"`

	// +optional
	AutomountServiceAccountToken *bool `json:"automountServiceAccountToken,omitempty"`

	// +optional
	SidecarContainers []corev1.Container `json:"sidecarContainers,omitempty"`

	// +optional
	SecurityContext *corev1.PodSecurityContext `json:"securityContext,omitempty"`

	// +optional
	ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"`

	// +optional
	Affinity *corev1.Affinity `json:"affinity,omitempty"`

	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty"`

	// +optional
	PriorityClassName string `json:"priorityClassName,omitempty"`

	// +optional
	TerminationGracePeriodSeconds *int64 `json:"terminationGracePeriodSeconds,omitempty"`

	// +optional
	EphemeralContainers []corev1.EphemeralContainer `json:"ephemeralContainers,omitempty"`

	// +optional
	HostAliases []corev1.HostAlias `json:"hostAliases,omitempty"`

	// +optional
	TopologySpreadConstraints []corev1.TopologySpreadConstraint `json:"topologySpreadConstraints,omitempty"`

	// RuntimeClassName is the container runtime configuration that containers should run under.
	// More info: https://kubernetes.io/docs/concepts/containers/runtime-class
	// +optional
	RuntimeClassName *string `json:"runtimeClassName,omitempty"`

	// +optional
	DnsPolicy corev1.DNSPolicy `json:"dnsPolicy,omitempty"`

	// +optional
	DnsConfig *corev1.PodDNSConfig `json:"dnsConfig,omitempty"`

	// +optional
	WorkVolumeClaimTemplate *WorkVolumeClaimTemplate `json:"workVolumeClaimTemplate,omitempty"`
}

RunnerPodSpec defines the desired pod spec fields of the runner pod

func (*RunnerPodSpec) DeepCopy

func (in *RunnerPodSpec) DeepCopy() *RunnerPodSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerPodSpec.

func (*RunnerPodSpec) DeepCopyInto

func (in *RunnerPodSpec) DeepCopyInto(out *RunnerPodSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RunnerReplicaSet

type RunnerReplicaSet struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   RunnerReplicaSetSpec   `json:"spec,omitempty"`
	Status RunnerReplicaSetStatus `json:"status,omitempty"`
}

RunnerReplicaSet is the Schema for the runnerreplicasets API

func (*RunnerReplicaSet) DeepCopy

func (in *RunnerReplicaSet) DeepCopy() *RunnerReplicaSet

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerReplicaSet.

func (*RunnerReplicaSet) DeepCopyInto

func (in *RunnerReplicaSet) DeepCopyInto(out *RunnerReplicaSet)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RunnerReplicaSet) DeepCopyObject

func (in *RunnerReplicaSet) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RunnerReplicaSet) Default

func (r *RunnerReplicaSet) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*RunnerReplicaSet) SetupWebhookWithManager

func (r *RunnerReplicaSet) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RunnerReplicaSet) Validate

func (r *RunnerReplicaSet) Validate() error

Validate validates resource spec.

func (*RunnerReplicaSet) ValidateCreate

func (r *RunnerReplicaSet) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RunnerReplicaSet) ValidateDelete

func (r *RunnerReplicaSet) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RunnerReplicaSet) ValidateUpdate

func (r *RunnerReplicaSet) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RunnerReplicaSetList

type RunnerReplicaSetList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []RunnerReplicaSet `json:"items"`
}

RunnerList contains a list of Runner

func (*RunnerReplicaSetList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerReplicaSetList.

func (*RunnerReplicaSetList) DeepCopyInto

func (in *RunnerReplicaSetList) DeepCopyInto(out *RunnerReplicaSetList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RunnerReplicaSetList) DeepCopyObject

func (in *RunnerReplicaSetList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RunnerReplicaSetSpec

type RunnerReplicaSetSpec struct {
	// +optional
	// +nullable
	Replicas *int `json:"replicas,omitempty"`

	// EffectiveTime is the time the upstream controller requested to sync Replicas.
	// It is usually populated by the webhook-based autoscaler via HRA and RunnerDeployment.
	// The value is used to prevent runnerreplicaset controller from unnecessarily recreating ephemeral runners
	// based on potentially outdated Replicas value.
	//
	// +optional
	// +nullable
	EffectiveTime *metav1.Time `json:"effectiveTime"`

	// +optional
	// +nullable
	Selector *metav1.LabelSelector `json:"selector"`
	Template RunnerTemplate        `json:"template"`
}

RunnerReplicaSetSpec defines the desired state of RunnerReplicaSet

func (*RunnerReplicaSetSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerReplicaSetSpec.

func (*RunnerReplicaSetSpec) DeepCopyInto

func (in *RunnerReplicaSetSpec) DeepCopyInto(out *RunnerReplicaSetSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RunnerReplicaSetStatus

type RunnerReplicaSetStatus struct {

	// Replicas is the number of runners that are created and still being managed by this runner replica set.
	// +optional
	Replicas *int `json:"replicas"`

	// ReadyReplicas is the number of runners that are created and Runnning.
	ReadyReplicas *int `json:"readyReplicas"`

	// AvailableReplicas is the number of runners that are created and Runnning.
	// This is currently same as ReadyReplicas but perserved for future use.
	AvailableReplicas *int `json:"availableReplicas"`
}

func (*RunnerReplicaSetStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerReplicaSetStatus.

func (*RunnerReplicaSetStatus) DeepCopyInto

func (in *RunnerReplicaSetStatus) DeepCopyInto(out *RunnerReplicaSetStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RunnerSet

type RunnerSet struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   RunnerSetSpec   `json:"spec,omitempty"`
	Status RunnerSetStatus `json:"status,omitempty"`
}

RunnerSet is the Schema for the runnersets API

func (*RunnerSet) DeepCopy

func (in *RunnerSet) DeepCopy() *RunnerSet

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerSet.

func (*RunnerSet) DeepCopyInto

func (in *RunnerSet) DeepCopyInto(out *RunnerSet)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RunnerSet) DeepCopyObject

func (in *RunnerSet) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RunnerSetList

type RunnerSetList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []RunnerSet `json:"items"`
}

RunnerList contains a list of Runner

func (*RunnerSetList) DeepCopy

func (in *RunnerSetList) DeepCopy() *RunnerSetList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerSetList.

func (*RunnerSetList) DeepCopyInto

func (in *RunnerSetList) DeepCopyInto(out *RunnerSetList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RunnerSetList) DeepCopyObject

func (in *RunnerSetList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RunnerSetSpec

type RunnerSetSpec struct {
	RunnerConfig `json:",inline"`

	// EffectiveTime is the time the upstream controller requested to sync Replicas.
	// It is usually populated by the webhook-based autoscaler via HRA.
	// It is used to prevent ephemeral runners from unnecessarily recreated.
	//
	// +optional
	// +nullable
	EffectiveTime *metav1.Time `json:"effectiveTime,omitempty"`

	// +optional
	ServiceAccountName string `json:"serviceAccountName,omitempty"`

	// +optional
	WorkVolumeClaimTemplate *WorkVolumeClaimTemplate `json:"workVolumeClaimTemplate,omitempty"`

	appsv1.StatefulSetSpec `json:",inline"`
}

RunnerSetSpec defines the desired state of RunnerSet

func (*RunnerSetSpec) DeepCopy

func (in *RunnerSetSpec) DeepCopy() *RunnerSetSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerSetSpec.

func (*RunnerSetSpec) DeepCopyInto

func (in *RunnerSetSpec) DeepCopyInto(out *RunnerSetSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RunnerSetStatus

type RunnerSetStatus struct {

	// AvailableReplicas is the total number of available runners which have been successfully registered to GitHub and still running.
	// This corresponds to the sum of status.availableReplicas of all the runner replica sets.
	// +optional
	CurrentReplicas *int `json:"availableReplicas"`

	// ReadyReplicas is the total number of available runners which have been successfully registered to GitHub and still running.
	// This corresponds to the sum of status.readyReplicas of all the runner replica sets.
	// +optional
	ReadyReplicas *int `json:"readyReplicas"`

	// ReadyReplicas is the total number of available runners which have been successfully registered to GitHub and still running.
	// This corresponds to status.replicas of the runner replica set that has the desired template hash.
	// +optional
	UpdatedReplicas *int `json:"updatedReplicas"`

	// DesiredReplicas is the total number of desired, non-terminated and latest pods to be set for the primary RunnerSet
	// This doesn't include outdated pods while upgrading the deployment and replacing the runnerset.
	// +optional
	DesiredReplicas *int `json:"desiredReplicas"`

	// Replicas is the total number of replicas
	// +optional
	Replicas *int `json:"replicas"`
}

func (*RunnerSetStatus) DeepCopy

func (in *RunnerSetStatus) DeepCopy() *RunnerSetStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerSetStatus.

func (*RunnerSetStatus) DeepCopyInto

func (in *RunnerSetStatus) DeepCopyInto(out *RunnerSetStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RunnerSpec

type RunnerSpec struct {
	RunnerConfig  `json:",inline"`
	RunnerPodSpec `json:",inline"`
}

RunnerSpec defines the desired state of Runner

func (*RunnerSpec) DeepCopy

func (in *RunnerSpec) DeepCopy() *RunnerSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerSpec.

func (*RunnerSpec) DeepCopyInto

func (in *RunnerSpec) DeepCopyInto(out *RunnerSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RunnerSpec) Validate

func (rs *RunnerSpec) Validate(rootPath *field.Path) field.ErrorList

type RunnerStatus

type RunnerStatus struct {
	// Turns true only if the runner pod is ready.
	// +optional
	Ready bool `json:"ready"`
	// +optional
	Registration RunnerStatusRegistration `json:"registration"`
	// +optional
	Phase string `json:"phase,omitempty"`
	// +optional
	Reason string `json:"reason,omitempty"`
	// +optional
	Message string `json:"message,omitempty"`
	// +optional
	WorkflowStatus *WorkflowStatus `json:"workflow"`
	// +optional
	// +nullable
	LastRegistrationCheckTime *metav1.Time `json:"lastRegistrationCheckTime,omitempty"`
}

RunnerStatus defines the observed state of Runner

func (*RunnerStatus) DeepCopy

func (in *RunnerStatus) DeepCopy() *RunnerStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerStatus.

func (*RunnerStatus) DeepCopyInto

func (in *RunnerStatus) DeepCopyInto(out *RunnerStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RunnerStatusRegistration

type RunnerStatusRegistration struct {
	Enterprise   string      `json:"enterprise,omitempty"`
	Organization string      `json:"organization,omitempty"`
	Repository   string      `json:"repository,omitempty"`
	Labels       []string    `json:"labels,omitempty"`
	Token        string      `json:"token"`
	ExpiresAt    metav1.Time `json:"expiresAt"`
}

RunnerStatusRegistration contains runner registration status

func (*RunnerStatusRegistration) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerStatusRegistration.

func (*RunnerStatusRegistration) DeepCopyInto

func (in *RunnerStatusRegistration) DeepCopyInto(out *RunnerStatusRegistration)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RunnerTemplate

type RunnerTemplate struct {
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec RunnerSpec `json:"spec,omitempty"`
}

func (*RunnerTemplate) DeepCopy

func (in *RunnerTemplate) DeepCopy() *RunnerTemplate

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerTemplate.

func (*RunnerTemplate) DeepCopyInto

func (in *RunnerTemplate) DeepCopyInto(out *RunnerTemplate)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScaleTargetRef

type ScaleTargetRef struct {
	// Kind is the type of resource being referenced
	// +optional
	// +kubebuilder:validation:Enum=RunnerDeployment;RunnerSet
	Kind string `json:"kind,omitempty"`

	// Name is the name of resource being referenced
	Name string `json:"name,omitempty"`
}

func (*ScaleTargetRef) DeepCopy

func (in *ScaleTargetRef) DeepCopy() *ScaleTargetRef

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleTargetRef.

func (*ScaleTargetRef) DeepCopyInto

func (in *ScaleTargetRef) DeepCopyInto(out *ScaleTargetRef)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScaleUpTrigger

type ScaleUpTrigger struct {
	GitHubEvent *GitHubEventScaleUpTriggerSpec `json:"githubEvent,omitempty"`
	Amount      int                            `json:"amount,omitempty"`
	Duration    metav1.Duration                `json:"duration,omitempty"`
}

func (*ScaleUpTrigger) DeepCopy

func (in *ScaleUpTrigger) DeepCopy() *ScaleUpTrigger

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleUpTrigger.

func (*ScaleUpTrigger) DeepCopyInto

func (in *ScaleUpTrigger) DeepCopyInto(out *ScaleUpTrigger)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScheduledOverride

type ScheduledOverride struct {
	// StartTime is the time at which the first override starts.
	StartTime metav1.Time `json:"startTime"`

	// EndTime is the time at which the first override ends.
	EndTime metav1.Time `json:"endTime"`

	// MinReplicas is the number of runners while overriding.
	// If omitted, it doesn't override minReplicas.
	// +optional
	// +nullable
	// +kubebuilder:validation:Minimum=0
	MinReplicas *int `json:"minReplicas,omitempty"`

	// +optional
	RecurrenceRule RecurrenceRule `json:"recurrenceRule,omitempty"`
}

ScheduledOverride can be used to override a few fields of HorizontalRunnerAutoscalerSpec on schedule. A schedule can optionally be recurring, so that the corresponding override happens every day, week, month, or year.

func (*ScheduledOverride) DeepCopy

func (in *ScheduledOverride) DeepCopy() *ScheduledOverride

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduledOverride.

func (*ScheduledOverride) DeepCopyInto

func (in *ScheduledOverride) DeepCopyInto(out *ScheduledOverride)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SecretReference

type SecretReference struct {
	Name string `json:"name"`
}

func (*SecretReference) DeepCopy

func (in *SecretReference) DeepCopy() *SecretReference

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretReference.

func (*SecretReference) DeepCopyInto

func (in *SecretReference) DeepCopyInto(out *SecretReference)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WorkVolumeClaimTemplate

type WorkVolumeClaimTemplate struct {
	StorageClassName string                              `json:"storageClassName"`
	AccessModes      []corev1.PersistentVolumeAccessMode `json:"accessModes"`
	Resources        corev1.ResourceRequirements         `json:"resources"`
}

func (*WorkVolumeClaimTemplate) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkVolumeClaimTemplate.

func (*WorkVolumeClaimTemplate) DeepCopyInto

func (in *WorkVolumeClaimTemplate) DeepCopyInto(out *WorkVolumeClaimTemplate)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*WorkVolumeClaimTemplate) V1Volume

func (w *WorkVolumeClaimTemplate) V1Volume() corev1.Volume

func (*WorkVolumeClaimTemplate) V1VolumeMount

func (w *WorkVolumeClaimTemplate) V1VolumeMount(mountPath string) corev1.VolumeMount

type WorkflowJobSpec

type WorkflowJobSpec struct {
}

https://docs.github.com/en/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#workflow_job

func (*WorkflowJobSpec) DeepCopy

func (in *WorkflowJobSpec) DeepCopy() *WorkflowJobSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkflowJobSpec.

func (*WorkflowJobSpec) DeepCopyInto

func (in *WorkflowJobSpec) DeepCopyInto(out *WorkflowJobSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WorkflowStatus added in v0.27.1

type WorkflowStatus struct {
	// +optional
	// Name is the name of the workflow
	// that is triggerred within the runner.
	// It corresponds to GITHUB_WORKFLOW defined in
	// https://docs.github.com/en/actions/learn-github-actions/environment-variables
	Name string `json:"name,omitempty"`
	// +optional
	// Repository is the owner and repository name of the workflow
	// that is triggerred within the runner.
	// It corresponds to GITHUB_REPOSITORY defined in
	// https://docs.github.com/en/actions/learn-github-actions/environment-variables
	Repository string `json:"repository,omitempty"`
	// +optional
	// ReositoryOwner is the repository owner's name for the workflow
	// that is triggerred within the runner.
	// It corresponds to GITHUB_REPOSITORY_OWNER defined in
	// https://docs.github.com/en/actions/learn-github-actions/environment-variables
	RepositoryOwner string `json:"repositoryOwner,omitempty"`
	// +optional
	// GITHUB_RUN_NUMBER is the unique number for the current workflow run
	// that is triggerred within the runner.
	// It corresponds to GITHUB_RUN_ID defined in
	// https://docs.github.com/en/actions/learn-github-actions/environment-variables
	RunNumber string `json:"runNumber,omitempty"`
	// +optional
	// RunID is the unique number for the current workflow run
	// that is triggerred within the runner.
	// It corresponds to GITHUB_RUN_ID defined in
	// https://docs.github.com/en/actions/learn-github-actions/environment-variables
	RunID string `json:"runID,omitempty"`
	// +optional
	// Job is the name of the current job
	// that is triggerred within the runner.
	// It corresponds to GITHUB_JOB defined in
	// https://docs.github.com/en/actions/learn-github-actions/environment-variables
	Job string `json:"job,omitempty"`
	// +optional
	// Action is the name of the current action or the step ID of the current step
	// that is triggerred within the runner.
	// It corresponds to GITHUB_ACTION defined in
	// https://docs.github.com/en/actions/learn-github-actions/environment-variables
	Action string `json:"action,omitempty"`
}

WorkflowStatus contains various information that is propagated from GitHub Actions workflow run environment variables to ease monitoring workflow run/job/steps that are triggerred on the runner.

func (*WorkflowStatus) DeepCopy added in v0.27.1

func (in *WorkflowStatus) DeepCopy() *WorkflowStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkflowStatus.

func (*WorkflowStatus) DeepCopyInto added in v0.27.1

func (in *WorkflowStatus) DeepCopyInto(out *WorkflowStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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