Closed brtasavpatel closed 4 years ago
I deleted my previous comment because I wanted to verify what you got before I reach my conclusion. I can reproduce the error and confirmed this is indeed what issue #11 had. i.e. V1Container does not expect name
attr to be empty. With that fixed, you also need to add V1alpha1WorkflowStatus()
to manifest['status'].
i.e. to get your workflow working, do the following before calling create_namespaced_workflow
>>> manifest['status'] = V1alpha1WorkflowStatus().to_dict()
>>> manifest['spec']['templates'][0]['container']['name'] = ''
I recommend checking out the https://github.com/CermakM/argo-python-dsl which is more user-friendly, while this library is a direct generation of Argo's swagger api spec.
@yxue-kabam thanks for your reply your workaround works at the moment.
I definitely want to usedsl
but I can't get it to work also.
here's an Issue I have opened.
https://github.com/CermakM/argo-python-dsl/issues/7
@brtasavpatel Thanks for the thorough report! I believe your issue is related to #15 where I explain why name
and status
are required and has to be present.
TLDR; it is due to API specification, this library nor the DSL has any part in that. A workaround is, as described by @yxue-kabam (thanks man!) is for a name to use name = ""
(but it is a good practice to actually provide the name) and for the status = {}
(it is BS that status is required, but what can we do...)
Cheers, M
I am trying out a simple example with
workflow-client
v2.5.0
, here's my sample code. nothing fancy thereI keep getting
I installed
argo-workflows
client usingMy environment info :
if I add
name
to my container definitionthen I get following error :