-
Notifications
You must be signed in to change notification settings - Fork 3.2k
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
duplicative env var ARGO_TEMPLATE
result in etcd size 1MB limit
#8790
Comments
No. However, we could replace it with just the information needed by the emissary. The emissary only needs to know which containers it must wait on. It does not need the whole template. |
That would be nice. Look forward to the coming improve! |
At Intuit we are actually relying on the image: "docker.intuit.com/dev/patterns/kubernetes/dev/kubectl-awscli:v1.22.15"
command:
- sh
- -c
args:
- |
echo "{{`{{inputs.parameters.manifest}}`}}" | .... but we found that we exceeded the maximum argument size limit allowed by Linux. So, we changed the Step to use the ARGO_TEMPLATE environment variable: image: "docker.intuit.com/dev/patterns/kubernetes/dev/kubectl-awscli:v1.22.15"
command:
- sh
- -c
args: ["
getconf ARG_MAX;
echo $ARGO_TEMPLATE | yq '.inputs.parameters[0].value' --unwrapScalar > /tmp/manifest-64;
....
"] |
(We had also tried an alternative solution of mounting the Input parameter as a RawArtifact but that faced an issue and didn't work either) |
now perhaps there could be an alternative solution in which the value of the environment variable is compressed or something... |
Did this work for you? I'm having exact same issue. |
I think
cc @tooptoop4 |
what about argo-workflows/workflow/controller/workflowpod.go Lines 491 to 493 in 3652241
|
I don't understand, what do you mean? @tooptoop4 |
@jswxstw the code i linked seems to take inputs from the template, are u saying have another variable for that purpose not ARGO_TEMPLATE? |
@tooptoop4 No, I don't quite understand your question and how it is related to this issue. |
ARGO_TEMPLATE
result in etcd size 1MB limit
#12325 will offload the env But I think #12325 still has some areas for improvement:
I don't have any permissions to operate issues. Is there something wrong? @agilgur5 |
You pop up correctly as a "Member". Screenshot: So you should have "triage" permissions. But looking at the Argoproj teams, it looks like you're not part of the "members" team for some reason 👀 I'm guessing that's the team assigned to triage per repo or something. |
Added |
This part wasn't solved by #13742, so it sounds like this issue should still be open |
Summary
I am running a containerSet with lots of steps. And I have large parameter input for the step.
Because there is an env variable called ARGO_TEMPLATE each container, the overall pod description is too large to fit in etcd, exceeding the 1MB limit.
(10 + init + wait) = 12 containers
12 * 100k = 1200k > 1MB
What is the usage of ARGO_TEMPLATE? Can we delete it?
I am using the v3.1.10
Message from the maintainers:
Love this enhancement proposal? Give it a 👍. We prioritise the proposals with the most 👍.
The text was updated successfully, but these errors were encountered: