-
Notifications
You must be signed in to change notification settings - Fork 867
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
Unable to use multiples ports with the same port number #2750
Comments
Hi, I am new to this project and would like to contribute. Is this a good issue for me to start with? |
@aksingla33 yea I think this is a good first issue |
Hi, If this has not already been addressed, I'd like to implement it and want to contribute! I also have a few questions about the implementation. I think the part that needs to be fixed is the process after But this did not work.
e.g. https://github.com/argoproj/argo-rollouts/blob/master/manifests/install.yaml#L1581
I don't have enough knowledge of kubenetis, so if you could give me some advice, that would be great! |
So I took a really quick look at this I am not sure it is a good first issue because we just bring in the spec from k8s and so it should actually just work. I would need to do a lot of digging to see what is going on with it, but it is probably something pretty deep within k8s schema stuff. |
@zachaller The problem is that in the open API schema that is fetched from Kubernetes, the following block is the root of the issue: x-kubernetes-list-map-keys:
- containerPort
- protocol This basically means that we can't accept two identical items in the list that have the same |
Yea, I feel this is possible some upstream issue as well all we currently do is embed the upstream pod spec in our type.
Then we get the upstream spec from https://raw.githubusercontent.com/kubernetes/kubernetes/release-1.26/api/openapi-spec/swagger.json so I believe we are generating it correctly it would require some hunting to see why there is a difference in behavior from upstream and the defined spec. We are missing some of the upstream spec I also noticed:
This code could probably use some updates: https://github.com/argoproj/argo-rollouts/blob/master/hack/gen-crd-spec/main.go If I had to guess I would start with trying to do what this is doing https://github.com/argoproj/argo-schema-generator instead but I would be curious if adding those two keys also fixes the issue just like removing the keys did? |
One other thing to note the output of controller-gen has it matching what rollouts is putting in the crd
|
Nope it didn't work. |
Experiencing this issue as well.
spec.template.spec.containers[1].ports looks something like this
This spec is legitimate and applies correctly as
It does not work as
|
This issue is stale because it has been open 60 days with no activity. |
Bump still an issue |
Checklist:
Describe the bug
As stated in the documentation,
Rollouts
spec.template field should be 100% compatible with the classicDeployment
spec.template field. When I try to use multiples ports that share the same port number but not the same name, I get:This is working fine if I convert the
Rollout
to aDeployment
.Related issue(s):
To Reproduce
Manifest:
Expected behavior
Be able to use multiple ports using the same port number.
Version
Helm chart version: 2.26.0
Controller version: v1.4.1
Logs
No logs in the controller.
Message from the maintainers:
Impacted by this bug? Give it a 👍. We prioritize the issues with the most 👍.
The text was updated successfully, but these errors were encountered: