Commit f8ee99c
fix(backend): resolve use_secret_as_env pipeline params in ParallelFor (#13128)
* fix(sdk): propagate platform-config inputs across sub-DAG boundaries
When `use_secret_as_env()` (or other Kubernetes platform helpers) reference
a `PipelineParameterChannel`, the channel was not registered in the task's
`_channel_inputs`. This meant the compiler did not "punch through" the
parameter across sub-DAG boundaries (e.g. ParallelFor), causing the driver
to fail with "parent DAG does not have input parameter".
Additionally, the platform config references were not rewritten to use the
prefixed parameter names that the compiler creates when surfacing parameters
through sub-DAG boundaries.
Changes:
- Add `ensure_channel_input()` shared helper in common.py that registers
PipelineChannel values in `task._channel_inputs` for sub-DAG propagation
- Call it from `parse_k8s_parameter_input()` (secrets) and
`_assign_pvc_name_to_msg()` (PVC mounts) for consistent behavior
- Add `_rewrite_platform_config_input_references()` that rewrites both
`componentInputParameter` and `taskOutputParameter` references in
platform config when tasks are inside sub-DAGs
- Pass parent component inputs and DAG task list to
`platform_config_to_platform_spec()` for rewriting context
- Apply rewriting in both `build_spec_by_group()` and exit handler paths
Fixes #13078
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Nelesh Singla <117123879+nsingla@users.noreply.github.com>
* test: add ParallelFor pipeline param propagation test to local execution tests
Add a new test pipeline exercising ParallelFor with pipeline parameter
propagation (without use_secret_as_env) and include it in the local
execution test matrix for both SubprocessRunner and DockerRunner.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Nelesh Singla <117123879+nsingla@users.noreply.github.com>
* test: add Argo compiled workflow golden files for secret and ParallelFor pipelines
Add KFP IR and Argo compiled workflow golden files for:
- pipeline_2_parallel_for_secret: use_secret_as_env with pipeline param inside ParallelFor
- pipeline_4_nested_parallel_for_secret: use_secret_as_env with outer task output inside ParallelFor
- pipeline_with_parallelfor_pipeline_param: ParallelFor with pipeline param propagation (no secrets)
Generated via: cd backend/test/compiler && ginkgo -v -- -createGoldenFiles=true
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Nelesh Singla <117123879+nsingla@users.noreply.github.com>
* fixes to the newly added pipelines with parallelFor and secrets
Signed-off-by: Nelesh Singla <117123879+nsingla@users.noreply.github.com>
* fix: address review feedback on task channel registration
Co-authored-by: mprahl <11711106+mprahl@users.noreply.github.com>
Agent-Logs-Url: https://github.com/kubeflow/pipelines/sessions/495cd171-f647-454f-b39a-5b303ee802c0
(cherry picked from commit 5d146fd)
* fixing formatting issues and resolving pr comments
incresing the pipeline run wait time to 12min
splitting parallel and nested pipelines
fixing argo versions in api tests
Signed-off-by: Nelesh Singla <117123879+nsingla@users.noreply.github.com>
---------
Signed-off-by: Nelesh Singla <117123879+nsingla@users.noreply.github.com>
Co-authored-by: Nelesh Singla <bot@ambient-code.local>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: mprahl <11711106+mprahl@users.noreply.github.com>1 parent e6f578f commit f8ee99c
185 files changed
Lines changed: 10642 additions & 315 deletions
File tree
- .github
- actions/deploy
- workflows
- backend
- src/v2/cmd/driver
- test
- compiler
- constants
- end2end
- testutil
- kubernetes_platform/python
- kfp/kubernetes
- test/unit
- sdk/python
- kfp
- compiler
- dsl
- test
- compilation
- local_execution
- test_data
- compiled-workflows
- sdk_compiled_pipelines/valid
- essential
- parallel_and_nested
- test
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
5 | 9 | | |
6 | 10 | | |
7 | 11 | | |
| |||
70 | 74 | | |
71 | 75 | | |
72 | 76 | | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
73 | 83 | | |
74 | 84 | | |
75 | 85 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
66 | 66 | | |
67 | 67 | | |
68 | 68 | | |
69 | | - | |
| 69 | + | |
70 | 70 | | |
71 | 71 | | |
72 | 72 | | |
73 | 73 | | |
74 | 74 | | |
75 | | - | |
| 75 | + | |
76 | 76 | | |
77 | 77 | | |
78 | 78 | | |
| |||
167 | 167 | | |
168 | 168 | | |
169 | 169 | | |
170 | | - | |
| 170 | + | |
171 | 171 | | |
172 | 172 | | |
173 | 173 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
4 | | - | |
| 4 | + | |
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| |||
63 | 63 | | |
64 | 64 | | |
65 | 65 | | |
66 | | - | |
| 66 | + | |
67 | 67 | | |
68 | | - | |
| 68 | + | |
69 | 69 | | |
70 | 70 | | |
71 | 71 | | |
| |||
76 | 76 | | |
77 | 77 | | |
78 | 78 | | |
79 | | - | |
80 | | - | |
81 | | - | |
82 | 79 | | |
83 | 80 | | |
84 | 81 | | |
| |||
131 | 128 | | |
132 | 129 | | |
133 | 130 | | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
134 | 135 | | |
135 | 136 | | |
136 | 137 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
23 | | - | |
| 23 | + | |
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
| |||
49 | 49 | | |
50 | 50 | | |
51 | 51 | | |
| 52 | + | |
52 | 53 | | |
53 | 54 | | |
54 | 55 | | |
| |||
58 | 59 | | |
59 | 60 | | |
60 | 61 | | |
| 62 | + | |
61 | 63 | | |
62 | 64 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
29 | | - | |
30 | | - | |
31 | | - | |
32 | | - | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
312 | 312 | | |
313 | 313 | | |
314 | 314 | | |
315 | | - | |
| 315 | + | |
316 | 316 | | |
317 | 317 | | |
318 | 318 | | |
| |||
329 | 329 | | |
330 | 330 | | |
331 | 331 | | |
332 | | - | |
| 332 | + | |
333 | 333 | | |
334 | 334 | | |
335 | 335 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
89 | 89 | | |
90 | 90 | | |
91 | 91 | | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
92 | 112 | | |
93 | 113 | | |
94 | 114 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
92 | 92 | | |
93 | 93 | | |
94 | 94 | | |
95 | | - | |
| 95 | + | |
96 | 96 | | |
97 | 97 | | |
98 | 98 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
| 31 | + | |
| 32 | + | |
31 | 33 | | |
32 | 34 | | |
33 | 35 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
38 | 38 | | |
39 | 39 | | |
40 | 40 | | |
41 | | - | |
| 41 | + | |
42 | 42 | | |
43 | 43 | | |
44 | 44 | | |
| |||
0 commit comments