Comments (5)
@fische thanks for the issue. I think this is more of a feature request than a bug (as, it is not listed anywhere that it is possible to use variable interpolation in the resolver "spec", see here). That said, I agree 100% that it should be possible.
The reason I raised this as a bug is because variable substitution is possible in resolver parameters with the pipeline parameters (ie $(params.target)
). This is not documented anywhere either, so I just assumed the documentation was out of date and the fact task results are not supported was a bug. But I get your point, I can turn this into a kind/feature
if needed?
from pipeline.
@fische thanks for the issue. I think this is more of a feature request than a bug (as, it is not listed anywhere that it is possible to use variable interpolation in the resolver "spec", see here). That said, I agree 100% that it should be possible.
I have also just realised that the ResolutionRequests for pipeline's tasks get created right when the PipelineRun is created (which is most likely related to this issue) and are owned by that PipelineRun.
I don't think it is the case, but if it is, it is probably an issue we need to fix. In your example, it might happen because the dependency between task-a and task-b is implicit (aka not using runAfter
), but I am not 100% sure. But if it happens that way, it is a bug in my opinion (so the issue is both a feature request and an issue 😅 ).
I don't understand this approach as it would have been so much simpler (and worked so much nicer with the rest), if the PipelineRun instead created the TaskRuns, and then those would create the ResolutionRequests. This would've meant that you would not need the additional logic when reconciling pipelines to check if there's any task to resolve and start their resolution, and instead you would be able to start the pipeline ASAP. I guess the only "tradeoff" with this is that you won't see a resolution failure immediately.
So we would create the TaskRun
with the resolver and let the TaskRun
reconciler do its job. I am not sure why it's not working like this, @abayer @afrittoli do you know anything about it ?
from pipeline.
@fische we can mark it as both maybe 🙃
/kind feature
from pipeline.
from pipeline.
Hi,
Thanks for the issue.
If I'm not wrong, param substitution of pipelinerun params into resolution request for a pipelineref does not work either.So it is a bit broken in that sense.
I think marking it as a feature for allowing variable replacements in remote resolution request makes sense to me. We should investigate it fully and add this capability. My worry is that if we ever want to change the behavior of remote resolution to an upfront remote resolution approach then the param substitutions can only happen as the dag expands and so upfront remote resolution will not be possible in that scenario. But those details can be questioned and hashed out when we discuss this feature in more detail.
from pipeline.
Related Issues (20)
- Website wrongly shows specifying-task-level-computeresources as alpha feature HOT 1
- Missing substitution of propagated workspace in WorkingDirs
- affinity assistant will schedule onto nodes with insufficient resources to run a pod in the pipeline, it should not
- Matrix: invalid param type when consuming results from CustomRun on task matrix.params field
- Occasionally, taskrun fails to retrieve task results from sidecar logs HOT 1
- PipelineRun is canceled prior to its child TaskRuns being canceled. HOT 9
- How to build entry point without SPIRE?
- When performing an upgrade using install.yaml, a pipeline that ran in the past is now running. HOT 1
- The pipeline controller keeps refreshing logs HOT 1
- Error message when PipelineRun is missing parameters required by Pipeline is nonsensical HOT 6
- DryRun Validate should return the mutated Object HOT 2
- Incorrect param type passed to stepaction makes it use default value HOT 2
- Index out of range panic in CheckMissingResultReferences when references are missing
- Controller crashes for certain Pipeline after upgrade HOT 1
- Capture provenance of StepActions in Status HOT 1
- Access `reason` from the execution status of a `taskRun` in `finally`
- Helm chart outdated HOT 3
- Overriding Pipeline timeout does not work HOT 2
- Additional unit tests are needed for Kubernetes native sidecar support HOT 2
- Remote resolvers fail to save ECR cache
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pipeline.