Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
11b7054
feat: exchange data between test workflows run as a suite
vsukhin Aug 1, 2026
138f88e
test: read a parent's artifact from a consumer workflow
vsukhin Aug 1, 2026
ed9b5c8
feat: read a sibling test workflow's values and artifacts
vsukhin Aug 1, 2026
0ce406a
fix: aborted selectors with an alias, and corrupted sensitive outputs
vsukhin Aug 1, 2026
89e04ea
Add remote endpoint to MCP server registry entry (#7744)
niyiomotoso Aug 3, 2026
0a26e6a
Merge branch 'main' into vsukhin/feature/suite-step-exchange
vsukhin Aug 3, 2026
f645de1
fix: capability
vsukhin Aug 3, 2026
fd8f094
fix: testing
vsukhin Aug 4, 2026
9a48101
Merge branch 'main' into vsukhin/feature/suite-step-exchange
vsukhin Aug 5, 2026
c487c04
Merge branch 'main' into vsukhin/feature/suite-step-exchange
vsukhin Aug 20, 2026
2d47dbd
fix: fail loudly when a workflow reads a withheld sensitive output
vsukhin Aug 20, 2026
9988673
docs: state the contract for exchanging sensitive outputs
vsukhin Aug 20, 2026
027a57c
fix: stop a withheld output from reaching the environment
vsukhin Aug 20, 2026
81d41e3
fix: keep short credentials in the sensitive-word set
vsukhin Aug 20, 2026
405c33c
fix: classify step outputs against every sensitive value
vsukhin Aug 20, 2026
edba609
fix: report an ambiguous execution reference instead of guessing
vsukhin Aug 20, 2026
0a68741
Merge branch 'main' into vsukhin/feature/suite-step-exchange
vsukhin Aug 20, 2026
fd92a0e
Merge branch 'main' into vsukhin/feature/suite-step-exchange
vsukhin Aug 20, 2026
b1d5059
Merge remote-tracking branch 'origin/vsukhin/feature/suite-step-excha…
vsukhin Aug 20, 2026
cafc6b1
Merge branch 'main' into vsukhin/feature/suite-step-exchange
vsukhin Aug 20, 2026
0ad51b6
fix: follow the storage certificate setting when downloading artifacts
vsukhin Aug 21, 2026
c8d1302
Merge branch 'main' into vsukhin/feature/suite-step-exchange
vsukhin Aug 21, 2026
b98dc2f
fix: move the execution registry instruction out of the testworkflow …
vsukhin Aug 21, 2026
0380bae
Merge branch 'main' into vsukhin/feature/suite-step-exchange
vsukhin Aug 24, 2026
662586c
fix: resolve an execution id regardless of its fan-out position
vsukhin Aug 25, 2026
458e037
fix: resolve a fetch reference the way an expression resolves one
vsukhin Aug 25, 2026
aa11983
Potential fix for pull request finding
vsukhin Aug 25, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions api/testworkflows/v1/step_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -209,6 +209,9 @@ type StepExecuteWorkflow struct {
// selector is used to identify a group of test workflows based on their metadata labels
Selector *metav1.LabelSelector `json:"selector,omitempty" expr:"include"`

// name to reference this execution by in the execution() expression, defaults to the workflow name
As string `json:"as,omitempty" expr:"template"`

// test workflow execution description to display
Description string `json:"description,omitempty" expr:"template"`

Expand All @@ -223,10 +226,26 @@ type StepExecuteWorkflow struct {
// configuration to pass for the workflow
Config map[string]intstr.IntOrString `json:"config,omitempty" expr:"template"`

// instructions for downloading artifacts produced by executed test workflows
Fetch []StepExecuteFetch `json:"fetch,omitempty" expr:"include"`

// Targets helps decide on which runner the execution is scheduled.
Target *commonv1.Target `json:"target,omitempty" expr:"include"`
}

// StepExecuteFetch downloads artifacts produced by an executed test workflow.
type StepExecuteFetch struct {
// execution to download the artifacts from, defaults to the one being executed
From string `json:"from,omitempty" expr:"template"`
Comment thread
vsukhin marked this conversation as resolved.

// artifact paths to download, relative to the artifact root of the execution
Paths []string `json:"paths,omitempty" expr:"template"`

// directory to download the artifacts to; when the entry fans out over a matrix or
// shards, include {{ index }} to keep each instance's artifacts apart
To string `json:"to" expr:"template"`
}

type StepParallel struct {
// how many resources could be scheduled in parallel
Parallelism int32 `json:"parallelism,omitempty"`
Expand Down
27 changes: 27 additions & 0 deletions api/testworkflows/v1/zz_generated.deepcopy.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

25 changes: 25 additions & 0 deletions api/v1/testkube.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10046,6 +10046,9 @@ components:
name:
type: string
description: TestWorkflow name to include
as:
type: string
description: name to reference this execution by in the execution() expression, defaults to the TestWorkflow name
description:
type: string
description: TestWorkflow execution description to display
Expand All @@ -10058,12 +10061,34 @@ components:
$ref: "#/components/schemas/TestWorkflowTarballRequest"
config:
$ref: "#/components/schemas/TestWorkflowConfigValue"
fetch:
type: array
description: instructions for downloading artifacts produced by executed test workflows
items:
$ref: "#/components/schemas/TestWorkflowStepExecuteFetch"
selector:
$ref: "#/components/schemas/LabelSelector"
description: label selector for test workflow
target:
$ref: "#/components/schemas/ExecutionTarget"

TestWorkflowStepExecuteFetch:
type: object
required:
- to
properties:
from:
type: string
description: execution to download the artifacts from, defaults to the one being executed
paths:
type: array
description: artifact paths to download, relative to the artifact root of the execution
items:
type: string
to:
type: string
description: directory to download the artifacts to; when the entry fans out over a matrix or shards, include {{ index }} to keep each instance's artifacts apart

TestWorkflowStepExecuteTestRef:
type: object
allOf:
Expand Down
Loading