Skip to content

Initial executor <> Plugins integration#6903

Merged
machichima merged 10 commits intoenghabu/state-etcdfrom
enghabu/exec-plgns
Feb 26, 2026
Merged

Initial executor <> Plugins integration#6903
machichima merged 10 commits intoenghabu/state-etcdfrom
enghabu/exec-plgns

Conversation

@EngHabu
Copy link
Copy Markdown
Contributor

@EngHabu EngHabu commented Feb 8, 2026

Signed-off-by: Haytham Abuelfutuh haytham@afutuh.com

Tracking issue

Why are the changes needed?

What changes were proposed in this pull request?

How was this patch tested?

Labels

Please add one or more of the following labels to categorize your PR:

  • added: For new features.
  • changed: For changes in existing functionality.
  • deprecated: For soon-to-be-removed features.
  • removed: For features being removed.
  • fixed: For any bug fixed.
  • security: In case of vulnerabilities

This is important to improve the readability of release notes.

Setup process

Screenshots

Check all the applicable boxes

  • I updated the documentation accordingly.
  • All new and existing tests passed.
  • All commits are signed-off.

Related PRs

Docs link

Comment thread executor/pkg/controller/taskaction_controller.go
Comment thread executor/pkg/controller/taskaction_controller.go Outdated
Comment on lines +117 to +119
// Resolve plugin from registry
p, err := r.PluginRegistry.ResolvePlugin(taskAction.Spec.TaskType)
if err != nil {
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm thinking of moving this to a validation function, as well as validating other fields in taskAction, and put this validation function before we add the finalizer. In this case, if the validation failed, we can just not requeue it, and do not need to remove the finalizer.

We can do this in follow-up!

Comment thread executor/pkg/controller/taskaction_controller.go Outdated
Comment on lines +252 to +253
setCondition(ta, flyteorgv1.ConditionTypeProgressing, metav1.ConditionTrue,
flyteorgv1.ConditionReasonExecuting, info.Reason())
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For future PR: we should probably add max retry and fail this if exceed

Comment thread executor/pkg/controller/taskaction_controller.go
Comment thread executor/pkg/controller/taskaction_controller.go
Comment thread executor/pkg/controller/taskaction_controller.go Outdated
Signed-off-by: machichima <nary12321@gmail.com>
Signed-off-by: machichima <nary12321@gmail.com>
rely fully on task action conditions

Signed-off-by: machichima <nary12321@gmail.com>
Signed-off-by: machichima <nary12321@gmail.com>
Signed-off-by: machichima <nary12321@gmail.com>
Signed-off-by: machichima <nary12321@gmail.com>
Signed-off-by: machichima <nary12321@gmail.com>
Comment thread gen/rust/Cargo.lock Outdated
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It was included in the.gitignore, I think some PR accidentally adding it back

**/rust/Cargo.lock

@machichima machichima marked this pull request as ready for review February 25, 2026 09:14
@machichima machichima merged commit 9615fed into enghabu/state-etcd Feb 26, 2026
5 checks passed
@machichima machichima deleted the enghabu/exec-plgns branch February 26, 2026 03:13
machichima added a commit to machichima/flyte that referenced this pull request Feb 26, 2026
* refactor: add error log when fail to add finalizer

Signed-off-by: machichima <nary12321@gmail.com>

* fix: handle err when status update failed

Signed-off-by: machichima <nary12321@gmail.com>

* fix: remove phase is terminal check

rely fully on task action conditions

Signed-off-by: machichima <nary12321@gmail.com>

* refactor: add event when failed to build context in finalize

Signed-off-by: machichima <nary12321@gmail.com>

* fix: reconcile again after update CR

Signed-off-by: machichima <nary12321@gmail.com>

* fix: only update status if changed

Signed-off-by: machichima <nary12321@gmail.com>

* build: remove tracked Cargo.lock

Signed-off-by: machichima <nary12321@gmail.com>

---------

Signed-off-by: machichima <nary12321@gmail.com>
Co-authored-by: machichima <nary12321@gmail.com>
machichima added a commit to machichima/flyte that referenced this pull request Feb 26, 2026
* refactor: add error log when fail to add finalizer

Signed-off-by: machichima <nary12321@gmail.com>

* fix: handle err when status update failed

Signed-off-by: machichima <nary12321@gmail.com>

* fix: remove phase is terminal check

rely fully on task action conditions

Signed-off-by: machichima <nary12321@gmail.com>

* refactor: add event when failed to build context in finalize

Signed-off-by: machichima <nary12321@gmail.com>

* fix: reconcile again after update CR

Signed-off-by: machichima <nary12321@gmail.com>

* fix: only update status if changed

Signed-off-by: machichima <nary12321@gmail.com>

* build: remove tracked Cargo.lock

Signed-off-by: machichima <nary12321@gmail.com>

---------

Signed-off-by: machichima <nary12321@gmail.com>
Co-authored-by: machichima <nary12321@gmail.com>
EngHabu added a commit that referenced this pull request Feb 26, 2026
* refactor: add error log when fail to add finalizer

Signed-off-by: machichima <nary12321@gmail.com>

* fix: handle err when status update failed

Signed-off-by: machichima <nary12321@gmail.com>

* fix: remove phase is terminal check

rely fully on task action conditions

Signed-off-by: machichima <nary12321@gmail.com>

* refactor: add event when failed to build context in finalize

Signed-off-by: machichima <nary12321@gmail.com>

* fix: reconcile again after update CR

Signed-off-by: machichima <nary12321@gmail.com>

* fix: only update status if changed

Signed-off-by: machichima <nary12321@gmail.com>

* build: remove tracked Cargo.lock

Signed-off-by: machichima <nary12321@gmail.com>

---------

Signed-off-by: machichima <nary12321@gmail.com>
Co-authored-by: machichima <nary12321@gmail.com>
Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>
EngHabu added a commit that referenced this pull request Feb 26, 2026
* refactor: add error log when fail to add finalizer

Signed-off-by: machichima <nary12321@gmail.com>

* fix: handle err when status update failed

Signed-off-by: machichima <nary12321@gmail.com>

* fix: remove phase is terminal check

rely fully on task action conditions

Signed-off-by: machichima <nary12321@gmail.com>

* refactor: add event when failed to build context in finalize

Signed-off-by: machichima <nary12321@gmail.com>

* fix: reconcile again after update CR

Signed-off-by: machichima <nary12321@gmail.com>

* fix: only update status if changed

Signed-off-by: machichima <nary12321@gmail.com>

* build: remove tracked Cargo.lock

Signed-off-by: machichima <nary12321@gmail.com>

---------

Signed-off-by: machichima <nary12321@gmail.com>
Co-authored-by: machichima <nary12321@gmail.com>
Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>
machichima added a commit that referenced this pull request Feb 27, 2026
* refactor: add error log when fail to add finalizer

Signed-off-by: machichima <nary12321@gmail.com>

* fix: handle err when status update failed

Signed-off-by: machichima <nary12321@gmail.com>

* fix: remove phase is terminal check

rely fully on task action conditions

Signed-off-by: machichima <nary12321@gmail.com>

* refactor: add event when failed to build context in finalize

Signed-off-by: machichima <nary12321@gmail.com>

* fix: reconcile again after update CR

Signed-off-by: machichima <nary12321@gmail.com>

* fix: only update status if changed

Signed-off-by: machichima <nary12321@gmail.com>

* build: remove tracked Cargo.lock

Signed-off-by: machichima <nary12321@gmail.com>

---------

Signed-off-by: machichima <nary12321@gmail.com>
Co-authored-by: machichima <nary12321@gmail.com>
Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>
machichima added a commit that referenced this pull request Feb 27, 2026
* Implement state service on top of etcd.

Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>

* Initial executor <> Plugins integration

Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>

* Fix build and create_run.sh

Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>

* fix: subscribe before listing

Signed-off-by: machichima <nary12321@gmail.com>
Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>

* feat: store state to DB from state service watch

Signed-off-by: machichima <nary12321@gmail.com>
Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>

* fix: skip update if state json does not change

Signed-off-by: machichima <nary12321@gmail.com>
Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>

* feat: scope subscribe with parent action name

Signed-off-by: machichima <nary12321@gmail.com>
Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>

* refactor: rename regularK8sClient to k8sClientWithoutWatch

Signed-off-by: machichima <nary12321@gmail.com>
Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>

* fix: log when update channel full

Signed-off-by: machichima <nary12321@gmail.com>
Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>

* refactor: remove unused function isChildOf

Signed-off-by: machichima <nary12321@gmail.com>
Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>

* remove state service db persistant logic

Signed-off-by: Alex Wu <c.alexwu@gmail.com>
Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>

* fix: a parent name link to multiple subscribers

Signed-off-by: machichima <nary12321@gmail.com>
Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>

* Initial executor <> Plugins integration (#6903)

* refactor: add error log when fail to add finalizer

Signed-off-by: machichima <nary12321@gmail.com>

* fix: handle err when status update failed

Signed-off-by: machichima <nary12321@gmail.com>

* fix: remove phase is terminal check

rely fully on task action conditions

Signed-off-by: machichima <nary12321@gmail.com>

* refactor: add event when failed to build context in finalize

Signed-off-by: machichima <nary12321@gmail.com>

* fix: reconcile again after update CR

Signed-off-by: machichima <nary12321@gmail.com>

* fix: only update status if changed

Signed-off-by: machichima <nary12321@gmail.com>

* build: remove tracked Cargo.lock

Signed-off-by: machichima <nary12321@gmail.com>

---------

Signed-off-by: machichima <nary12321@gmail.com>
Co-authored-by: machichima <nary12321@gmail.com>
Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>

* Cherry pick make local run work (#6943)

* Switch to pflags

Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>

Signed-off-by: machichima <nary12321@gmail.com>

* Let it rain

Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>

Signed-off-by: machichima <nary12321@gmail.com>

* mostly working

Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>

Signed-off-by: machichima <nary12321@gmail.com>

* Add literal-JSON converter and TranslatorService for RSJF-compliant schema translation. The converter handles bidirectional conversion Add literal-JSON converter and TranslatorService for RSJF-compliant schema translation

Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>

Signed-off-by: machichima <nary12321@gmail.com>

* Add ShortName field to TaskActionSpec and populate it through the queue and watch pipelines. Pass inputUri and runOutputBase as parameters to CreateRun instead of computing them after DB insert. Fix WatchActions to subscribe before  Add ShortName field to TaskActionSpec and populate it through the queue and watch pipelines

Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>

Signed-off-by: machichima <nary12321@gmail.com>

* fix: Pass parent name to Subscribe() and add TODO

Signed-off-by: machichima <nary12321@gmail.com>

* fix: clean-up main and add StopWatching call

Signed-off-by: machichima <nary12321@gmail.com>

* build: update CR fields

Signed-off-by: machichima <nary12321@gmail.com>

* feat: build local env with k3d and run successfully

Signed-off-by: machichima <nary12321@gmail.com>

* docs: add TODO in CreateRun

Signed-off-by: machichima <nary12321@gmail.com>

* docs: add brief development guide

Signed-off-by: machichima <nary12321@gmail.com>

* build: make gen

Signed-off-by: machichima <nary12321@gmail.com>

---------

Signed-off-by: machichima <nary12321@gmail.com>
Co-authored-by: Haytham Abuelfutuh <haytham@afutuh.com>

---------

Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>
Signed-off-by: machichima <nary12321@gmail.com>
Signed-off-by: Alex Wu <c.alexwu@gmail.com>
Co-authored-by: Haytham Abuelfutuh <haytham@afutuh.com>
Co-authored-by: Alex Wu <c.alexwu@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants