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

feat(TKC-1580): prepare Init Process for TestWorkflow containers #5090

Conversation

rangoo94
Copy link
Member

@rangoo94 rangoo94 commented Feb 29, 2024

Pull request description

Prepare Init Process that will wrap all TestWorkflows operations in the containers. Additionally, it includes some fixes and improvements to the Expressions Engine (force simplifying unknown structs, better boolean prediction).

It supports:

  • Skipping container execution
  • Passing status to parents/children
  • Sharing state across different containers
  • Aborting steps
  • Negative expectation
  • Timeouts (nested already)
  • Retry (single step only)
  • Computing variables locally, i.e. reading files (file("/data/some/path")), reading shared data

In the future, we need to support:

  • Nested retries (sharing iterations is already there)
  • Obfuscating sensitive data in the output
  • Saving the data from the output clauses in the shared state

Checklist (choose whats happened)

  • breaking change! (describe)
  • tested locally
  • tested on cluster
  • added new dependencies
  • updated the docs
  • added a test

Copy link

netlify bot commented Feb 29, 2024

Deploy Preview for testkube-docs-preview canceled.

Name Link
🔨 Latest commit 65ecc0d
🔍 Latest deploy log https://app.netlify.com/sites/testkube-docs-preview/deploys/65e2045346620b0008df29a7

@codecov-commenter
Copy link

codecov-commenter commented Feb 29, 2024

Codecov Report

Attention: Patch coverage is 56.08108% with 65 lines in your changes are missing coverage. Please review.

Project coverage is 26.36%. Comparing base (c69263b) to head (65ecc0d).
Report is 35 commits behind head on develop.

Files Patch % Lines
pkg/tcl/expressionstcl/generic.go 61.05% 31 Missing and 6 partials ⚠️
pkg/tcl/expressionstcl/utils.go 0.00% 28 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #5090      +/-   ##
===========================================
- Coverage    30.33%   26.36%   -3.97%     
===========================================
  Files          314      315       +1     
  Lines        28149    28381     +232     
===========================================
- Hits          8538     7484    -1054     
- Misses       18781    20257    +1476     
+ Partials       830      640     -190     
Flag Coverage Δ
integrationtests ?
unittests 26.36% <56.08%> (+0.19%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@rangoo94 rangoo94 merged commit 615b275 into develop Mar 1, 2024
11 checks passed
@rangoo94 rangoo94 deleted the dawid/feat/TKC-1580-create-init-process-image-for-testworkflows branch March 1, 2024 16:51
rangoo94 added a commit that referenced this pull request Mar 14, 2024
* feat(TKC-1465): add helpers to immediately evaluate Template/Expression
* feat(TKC-1465): add option to force simplifying templates in unknown structs
* fix(TKC-1465): template evaluation typo
* fix(TKC-1465): simplifying private properties in structs
* fix(TKC-1465): deep simplify structs
* fix(TKC-1465): EvalExpression typo
* fix(TKC-1465): Negation precedence
* fix(TKC-1465): add negative number test
* feat(TKC-1465): predict logical operations paths
* feat(TKC-1580): prepare initial Init Process for TestWorkflow containers
* feat(TKC-1580): distinguish hints of outputs in TestWorkflow containers
* chore(TKC-1580): delete unused code
* chore(TKC-1580): extract commons for critical errors in init process
* feat(TKC-1465): add Escape helper
* feat(TKC-1580): make conditions order irrelevant
* fix(TKC-1580): compute init status with execution status too
* fix(TKC-1580): compute conditions correctly
* fix: image inspector with ConfigMap
* feat(TKC-1465): add option to finalize structs with expression language
rangoo94 added a commit that referenced this pull request Mar 14, 2024
* feat(TKC-1465): add helpers to immediately evaluate Template/Expression
* feat(TKC-1465): add option to force simplifying templates in unknown structs
* fix(TKC-1465): template evaluation typo
* fix(TKC-1465): simplifying private properties in structs
* fix(TKC-1465): deep simplify structs
* fix(TKC-1465): EvalExpression typo
* fix(TKC-1465): Negation precedence
* fix(TKC-1465): add negative number test
* feat(TKC-1465): predict logical operations paths
* feat(TKC-1580): prepare initial Init Process for TestWorkflow containers
* feat(TKC-1580): distinguish hints of outputs in TestWorkflow containers
* chore(TKC-1580): delete unused code
* chore(TKC-1580): extract commons for critical errors in init process
* feat(TKC-1465): add Escape helper
* feat(TKC-1580): make conditions order irrelevant
* fix(TKC-1580): compute init status with execution status too
* fix(TKC-1580): compute conditions correctly
* fix: image inspector with ConfigMap
* feat(TKC-1465): add option to finalize structs with expression language
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