-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
The volumes PVC name is unreasonable after mount a pvc for pipeline #1303
Comments
Hello @jinchihe, Since #879 any field of a ContainerOp may contain parameters. This helped #801 (we had implemented a similar, less generic approach before it was introduced but removed it since it totally covered our cause), where a PVC is created by a workflow task and its final name is an output parameter. Such parameter usage was not available before our patch (argoproj/argo-workflows#1238). It actually supports the three types of parameter substitution (global/input/output) in the volumes attribute. However, we need these fields to get local input parameters, so it functions properly in the case of a PVC creation or a PVC decision via output That kind of translation for input parameters has always been there though. See for example how this sample is compiled: The Hope this helps! |
I agree that it looks pretty strange. But it will start working in Argo 2.3. We can try to hack a quick fix. |
Great! Thanks a lot! @Ark-kun |
@elikatsis Thanks very much for the replying. Reviewed #801, seems that will create a new pvc in one step, not handle using a existing pvc? |
@jinchihe I understand the frustration, it is a field out of the ContainerOp. However, it will be attached to the pod created based on that op. So, an Argo user, being aware of such functionality, will use it properly. Also argoproj/argo-workflows#1342 introduces the template-specific volumes, which I believe we should use instead, and makes more sense for this DSL. Since Edit:
Yes, a |
@elikatsis Oh... that's clear to me now. Thanks a lot! |
@elikatsis Is is true that in Argo 2.2 (before argoproj/argo-workflows#1238) there is no parameter substitution in volumes at all, so this issue is impossible to fix in Argo 2.2? |
@Ark-kun To be honest, I hadn't noticed this was actually there in v2.2.1. So, a design which would differentiate global parameters in the DSL and substitute them accordingly would work. |
@Ark-kun since we've upgraded to argo 2.3, can this issue be closed? |
…ubeflow#1303) * Fix watch SDK API * Update notebook example * Add canary percent assert * Remove version arg for isvc_watch * Remove version arg
Here have a pipeline definition file, part of the file is as following:
Define the
pvc_name
and mount the pvc by usingonprem.mount_pvc
.After compire using
dsl-compile
. The workflow yaml file is as following:The clainName value should be
workflow.parameters.pvc-name
, instead ofinput.parameters.pvc-name
since the volumes is out of templates/container, no inputs parameters, should be workflow parameters.The text was updated successfully, but these errors were encountered: