Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DTT1 - Iteration 2 - QA Workflow Engine #4796

Closed
20 tasks done
jnasselle opened this issue Dec 26, 2023 · 3 comments · Fixed by #4798 or #4807
Closed
20 tasks done

DTT1 - Iteration 2 - QA Workflow Engine #4796

jnasselle opened this issue Dec 26, 2023 · 3 comments · Fixed by #4798 or #4807
Assignees

Comments

@jnasselle
Copy link
Member

jnasselle commented Dec 26, 2023

Epic: #4495


Description

This issue aims to develop the bare basic implementation of a DAG engine

Tasks

  • Define a YAML input file schema and mechanism to handle DAG definition that allows templates to improve design logic.
    • Use DTT1 agent / DTT1 agent as use cases for such definition
    • Provide a YAML schema validator to decouple the validation
    • Provide a bunch of YAML examples, from simple to complex
  • Allow dry-run execution
  • Allow parallel execution and explicitly set how many threads will be used
  • Task could execute some pre-agreed tasks that will be executed with its own parameters logic
    • process: allow the execution of a process
    • dummy
    • dummy-random
  • requirements.txt
  • README.md
  • Unit tests

Known issues

  • Task duplication: there's no validation that two tasks have the same name after expansion
  • Missing task validation: dry-run does not validate task existence. It fails during runtime
  • cleanup feature (code support): allow optional cleanup block in tasks, that allows undo dag execution to release resources or whatever scenario
  • on-error feature: allow pre-agreed handling mechanism if a task fails
    • continue
    • abort-related-flows -> This should be the default value
    • abort-all
@fcaffieri
Copy link
Member

Update

  • Added the schema validations to the Workflow engine.
  • Fix the requirements.txt adding all the new library dependencies.
  • Add schema.json with the validator template.
  • Add new class SchemaValidator to handle the validations.
  • Execute test with the Workflow Engine.

@QU3B1M
Copy link
Member

QU3B1M commented Jan 5, 2024

LGTM!

@fcaffieri fcaffieri reopened this Jan 8, 2024
@fcaffieri fcaffieri linked a pull request Jan 8, 2024 that will close this issue
@fcaffieri
Copy link
Member

Unit test will be launched in #4751 Integrating this new module with the others.
LGTM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment