Documentation
¶
Index ¶
- Variables
- func SetupController(mgr ctrl.Manager, maxConcurrentReconciles int, ...) error
- func SetupControllerWithReconciler(mgr ctrl.Manager, maxConcurrentReconciles int, reconciler *JobFlowReconciler) error
- func SetupManager(options ctrl.Options) (ctrl.Manager, error)
- type EventRecorder
- func (er *EventRecorder) RecordJobFlowCompleted(jobFlow *v1alpha1.JobFlow)
- func (er *EventRecorder) RecordJobFlowCreated(jobFlow *v1alpha1.JobFlow)
- func (er *EventRecorder) RecordJobFlowFailed(jobFlow *v1alpha1.JobFlow, reason string)
- func (er *EventRecorder) RecordJobFlowStarted(jobFlow *v1alpha1.JobFlow)
- func (er *EventRecorder) RecordStepCreated(jobFlow *v1alpha1.JobFlow, stepName string, job runtime.Object)
- func (er *EventRecorder) RecordStepFailed(jobFlow *v1alpha1.JobFlow, stepName string, err error)
- func (er *EventRecorder) RecordStepSucceeded(jobFlow *v1alpha1.JobFlow, stepName string)
- type ExecutionPlan
- type JobFlowReconciler
- type ParameterContext
- type TemplateContext
Constants ¶
This section is empty.
Variables ¶
var ( // Config holds the loaded configuration // Loaded once at package initialization Config = config.Load() )
var ConfigMapSizeLimit = Config.ConfigMapSizeLimit
Deprecated: Use Config.ConfigMapSizeLimit instead ConfigMap size limit (1MB) - Kubernetes ConfigMap size limit
var DefaultArchiveFormat = Config.DefaultArchiveFormat
Deprecated: Use Config.DefaultArchiveFormat instead
var DefaultBackoffBase = Config.DefaultBackoffBase
Deprecated: Use Config.DefaultBackoffBase instead
var DefaultBackoffFactor = Config.DefaultBackoffFactor
Deprecated: Use Config.DefaultBackoffFactor instead
var DefaultBackoffLimit = Config.DefaultBackoffLimit
Deprecated: Use Config.DefaultBackoffLimit instead Default retry/backoff values
var DefaultCompression = Config.DefaultCompression
Deprecated: Use Config.DefaultCompression instead
var DefaultConcurrencyPolicy = Config.DefaultConcurrencyPolicy
Deprecated: Use Config.DefaultConcurrencyPolicy instead
var DefaultConfigMapKey = Config.DefaultConfigMapKey
Deprecated: Use Config.DefaultConfigMapKey instead Default strings
var DefaultContainerName = Config.DefaultContainerName
Deprecated: Use Config.DefaultContainerName instead
var DefaultContentType = Config.DefaultContentType
Deprecated: Use Config.DefaultContentType instead
var DefaultDirPerm = Config.DefaultDirPerm
Deprecated: Use Config.DefaultDirPerm instead File permissions
var DefaultFilePerm = Config.DefaultFilePerm
Deprecated: Use Config.DefaultFilePerm instead
var DefaultRetryLimit = Config.DefaultRetryLimit
Deprecated: Use Config.DefaultRetryLimit instead
var DefaultTTLSeconds = Config.DefaultTTLSeconds
Deprecated: Use Config.DefaultTTLSeconds instead Default TTL (24 hours in seconds)
var UIDTruncateLength = Config.UIDTruncateLength
Deprecated: Use Config.UIDTruncateLength instead UID truncation length for resource names
Functions ¶
func SetupController ¶
func SetupController(mgr ctrl.Manager, maxConcurrentReconciles int, metricsRecorder *metrics.Recorder, eventRecorder *EventRecorder) error
SetupController sets up the JobFlow controller with the manager.
func SetupControllerWithReconciler ¶
func SetupControllerWithReconciler(mgr ctrl.Manager, maxConcurrentReconciles int, reconciler *JobFlowReconciler) error
SetupControllerWithReconciler sets up the JobFlow controller with a pre-configured reconciler.
Types ¶
type EventRecorder ¶
EventRecorder wraps Kubernetes event recorder for JobFlow controller. This now uses zen-sdk/pkg/events as the base implementation.
func NewEventRecorder ¶
func NewEventRecorder(kubeClient kubernetes.Interface) *EventRecorder
NewEventRecorder creates a new event recorder.
func (*EventRecorder) RecordJobFlowCompleted ¶
func (er *EventRecorder) RecordJobFlowCompleted(jobFlow *v1alpha1.JobFlow)
RecordJobFlowCompleted records that a JobFlow completed successfully.
func (*EventRecorder) RecordJobFlowCreated ¶
func (er *EventRecorder) RecordJobFlowCreated(jobFlow *v1alpha1.JobFlow)
RecordJobFlowCreated records that a JobFlow was created. Events for CRDs may not be supported by all Kubernetes clusters. This function logs errors but does not fail if event recording fails.
func (*EventRecorder) RecordJobFlowFailed ¶
func (er *EventRecorder) RecordJobFlowFailed(jobFlow *v1alpha1.JobFlow, reason string)
RecordJobFlowFailed records that a JobFlow failed.
func (*EventRecorder) RecordJobFlowStarted ¶
func (er *EventRecorder) RecordJobFlowStarted(jobFlow *v1alpha1.JobFlow)
RecordJobFlowStarted records that a JobFlow started execution.
func (*EventRecorder) RecordStepCreated ¶
func (er *EventRecorder) RecordStepCreated(jobFlow *v1alpha1.JobFlow, stepName string, job runtime.Object)
RecordStepCreated records that a step's Job was created.
func (*EventRecorder) RecordStepFailed ¶
func (er *EventRecorder) RecordStepFailed(jobFlow *v1alpha1.JobFlow, stepName string, err error)
RecordStepFailed records that a step failed.
func (*EventRecorder) RecordStepSucceeded ¶
func (er *EventRecorder) RecordStepSucceeded(jobFlow *v1alpha1.JobFlow, stepName string)
RecordStepSucceeded records that a step succeeded.
type ExecutionPlan ¶
type ExecutionPlan struct {
ReadySteps []string
}
ExecutionPlan represents an execution plan for a JobFlow.
type JobFlowReconciler ¶
type JobFlowReconciler struct {
client.Client
Scheme *runtime.Scheme
MetricsRecorder *metrics.Recorder
EventRecorder *EventRecorder
// contains filtered or unexported fields
}
JobFlowReconciler reconciles a JobFlow object
func NewJobFlowReconciler ¶
func NewJobFlowReconciler(mgr ctrl.Manager, metricsRecorder *metrics.Recorder, eventRecorder *EventRecorder) *JobFlowReconciler
NewJobFlowReconciler creates a new JobFlowReconciler Leader election is handled by controller-runtime Manager, not in the reconciler
func (*JobFlowReconciler) Reconcile ¶
Reconcile is part of the main kubernetes reconciliation loop +kubebuilder:rbac:groups=workflow.kube-zen.io,resources=jobflows,verbs=get;list;watch;delete +kubebuilder:rbac:groups=workflow.kube-zen.io,resources=jobflows/status,verbs=get;update;patch +kubebuilder:rbac:groups=batch,resources=jobs,verbs=get;list;watch;create;delete +kubebuilder:rbac:groups="",resources=persistentvolumeclaims,verbs=get;list;watch;create +kubebuilder:rbac:groups="",resources=configmaps,verbs=get;list;watch;create +kubebuilder:rbac:groups="",resources=secrets,verbs=get;list;watch +kubebuilder:rbac:groups="",resources=events,verbs=create +kubebuilder:rbac:groups="",resources=pods,verbs=get;list;watch
func (*JobFlowReconciler) SetupWithManager ¶
func (r *JobFlowReconciler) SetupWithManager(b *builder.Builder) error
SetupWithManager sets up the controller with the Manager.
type ParameterContext ¶
type ParameterContext struct {
Parameters map[string]string // parameter name -> value
JobFlow *v1alpha1.JobFlow
StepName string
}
ParameterContext provides context for parameter template substitution
type TemplateContext ¶
type TemplateContext struct {
JobFlow *v1alpha1.JobFlow
StepStatus map[string]*v1alpha1.StepStatus // step name -> status
}
TemplateContext provides context for template evaluation