-
Notifications
You must be signed in to change notification settings - Fork 6.5k
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
Refactor Gateway API installation process and bump Gateway API v1.2.1 #11763
base: master
Are you sure you want to change the base?
Refactor Gateway API installation process and bump Gateway API v1.2.1 #11763
Conversation
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: tico88612 The full list of commands accepted by this bot can be found here.
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/ok-to-test |
44b72fa
to
ee8c8b1
Compare
Remove old variables in kubernetes-apps/gateway_api Signed-off-by: ChengHao Yang <[email protected]>
Signed-off-by: ChengHao Yang <[email protected]>
Signed-off-by: ChengHao Yang <[email protected]>
ee8c8b1
to
9e3052d
Compare
I presume the idea is to ship gateway api manifest unmodified and download them at runtime just as we do for other deps ?
TBH, I'm not sure that's the way we should go. The download role is not in a great shape, and I think we should be cautious putting more things in it.
Possible alternative: besides run-time download, or jinja templates, we could consider another alternative: vendoring
We would have all the manifests in one directory possibly something like this:
vendor/
- gateway-api/
- other-vendored-deps/
Even for things which we currently need to template (which gateway-api is not, if I'm correct), we could use the kubernertes.core.kustomize lookup to patch at the k8s tooling layer rather than in jinja (which might even be cleaner)
I don't think update would be too much complicated, maybe git subtree could help ? I think we would want to avoid submodules because it's not straightforward when pulling kubespray itself.
wdyt ?
|
Our Gateway API is unmodified. (Yes, it should.)
What is the context in which vendoring is used? Like other 3rd party packages (e.g. MetalLB, Argo CD, etc.)?
Git subtree will create a merge commit. Maybe I guess |
Sorry, I though I had replied, apparently not.
What is the context in which vendoring is used? Like other 3rd party packages (e.g. MetalLB, Argo CD, etc.)?
Only for Kubernetes manifests yeah.
> I don't think update would be too much complicated, maybe git subtree could help ? I think we would want to avoid submodules because it's not straightforward when pulling kubespray itself.
Git subtree will create a merge commit. Maybe I guess `k8s-ci-robot` won't allow this?
I won't prefer the Git submodule; it will complicate this project.
I'll take your word for it, I haven't used subtree at all, only submodules.
I don't think dumping raw manifests (preferably from a release/tag of the project in question) would be that complicated, no ?
(this is a (probably much) larger scope, but we should probably try to make a global decision to have some consistency here, either manifests should be baked in, or downloaded like artifacts, or a 3rd solution)
|
What type of PR is this?
/kind feature
What this PR does / why we need it:
Upgrade Gateway API to the latest version (v1.2.1), and remove templates (Gateway API manifests).
Which issue(s) this PR fixes:
Fixes #11630
Related #11636
Special notes for your reviewer:
Does this PR introduce a user-facing change?: