-
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
duplicate env variable 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 |
did u solve @MagicFrogSJTU ? |
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. |
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: